展会信息港展会大全

Android webkit css样式定制
来源:互联网   发布日期:2015-10-02 21:30:47   浏览:4796次  

导读:我们知道不同的浏览器对css有不同的解析方式,在android webkit 上面默认的定制自己样式的通道,假如我们对这个流程有一个比较清晰的了解,那么我们也可以自己去do itself。...

我们知道不同的浏览器对css有不同的解析方式,在android webkit 上面默认的定制自己样式的通道,假如我们对这个流程有一个比较清晰的了解,那么我们也可以自己去do itself。

首先介绍下android webkit的默认的css样式表(声明我都是基于android4.0.1讲解),默认的css样式位置在(android/external/webkit/Source/WebCore/css/html.css)

[html]*

* The default style sheet used to render HTML.

*

* Copyright (C) 2000 Lars Knoll (knoll@kde.org)

* Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.

*

* This library is free software; you can redistribute it and/or

* modify it under the terms of the GNU Library General Public

* License as published by the Free Software Foundation; either

* version 2 of the License, or (at your option) any later version.

*

* This library is distributed in the hope that it will be useful,

* but WITHOUT ANY WARRANTY; without even the implied warranty of

* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the GNU

* Library General Public License for more details.

*

* You should have received a copy of the GNU Library General Public License

* along with this library; see the file COPYING.LIB.If not, write to

* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

* Boston, MA 02110-1301, USA.

*

*/

@namespace "http://www.w3.org/1999/xhtml";

html {

display: block

}

/* children of the <head> element all have display:none */

head {

display: none

}

meta {

display: none

}

title {

display: none

}

link {

display: none

}

style {

display: none

}

script {

display: none

}

/* generic block-level elements */

body {

background-repeat:no-repeat !important;

display: block;

margin: 8px

}

p {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1__qem;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

}

div {

display: block

}

layer {

display: block

}

article, aside, footer, header, hgroup, nav, section {

display: block

}

marquee {

display: inline-block;

overflow: -webkit-marquee

}

address {

display: block

}

blockquote {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 40px;

-webkit-margin-end: 40px;

}

figcaption {

display: block

}

figure {

display: block;

-webkit-margin-before: 1em;

-webkit-margin-after: 1em;

-webkit-margin-start: 40px;

-webkit-margin-end: 40px;

}

q {

display: inline

}

q:before {

content: open-quote;

}

q:after {

content: close-quote;

}

center {

display: block;

/* special centering to be able to emulate the html4/netscape behaviour */

text-align: -webkit-center

}

hr {

display: block;

-webkit-margin-before: 0.5em;

-webkit-margin-after: 0.5em;

-webkit-margin-start: auto;

-webkit-margin-end: auto;

border-style: inset;

border-width: 1px

}

map {

display: inline

}

/* heading elements */

h1 {

display: block;

font-size: 2em;

-webkit-margin-before: 0.67__qem;

-webkit-margin-after: 0.67em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

:-webkit-any(article,aside,nav,section) h1 {

font-size: 1.5em;

-webkit-margin-before: 0.83__qem;

-webkit-margin-after: 0.83em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: 1.17em;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: 1.00em;

-webkit-margin-before: 1.33__qem;

-webkit-margin-after: 1.33em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: .83em;

-webkit-margin-before: 1.67__qem;

-webkit-margin-after: 1.67em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: .67em;

-webkit-margin-before: 2.33__qem;

-webkit-margin-after: 2.33em;

}

h2 {

display: block;

font-size: 1.5em;

-webkit-margin-before: 0.83__qem;

-webkit-margin-after: 0.83em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h3 {

display: block;

font-size: 1.17em;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h4 {

display: block;

-webkit-margin-before: 1.33__qem;

-webkit-margin-after: 1.33em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h5 {

display: block;

font-size: .83em;

-webkit-margin-before: 1.67__qem;

-webkit-margin-after: 1.67em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h6 {

display: block;

font-size: .67em;

-webkit-margin-before: 2.33__qem;

-webkit-margin-after: 2.33em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

/* tables */

table {

display: table;

border-collapse: separate;

border-spacing: 2px;

border-color: gray

}

thead {

display: table-header-group;

vertical-align: middle;

border-color: inherit

}

tbody {

display: table-row-group;

vertical-align: middle;

border-color: inherit

}

tfoot {

display: table-footer-group;

vertical-align: middle;

border-color: inherit

}

/* for tables without table section elements (can happen with XHTML or dynamically created tables) */

table > tr {

vertical-align: middle;

}

col {

display: table-column

}

colgroup {

display: table-column-group

}

tr {

display: table-row;

vertical-align: inherit;

border-color: inherit

}

td, th {

display: table-cell;

vertical-align: inherit

}

th {

font-weight: bold

}

caption {

display: table-caption;

text-align: -webkit-center

}

/* lists */

ul, menu, dir {

display: block;

list-style-type: disc;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

-webkit-padding-start: 40px

}

ol {

display: block;

list-style-type: decimal;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

-webkit-padding-start: 40px

}

li {

display: list-item

}

ul ul, ol ul {

list-style-type: circle

}

ol ol ul, ol ul ul, ul ol ul, ul ul ul {

list-style-type: square

}

dd {

display: block;

-webkit-margin-start: 40px

}

dl {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

}

dt {

display: block

}

ol ul, ul ol, ul ul, ol ol {

-webkit-margin-before: 0;

-webkit-margin-after: 0

}

/* form elements */

form {

display: block;

margin-top: 0__qem;

}

label {

cursor: default;

}

legend {

display: block;

-webkit-padding-start: 2px;

-webkit-padding-end: 2px;

border: none

}

fieldset {

display: block;

-webkit-margin-start: 2px;

-webkit-margin-end: 2px;

-webkit-padding-before: 0.35em;

-webkit-padding-start: 0.75em;

-webkit-padding-end: 0.75em;

-webkit-padding-after: 0.625em;

border: 2px groove ThreeDFace

}

button {

-webkit-appearance: button;

}

/* Form controls don't go vertical. */

input, textarea, keygen, select, button, isindex, meter, progress {

-webkit-block-flow: tb !important;

}

input, textarea, keygen, select, button, isindex, datagrid {

margin: 0__qem;

font: -webkit-small-control;

color: initial;

letter-spacing: normal;

word-spacing: normal;

line-height: normal;

text-transform: none;

text-indent: 0;

text-shadow: none;

display: inline-block;

text-align: -webkit-auto;

}

input[type="hidden"] {

display: none

}

input, input[type="password"], input[type="search"], isindex {

-webkit-appearance: textfield;

padding: 1px;

background-color: white;

border: 2px inset;

-webkit-rtl-ordering: logical;

-webkit-user-select: text;

cursor: auto;

}

input[type="search"] {

-webkit-appearance: searchfield;

-webkit-box-sizing: border-box;

}

input[type="search"]::-webkit-search-cancel-button {

-webkit-appearance: searchfield-cancel-button;

display: inline-block;

}

input[type="search"]::-webkit-search-decoration {

-webkit-appearance: searchfield-decoration;

display: inline-block;

}

input[type="search"]::-webkit-search-results-decoration {

-webkit-appearance: searchfield-results-decoration;

display: inline-block;

}

input[type="search"]::-webkit-search-results-button {

-webkit-appearance: searchfield-results-button;

display: inline-block;

}

input::-webkit-input-list-button {

-webkit-appearance: list-button;

display: inline-block;

}

input::-webkit-inner-spin-button {

-webkit-appearance: inner-spin-button;

display: inline-block;

position: relative;

cursor: default;

-webkit-user-select: none;

}

input::-webkit-outer-spin-button {

-webkit-appearance: outer-spin-button;

display: inline-block;

position: relative;

cursor: default;

margin-left: 2px;

-webkit-user-select: none;

}

input::-webkit-input-speech-button {

-webkit-appearance: -webkit-input-speech-button;

display: inline-block;

}

keygen, select {

-webkit-border-radius: 5px;

}

keygen::-webkit-keygen-select {

margin: 0px;

}

textarea {

-webkit-appearance: textarea;

background-color: white;

border: 1px solid;

-webkit-rtl-ordering: logical;

-webkit-user-select: text;

-webkit-box-orient: vertical;

resize: auto;

cursor: auto;

padding: 2px;

white-space: pre-wrap;

word-wrap: break-word;

}

input::-webkit-input-placeholder, isindex::-webkit-input-placeholder, textarea::-webkit-input-placeholder {

color: darkGray;

}

input[type="password"] {

-webkit-text-security: disc !important;

}

input[type="hidden"], input[type="image"], input[type="file"] {

-webkit-appearance: initial;

padding: initial;

background-color: initial;

border: initial;

}

input[type="file"] {

-webkit-box-align: baseline;

text-align: start !important;

}

input:-webkit-autofill {

background-color: #FAFFBD !important;

background-image:none !important;

color: #000000 !important;

}

input[type="radio"], input[type="checkbox"] {

margin: 3px 0.5ex;

padding: initial;

background-color: initial;

border: initial;

}

input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button {

-webkit-appearance: push-button;

white-space: pre

}

input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button {

-webkit-box-align: center;

text-align: center;

cursor: default;

color: ButtonText;

padding: 2px 6px 3px 6px;

border: 2px outset ButtonFace;

background-color: ButtonFace;

-webkit-box-sizing: border-box

}

input[type="range"] {

-webkit-appearance: slider-horizontal;

padding: initial;

border: initial;

margin: 2px;

}

input[type="range"]::-webkit-slider-thumb {

-webkit-appearance: sliderthumb-horizontal;

display: block;

}

input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled,

input[type="file"]:disabled::-webkit-file-upload-button, button:disabled,

select:disabled, keygen:disabled, optgroup:disabled, option:disabled, datagrid:disabled {

color: GrayText

}

input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active::-webkit-file-upload-button, button:active {

border-style: inset

}

input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled {

border-style: outset

}

area, param {

display: none

}

input[type="checkbox"] {

-webkit-appearance: checkbox;

-webkit-box-sizing: border-box;

}

input[type="radio"] {

-webkit-appearance: radio;

-webkit-box-sizing: border-box;

}

select {

-webkit-appearance: menulist;

-webkit-box-sizing: border-box;

-webkit-box-align: center;

border: 1px solid;

white-space: pre;

-webkit-rtl-ordering: logical;

color: black;

background-color: white;

cursor: default;

}

select[size],

select[multiple],

select[size][multiple] {

-webkit-appearance: listbox;

-webkit-box-align: start;

border: 1px inset gray;

-webkit-border-radius: initial;

white-space: initial;

}

select[size="0"],

select[size="1"] {

-webkit-appearance: menulist;

-webkit-box-align: center;

border: 1px solid;

-webkit-border-radius: 5px;

white-space: pre;

}

optgroup {

font-weight: bolder;

}

option {

font-weight: normal;

}

output {

display: inline;

}

/* form validation message bubble */

::-webkit-validation-bubble {

display: inline-block;

z-index: 2147483647;

position: absolute;

opacity: 0.95;

line-height: 0;

margin: 0;

-webkit-text-security: none;

-webkit-transition: opacity 05.5s ease;

}

::-webkit-validation-bubble-message {

display: block;

position: relative;

top: -4px;

font: message-box;

color: black;

min-width: 50px;

max-width: 200px;

border: solid 2px #400;

background: -webkit-gradient(linear, left top, left bottom, from(#f8ecec), to(#e8cccc));

padding: 8px;

-webkit-border-radius: 8px;

-webkit-box-shadow: 4px 4px 4px rgba(100,100,100,0.6),

inset -2px -2px 1px #d0c4c4,

inset 2px 2px 1px white;

line-height: normal;

z-index: 2147483644;

}

::-webkit-validation-bubble-arrow {

display: inline-block;

position: relative;

left: 32px;

width: 16px;

height: 16px;

background-color: #f8ecec;

border-width: 2px 0 0 2px;

border-style: solid;

border-color: #400;

box-shadow: inset 2px 2px 1px white;

-webkit-transform-origin: 0 0;

-webkit-transform: rotate(45deg);

z-index: 2147483645;

}

::-webkit-validation-bubble-arrow-clipper {

display: block;

overflow: hidden;

height: 16px;

}

/* meter */

meter {

-webkit-appearance: meter;

-webkit-box-sizing: border-box;

display: inline-box;

height: 1em;

width: 5em;

vertical-align: -0.2em;

}

meter::-webkit-meter-bar {

background: -webkit-gradient(linear, left top, left bottom, from(#ddd), to(#ddd), color-stop(0.20, #eee), color-stop(0.45, #ccc), color-stop(0.55, #ccc));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-optimum-value {

background: -webkit-gradient(linear, left top, left bottom, from(#ad7), to(#ad7), color-stop(0.20, #cea), color-stop(0.45, #7a3), color-stop(0.55, #7a3));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-suboptimum-value {

background: -webkit-gradient(linear, left top, left bottom, from(#fe7), to(#fe7), color-stop(0.20, #ffc), color-stop(0.45, #db3), color-stop(0.55, #db3));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-even-less-good-value {

background: -webkit-gradient(linear, left top, left bottom, from(#f77), to(#f77), color-stop(0.20, #fcc), color-stop(0.45, #d44), color-stop(0.55, #d44));

height: 100%;

-webkit-box-sizing: border-box;

}

/* progress */

progress {

-webkit-appearance: progress-bar;

-webkit-box-sizing: border-box;

display: inline-block;

height: 1em;

width: 10em;

vertical-align: -0.2em;

}

progress::-webkit-progress-bar {

background-color: gray;

height: 100%;

-webkit-box-sizing: border-box;

}

progress::-webkit-progress-value {

background-color: green;

height: 100%;

width: 50%; /* should be removed later */

-webkit-box-sizing: border-box;

}

/* datagrid */

datagrid {

height: 150px; /* We don't use width:300px in CSS, since we want width:intrinsic and width:min-intrinsic to reset to 300 properly. */

-webkit-appearance: datagrid;

-webkit-box-sizing: border-box;

-webkit-rtl-ordering: logical;

color: black;

background-color: white;

cursor: default;

border: 1px inset gray;

white-space: initial;

}

/* inline elements */

u, ins {

text-decoration: underline

}

strong, b {

font-weight: bolder

}

i, cite, em, var, address {

font-style: italic

}

tt, code, kbd, samp {

font-family: monospace

}

pre, xmp, plaintext, listing {

display: block;

font-family: monospace;

white-space: pre;

margin: 1__qem 0

}

mark {

background-color: yellow;

color: black

}

big {

font-size: larger

}

small {

font-size: smaller

}

s, strike, del {

text-decoration: line-through

}

sub {

vertical-align: sub;

font-size: smaller

}

sup {

vertical-align: super;

font-size: smaller

}

nobr {

white-space: nowrap

}

/* states */

:focus {

outline: auto 5px -webkit-focus-ring-color

}

/* Read-only text fields do not show a focus ring but do still receive focus */

html:focus, body:focus, input[readonly]:focus {

outline: none

}

input:focus, textarea:focus, isindex:focus, keygen:focus, select:focus {

outline-offset: -2px

}

input[type="button"]:focus,

input[type="checkbox"]:focus,

input[type="file"]:focus,

input[type="hidden"]:focus,

input[type="image"]:focus,

input[type="radio"]:focus,

input[type="reset"]:focus,

input[type="search"]:focus,

input[type="submit"]:focus,

input[type="file"]:focus::-webkit-file-upload-button {

outline-offset: 0

}

a:-webkit-any-link {

color: -webkit-link;

text-decoration: none;

cursor: auto;

}

a:-webkit-any-link:active {

color: -webkit-activelink

}

/* HTML5 ruby elements */

ruby, rt {

text-indent: 0; /* blocks used for ruby rendering should not trigger this */

}

rt {

line-height: normal;

-webkit-text-emphasis: none;

}

ruby > rt {

display: block;

font-size: 50%;

text-align: -webkit-auto;

}

ruby > rp {

display: none;

}

/* other elements */

noframes {

display: none

}

frameset, frame {

display: block

}

frameset {

border-color: inherit

}

iframe {

border: 2px inset

}

details {

display: block

}

summary {

display: block

}

summary::-webkit-details-marker {

display: inline-block;

width: 0.66em;

height: 0.66em;

margin-right: 0.4em;

}

/* page */

@page {

/* FIXME: Define the right default values for page properties. */

size: auto;

margin: auto;

padding: 0px;

border-width: 0px;

}

/* noscript is handled internally, as it depends on settings */

/*

* The default style sheet used to render HTML.

*

* Copyright (C) 2000 Lars Knoll (knoll@kde.org)

* Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.

*

* This library is free software; you can redistribute it and/or

* modify it under the terms of the GNU Library General Public

* License as published by the Free Software Foundation; either

* version 2 of the License, or (at your option) any later version.

*

* This library is distributed in the hope that it will be useful,

* but WITHOUT ANY WARRANTY; without even the implied warranty of

* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the GNU

* Library General Public License for more details.

*

* You should have received a copy of the GNU Library General Public License

* along with this library; see the file COPYING.LIB.If not, write to

* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

* Boston, MA 02110-1301, USA.

*

*/

@namespace "http://www.w3.org/1999/xhtml";

html {

display: block

}

/* children of the <head> element all have display:none */

head {

display: none

}

meta {

display: none

}

title {

display: none

}

link {

display: none

}

style {

display: none

}

script {

display: none

}

/* generic block-level elements */

body {

background-repeat:no-repeat !important;

display: block;

margin: 8px

}

p {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1__qem;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

}

div {

display: block

}

layer {

display: block

}

article, aside, footer, header, hgroup, nav, section {

display: block

}

marquee {

display: inline-block;

overflow: -webkit-marquee

}

address {

display: block

}

blockquote {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 40px;

-webkit-margin-end: 40px;

}

figcaption {

display: block

}

figure {

display: block;

-webkit-margin-before: 1em;

-webkit-margin-after: 1em;

-webkit-margin-start: 40px;

-webkit-margin-end: 40px;

}

q {

display: inline

}

q:before {

content: open-quote;

}

q:after {

content: close-quote;

}

center {

display: block;

/* special centering to be able to emulate the html4/netscape behaviour */

text-align: -webkit-center

}

hr {

display: block;

-webkit-margin-before: 0.5em;

-webkit-margin-after: 0.5em;

-webkit-margin-start: auto;

-webkit-margin-end: auto;

border-style: inset;

border-width: 1px

}

map {

display: inline

}

/* heading elements */

h1 {

display: block;

font-size: 2em;

-webkit-margin-before: 0.67__qem;

-webkit-margin-after: 0.67em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

:-webkit-any(article,aside,nav,section) h1 {

font-size: 1.5em;

-webkit-margin-before: 0.83__qem;

-webkit-margin-after: 0.83em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: 1.17em;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: 1.00em;

-webkit-margin-before: 1.33__qem;

-webkit-margin-after: 1.33em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: .83em;

-webkit-margin-before: 1.67__qem;

-webkit-margin-after: 1.67em;

}

:-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) :-webkit-any(article,aside,nav,section) h1 {

font-size: .67em;

-webkit-margin-before: 2.33__qem;

-webkit-margin-after: 2.33em;

}

h2 {

display: block;

font-size: 1.5em;

-webkit-margin-before: 0.83__qem;

-webkit-margin-after: 0.83em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h3 {

display: block;

font-size: 1.17em;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h4 {

display: block;

-webkit-margin-before: 1.33__qem;

-webkit-margin-after: 1.33em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h5 {

display: block;

font-size: .83em;

-webkit-margin-before: 1.67__qem;

-webkit-margin-after: 1.67em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

h6 {

display: block;

font-size: .67em;

-webkit-margin-before: 2.33__qem;

-webkit-margin-after: 2.33em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

font-weight: bold

}

/* tables */

table {

display: table;

border-collapse: separate;

border-spacing: 2px;

border-color: gray

}

thead {

display: table-header-group;

vertical-align: middle;

border-color: inherit

}

tbody {

display: table-row-group;

vertical-align: middle;

border-color: inherit

}

tfoot {

display: table-footer-group;

vertical-align: middle;

border-color: inherit

}

/* for tables without table section elements (can happen with XHTML or dynamically created tables) */

table > tr {

vertical-align: middle;

}

col {

display: table-column

}

colgroup {

display: table-column-group

}

tr {

display: table-row;

vertical-align: inherit;

border-color: inherit

}

td, th {

display: table-cell;

vertical-align: inherit

}

th {

font-weight: bold

}

caption {

display: table-caption;

text-align: -webkit-center

}

/* lists */

ul, menu, dir {

display: block;

list-style-type: disc;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

-webkit-padding-start: 40px

}

ol {

display: block;

list-style-type: decimal;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

-webkit-padding-start: 40px

}

li {

display: list-item

}

ul ul, ol ul {

list-style-type: circle

}

ol ol ul, ol ul ul, ul ol ul, ul ul ul {

list-style-type: square

}

dd {

display: block;

-webkit-margin-start: 40px

}

dl {

display: block;

-webkit-margin-before: 1__qem;

-webkit-margin-after: 1em;

-webkit-margin-start: 0;

-webkit-margin-end: 0;

}

dt {

display: block

}

ol ul, ul ol, ul ul, ol ol {

-webkit-margin-before: 0;

-webkit-margin-after: 0

}

/* form elements */

form {

display: block;

margin-top: 0__qem;

}

label {

cursor: default;

}

legend {

display: block;

-webkit-padding-start: 2px;

-webkit-padding-end: 2px;

border: none

}

fieldset {

display: block;

-webkit-margin-start: 2px;

-webkit-margin-end: 2px;

-webkit-padding-before: 0.35em;

-webkit-padding-start: 0.75em;

-webkit-padding-end: 0.75em;

-webkit-padding-after: 0.625em;

border: 2px groove ThreeDFace

}

button {

-webkit-appearance: button;

}

/* Form controls don't go vertical. */

input, textarea, keygen, select, button, isindex, meter, progress {

-webkit-block-flow: tb !important;

}

input, textarea, keygen, select, button, isindex, datagrid {

margin: 0__qem;

font: -webkit-small-control;

color: initial;

letter-spacing: normal;

word-spacing: normal;

line-height: normal;

text-transform: none;

text-indent: 0;

text-shadow: none;

display: inline-block;

text-align: -webkit-auto;

}

input[type="hidden"] {

display: none

}

input, input[type="password"], input[type="search"], isindex {

-webkit-appearance: textfield;

padding: 1px;

background-color: white;

border: 2px inset;

-webkit-rtl-ordering: logical;

-webkit-user-select: text;

cursor: auto;

}

input[type="search"] {

-webkit-appearance: searchfield;

-webkit-box-sizing: border-box;

}

input[type="search"]::-webkit-search-cancel-button {

-webkit-appearance: searchfield-cancel-button;

display: inline-block;

}

input[type="search"]::-webkit-search-decoration {

-webkit-appearance: searchfield-decoration;

display: inline-block;

}

input[type="search"]::-webkit-search-results-decoration {

-webkit-appearance: searchfield-results-decoration;

display: inline-block;

}

input[type="search"]::-webkit-search-results-button {

-webkit-appearance: searchfield-results-button;

display: inline-block;

}

input::-webkit-input-list-button {

-webkit-appearance: list-button;

display: inline-block;

}

input::-webkit-inner-spin-button {

-webkit-appearance: inner-spin-button;

display: inline-block;

position: relative;

cursor: default;

-webkit-user-select: none;

}

input::-webkit-outer-spin-button {

-webkit-appearance: outer-spin-button;

display: inline-block;

position: relative;

cursor: default;

margin-left: 2px;

-webkit-user-select: none;

}

input::-webkit-input-speech-button {

-webkit-appearance: -webkit-input-speech-button;

display: inline-block;

}

keygen, select {

-webkit-border-radius: 5px;

}

keygen::-webkit-keygen-select {

margin: 0px;

}

textarea {

-webkit-appearance: textarea;

background-color: white;

border: 1px solid;

-webkit-rtl-ordering: logical;

-webkit-user-select: text;

-webkit-box-orient: vertical;

resize: auto;

cursor: auto;

padding: 2px;

white-space: pre-wrap;

word-wrap: break-word;

}

input::-webkit-input-placeholder, isindex::-webkit-input-placeholder, textarea::-webkit-input-placeholder {

color: darkGray;

}

input[type="password"] {

-webkit-text-security: disc !important;

}

input[type="hidden"], input[type="image"], input[type="file"] {

-webkit-appearance: initial;

padding: initial;

background-color: initial;

border: initial;

}

input[type="file"] {

-webkit-box-align: baseline;

text-align: start !important;

}

input:-webkit-autofill {

background-color: #FAFFBD !important;

background-image:none !important;

color: #000000 !important;

}

input[type="radio"], input[type="checkbox"] {

margin: 3px 0.5ex;

padding: initial;

background-color: initial;

border: initial;

}

input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button {

-webkit-appearance: push-button;

white-space: pre

}

input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button {

-webkit-box-align: center;

text-align: center;

cursor: default;

color: ButtonText;

padding: 2px 6px 3px 6px;

border: 2px outset ButtonFace;

background-color: ButtonFace;

-webkit-box-sizing: border-box

}

input[type="range"] {

-webkit-appearance: slider-horizontal;

padding: initial;

border: initial;

margin: 2px;

}

input[type="range"]::-webkit-slider-thumb {

-webkit-appearance: sliderthumb-horizontal;

display: block;

}

input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled,

input[type="file"]:disabled::-webkit-file-upload-button, button:disabled,

select:disabled, keygen:disabled, optgroup:disabled, option:disabled, datagrid:disabled {

color: GrayText

}

input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active::-webkit-file-upload-button, button:active {

border-style: inset

}

input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled {

border-style: outset

}

area, param {

display: none

}

input[type="checkbox"] {

-webkit-appearance: checkbox;

-webkit-box-sizing: border-box;

}

input[type="radio"] {

-webkit-appearance: radio;

-webkit-box-sizing: border-box;

}

select {

-webkit-appearance: menulist;

-webkit-box-sizing: border-box;

-webkit-box-align: center;

border: 1px solid;

white-space: pre;

-webkit-rtl-ordering: logical;

color: black;

background-color: white;

cursor: default;

}

select[size],

select[multiple],

select[size][multiple] {

-webkit-appearance: listbox;

-webkit-box-align: start;

border: 1px inset gray;

-webkit-border-radius: initial;

white-space: initial;

}

select[size="0"],

select[size="1"] {

-webkit-appearance: menulist;

-webkit-box-align: center;

border: 1px solid;

-webkit-border-radius: 5px;

white-space: pre;

}

optgroup {

font-weight: bolder;

}

option {

font-weight: normal;

}

output {

display: inline;

}

/* form validation message bubble */

::-webkit-validation-bubble {

display: inline-block;

z-index: 2147483647;

position: absolute;

opacity: 0.95;

line-height: 0;

margin: 0;

-webkit-text-security: none;

-webkit-transition: opacity 05.5s ease;

}

::-webkit-validation-bubble-message {

display: block;

position: relative;

top: -4px;

font: message-box;

color: black;

min-width: 50px;

max-width: 200px;

border: solid 2px #400;

background: -webkit-gradient(linear, left top, left bottom, from(#f8ecec), to(#e8cccc));

padding: 8px;

-webkit-border-radius: 8px;

-webkit-box-shadow: 4px 4px 4px rgba(100,100,100,0.6),

inset -2px -2px 1px #d0c4c4,

inset 2px 2px 1px white;

line-height: normal;

z-index: 2147483644;

}

::-webkit-validation-bubble-arrow {

display: inline-block;

position: relative;

left: 32px;

width: 16px;

height: 16px;

background-color: #f8ecec;

border-width: 2px 0 0 2px;

border-style: solid;

border-color: #400;

box-shadow: inset 2px 2px 1px white;

-webkit-transform-origin: 0 0;

-webkit-transform: rotate(45deg);

z-index: 2147483645;

}

::-webkit-validation-bubble-arrow-clipper {

display: block;

overflow: hidden;

height: 16px;

}

/* meter */

meter {

-webkit-appearance: meter;

-webkit-box-sizing: border-box;

display: inline-box;

height: 1em;

width: 5em;

vertical-align: -0.2em;

}

meter::-webkit-meter-bar {

background: -webkit-gradient(linear, left top, left bottom, from(#ddd), to(#ddd), color-stop(0.20, #eee), color-stop(0.45, #ccc), color-stop(0.55, #ccc));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-optimum-value {

background: -webkit-gradient(linear, left top, left bottom, from(#ad7), to(#ad7), color-stop(0.20, #cea), color-stop(0.45, #7a3), color-stop(0.55, #7a3));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-suboptimum-value {

background: -webkit-gradient(linear, left top, left bottom, from(#fe7), to(#fe7), color-stop(0.20, #ffc), color-stop(0.45, #db3), color-stop(0.55, #db3));

height: 100%;

-webkit-box-sizing: border-box;

}

meter::-webkit-meter-even-less-good-value {

background: -webkit-gradient(linear, left top, left bottom, from(#f77), to(#f77), color-stop(0.20, #fcc), color-stop(0.45, #d44), color-stop(0.55, #d44));

height: 100%;

-webkit-box-sizing: border-box;

}

/* progress */

progress {

-webkit-appearance: progress-bar;

-webkit-box-sizing: border-box;

display: inline-block;

height: 1em;

width: 10em;

vertical-align: -0.2em;

}

progress::-webkit-progress-bar {

background-color: gray;

height: 100%;

-webkit-box-sizing: border-box;

}

progress::-webkit-progress-value {

background-color: green;

height: 100%;

width: 50%; /* should be removed later */

-webkit-box-sizing: border-box;

}

/* datagrid */

datagrid {

height: 150px; /* We don't use width:300px in CSS, since we want width:intrinsic and width:min-intrinsic to reset to 300 properly. */

-webkit-appearance: datagrid;

-webkit-box-sizing: border-box;

-webkit-rtl-ordering: logical;

color: black;

background-color: white;

cursor: default;

border: 1px inset gray;

white-space: initial;

}

/* inline elements */

u, ins {

text-decoration: underline

}

strong, b {

font-weight: bolder

}

i, cite, em, var, address {

font-style: italic

}

tt, code, kbd, samp {

font-family: monospace

}

pre, xmp, plaintext, listing {

display: block;

font-family: monospace;

white-space: pre;

margin: 1__qem 0

}

mark {

background-color: yellow;

color: black

}

big {

font-size: larger

}

small {

font-size: smaller

}

s, strike, del {

text-decoration: line-through

}

sub {

vertical-align: sub;

font-size: smaller

}

sup {

vertical-align: super;

font-size: smaller

}

nobr {

white-space: nowrap

}

/* states */

:focus {

outline: auto 5px -webkit-focus-ring-color

}

/* Read-only text fields do not show a focus ring but do still receive focus */

html:focus, body:focus, input[readonly]:focus {

outline: none

}

input:focus, textarea:focus, isindex:focus, keygen:focus, select:focus {

outline-offset: -2px

}

input[type="button"]:focus,

input[type="checkbox"]:focus,

input[type="file"]:focus,

input[type="hidden"]:focus,

input[type="image"]:focus,

input[type="radio"]:focus,

input[type="reset"]:focus,

input[type="search"]:focus,

input[type="submit"]:focus,

input[type="file"]:focus::-webkit-file-upload-button {

outline-offset: 0

}

a:-webkit-any-link {

color: -webkit-link;

text-decoration: none;

cursor: auto;

}

a:-webkit-any-link:active {

color: -webkit-activelink

}

/* HTML5 ruby elements */

ruby, rt {

text-indent: 0; /* blocks used for ruby rendering should not trigger this */

}

rt {

line-height: normal;

-webkit-text-emphasis: none;

}

ruby > rt {

display: block;

font-size: 50%;

text-align: -webkit-auto;

}

ruby > rp {

display: none;

}

/* other elements */

noframes {

display: none

}

frameset, frame {

display: block

}

frameset {

border-color: inherit

}

iframe {

border: 2px inset

}

details {

display: block

}

summary {

display: block

}

summary::-webkit-details-marker {

display: inline-block;

width: 0.66em;

height: 0.66em;

margin-right: 0.4em;

}

/* page */

@page {

/* FIXME: Define the right default values for page properties. */

size: auto;

margin: auto;

padding: 0px;

border-width: 0px;

}

/* noscript is handled internally, as it depends on settings */

上面的就是webkit的css默认表,上面都是一些常见的css默认样式

那么这个文件是如何加载到webcore中那?

按照我们猜测有可能是浏览器启动的时候直接加载进去,如同在页面里面直接加载使用

如同下面的例子:

[html] view plaincopyprint?<head>

<link rel="stylesheet" type="text/css" href="http://www.dreamdu.com/style.css" />

</head>

<head>

<link rel="stylesheet" type="text/css" href="http://www.dreamdu.com/style.css" />

</head>实际上webcore中的使用有点类似,但是形式不一样。

下面我们就简单说一下如何把html.css文件加载到webcore内部中

首先我们看到(android/external/webkit/Source/WebCore/Android.derived.mk)

我们看下里面的脚本代码:

[plain] view plaincopyprint?# user agent style sheets

style_sheets := $(LOCAL_PATH)/css/html.css $(LOCAL_PATH)/css/quirks.css $(LOCAL_PATH)/css/fullscreen.css $(LOCAL_PATH)/css/view-source.css $(LOCAL_PATH)/css/mediaControls.css $(LOCAL_PATH)/css/mediaControlsAndroid.css $(LOCAL_PATH)/css/guangxidvb.css $(LOCAL_PATH)/css/guangxivod.css

ifeq ($(ENABLE_SVG), true)

style_sheets := $(style_sheets) $(LOCAL_PATH)/css/svg.css

endif

GEN := $(intermediates)/css/UserAgentStyleSheets.h

make_css_file_arrays := $(LOCAL_PATH)/css/make-css-file-arrays.pl

$(GEN): PRIVATE_CUSTOM_TOOL = $< $@ $(basename $@).cpp $(filter %.css,$^)

$(GEN): $(make_css_file_arrays) $(style_sheets)

$(transform-generated-source)

LOCAL_GENERATED_SOURCES += $(GEN) $(GEN:%.h=%.cpp)

# character set name table

# user agent style sheets

style_sheets := $(LOCAL_PATH)/css/html.css $(LOCAL_PATH)/css/quirks.css $(LOCAL_PATH)/css/fullscreen.css $(LOCAL_PATH)/css/view-source.css $(LOCAL_PATH)/css/mediaControls.css $(LOCAL_PATH)/css/mediaControlsAndroid.css $(LOCAL_PATH)/css/guangxidvb.css $(LOCAL_PATH)/css/guangxivod.css

ifeq ($(ENABLE_SVG), true)

style_sheets := $(style_sheets) $(LOCAL_PATH)/css/svg.css

endif

GEN := $(intermediates)/css/UserAgentStyleSheets.h

make_css_file_arrays := $(LOCAL_PATH)/css/make-css-file-arrays.pl

$(GEN): PRIVATE_CUSTOM_TOOL = $< $@ $(basename $@).cpp $(filter %.css,$^)

$(GEN): $(make_css_file_arrays) $(style_sheets)

$(transform-generated-source)

LOCAL_GENERATED_SOURCES += $(GEN) $(GEN:%.h=%.cpp)

# character set name table

webkit对html.css做了个特殊的处理,会先把html.css文件转化成16机制的数字

具体生成在:

obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/UserAgentStyleSheets.h

[html] view plaincopyprint?namespace WebCore {

extern const char htmlUserAgentStyleSheet[14912];

extern const char quirksUserAgentStyleSheet[351];

extern const char fullscreenUserAgentStyleSheet[509];

extern const char sourceUserAgentStyleSheet[2014];

extern const char mediaControlsUserAgentStyleSheet[4051];

extern const char mediaControlsAndroidUserAgentStyleSheet[2812];

extern const char guangxidvbUserAgentStyleSheet[14937];

namespace WebCore {

extern const char htmlUserAgentStyleSheet[14912];

extern const char quirksUserAgentStyleSheet[351];

extern const char fullscreenUserAgentStyleSheet[509];

extern const char sourceUserAgentStyleSheet[2014];

extern const char mediaControlsUserAgentStyleSheet[4051];

extern const char mediaControlsAndroidUserAgentStyleSheet[2812];

extern const char guangxidvbUserAgentStyleSheet[14937];

}

obj/STATIC_LIBRARIES/libwebcore_intermediates/Source/WebCore/css/UserAgentStyleSheets.cpp

namespace WebCore {

extern const char htmlUserAgentStyleSheet[14912] = {

64, 110, 97, 109, 101, 115, 112, 97, 99, 101, 32, 34, 104, 116, 116, 112,

58, 47, 47, 119, 119, 119, 46, 119, 51, 46, 111, 114, 103, 47, 49, 57,

57, 57, 47, 120, 104, 116, 109, 108, 34, 59, 32, 104, 116, 109, 108, 32,

123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107,

32, 125, 32, 104, 101, 97, 100, 32, 123, 32, 100, 105, 115, 112, 108, 97,

121, 58, 32, 110, 111, 110, 101, 32, 125, 32, 109, 101, 116, 97, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 110, 111, 110, 101, 32, 125,

32, 116, 105, 116, 108, 101, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121,

58, 32, 110, 111, 110, 101, 32, 125, 32, 108, 105, 110, 107, 32, 123, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 110, 111, 110, 101, 32, 125, 32,

115, 116, 121, 108, 101, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58,

32, 110, 111, 110, 101, 32, 125, 32, 115, 99, 114, 105, 112, 116, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 110, 111, 110, 101, 32, 125,

32, 98, 111, 100, 121, 32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117,

110, 100, 45, 114, 101, 112, 101, 97, 116, 58, 110, 111, 45, 114, 101, 112,

101, 97, 116, 32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32,

109, 97, 114, 103, 105, 110, 58, 32, 56, 112, 120, 32, 125, 32, 112, 32,

123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110,

45, 98, 101, 102, 111, 114, 101, 58, 32, 49, 95, 95, 113, 101, 109, 59,

32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45,

97, 102, 116, 101, 114, 58, 32, 49, 95, 95, 113, 101, 109, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115, 116,

97, 114, 116, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 48, 59, 32, 125,

32, 100, 105, 118, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32,

98, 108, 111, 99, 107, 32, 125, 32, 108, 97, 121, 101, 114, 32, 123, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32, 125,

32, 97, 114, 116, 105, 99, 108, 101, 44, 32, 97, 115, 105, 100, 101, 44,

32, 102, 111, 111, 116, 101, 114, 44, 32, 104, 101, 97, 100, 101, 114, 44,

32, 104, 103, 114, 111, 117, 112, 44, 32, 110, 97, 118, 44, 32, 115, 101,

99, 116, 105, 111, 110, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58,

32, 98, 108, 111, 99, 107, 32, 125, 32, 109, 97, 114, 113, 117, 101, 101,

32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105,

110, 101, 45, 98, 108, 111, 99, 107, 59, 32, 111, 118, 101, 114, 102, 108,

111, 119, 58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 113,

117, 101, 101, 32, 125, 32, 97, 100, 100, 114, 101, 115, 115, 32, 123, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32, 125,

32, 98, 108, 111, 99, 107, 113, 117, 111, 116, 101, 32, 123, 32, 100, 105,

115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102,

111, 114, 101, 58, 32, 49, 95, 95, 113, 101, 109, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101,

114, 58, 32, 49, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

109, 97, 114, 103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 52, 48,

112, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103,

105, 110, 45, 101, 110, 100, 58, 32, 52, 48, 112, 120, 59, 32, 125, 32,

102, 105, 103, 99, 97, 112, 116, 105, 111, 110, 32, 123, 32, 100, 105, 115,

112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32, 125, 32, 102, 105,

103, 117, 114, 101, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32,

98, 108, 111, 99, 107, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109,

97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 49, 101,

109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105,

110, 45, 97, 102, 116, 101, 114, 58, 32, 49, 101, 109, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115, 116, 97,

114, 116, 58, 32, 52, 48, 112, 120, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 52, 48,

112, 120, 59, 32, 125, 32, 113, 32, 123, 32, 100, 105, 115, 112, 108, 97,

121, 58, 32, 105, 110, 108, 105, 110, 101, 32, 125, 32, 113, 58, 98, 101,

102, 111, 114, 101, 32, 123, 32, 99, 111, 110, 116, 101, 110, 116, 58, 32,

111, 112, 101, 110, 45, 113, 117, 111, 116, 101, 59, 32, 125, 32, 113, 58,

97, 102, 116, 101, 114, 32, 123, 32, 99, 111, 110, 116, 101, 110, 116, 58,

32, 99, 108, 111, 115, 101, 45, 113, 117, 111, 116, 101, 59, 32, 125, 32,

99, 101, 110, 116, 101, 114, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121,

58, 32, 98, 108, 111, 99, 107, 59, 32, 116, 101, 120, 116, 45, 97, 108,

105, 103, 110, 58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 99, 101, 110,

116, 101, 114, 32, 125, 32, 104, 114, 32, 123, 32, 100, 105, 115, 112, 108,

97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101,

58, 32, 48, 46, 53, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 48,

46, 53, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97,

114, 103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 97, 117, 116, 111,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110,

45, 101, 110, 100, 58, 32, 97, 117, 116, 111, 59, 32, 98, 111, 114, 100,

101, 114, 45, 115, 116, 121, 108, 101, 58, 32, 105, 110, 115, 101, 116, 59,

32, 98, 111, 114, 100, 101, 114, 45, 119, 105, 100, 116, 104, 58, 32, 49,

112, 120, 32, 125, 32, 109, 97, 112, 32, 123, 32, 100, 105, 115, 112, 108,

97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 32, 125, 32, 104, 49, 32,

123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107,

59, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 50, 101, 109,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110,

45, 98, 101, 102, 111, 114, 101, 58, 32, 48, 46, 54, 55, 95, 95, 113,

101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103,

105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 48, 46, 54, 55, 101, 109,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110,

45, 115, 116, 97, 114, 116, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 48,

59, 32, 102, 111, 110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 98,

111, 108, 100, 32, 125, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97,

110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101,

44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 104, 49,

32, 123, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 49, 46,

53, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114,

103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 48, 46, 56, 51,

95, 95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109,

97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 48, 46, 56,

51, 101, 109, 59, 32, 125, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45,

97, 110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100,

101, 44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 58,

45, 119, 101, 98, 107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105,

99, 108, 101, 44, 97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101,

99, 116, 105, 111, 110, 41, 32, 104, 49, 32, 123, 32, 102, 111, 110, 116,

45, 115, 105, 122, 101, 58, 32, 49, 46, 49, 55, 101, 109, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101,

102, 111, 114, 101, 58, 32, 49, 95, 95, 113, 101, 109, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116,

101, 114, 58, 32, 49, 101, 109, 59, 32, 125, 32, 58, 45, 119, 101, 98,

107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44,

97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111,

110, 41, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97, 110, 121, 40,

97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101, 44, 110, 97,

118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 58, 45, 119, 101, 98,

107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44,

97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111,

110, 41, 32, 104, 49, 32, 123, 32, 102, 111, 110, 116, 45, 115, 105, 122,

101, 58, 32, 49, 46, 48, 48, 101, 109, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101,

58, 32, 49, 46, 51, 51, 95, 95, 113, 101, 109, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101,

114, 58, 32, 49, 46, 51, 51, 101, 109, 59, 32, 125, 32, 58, 45, 119,

101, 98, 107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99, 108,

101, 44, 97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99, 116,

105, 111, 110, 41, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97, 110,

121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101, 44,

110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 58, 45, 119,

101, 98, 107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99, 108,

101, 44, 97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99, 116,

105, 111, 110, 41, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97, 110,

121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101, 44,

110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 104, 49, 32,

123, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 46, 56, 51,

101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103,

105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 49, 46, 54, 55, 95,

95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97,

114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 49, 46, 54, 55,

101, 109, 59, 32, 125, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97,

110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101,

44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 58, 45,

119, 101, 98, 107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99,

108, 101, 44, 97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99,

116, 105, 111, 110, 41, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97,

110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101,

44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 58, 45,

119, 101, 98, 107, 105, 116, 45, 97, 110, 121, 40, 97, 114, 116, 105, 99,

108, 101, 44, 97, 115, 105, 100, 101, 44, 110, 97, 118, 44, 115, 101, 99,

116, 105, 111, 110, 41, 32, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97,

110, 121, 40, 97, 114, 116, 105, 99, 108, 101, 44, 97, 115, 105, 100, 101,

44, 110, 97, 118, 44, 115, 101, 99, 116, 105, 111, 110, 41, 32, 104, 49,

32, 123, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 46, 54,

55, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114,

103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 50, 46, 51, 51,

95, 95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109,

97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 50, 46, 51,

51, 101, 109, 59, 32, 125, 32, 104, 50, 32, 123, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 102, 111, 110, 116,

45, 115, 105, 122, 101, 58, 32, 49, 46, 53, 101, 109, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102,

111, 114, 101, 58, 32, 48, 46, 56, 51, 95, 95, 113, 101, 109, 59, 32,

45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97,

102, 116, 101, 114, 58, 32, 48, 46, 56, 51, 101, 109, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115, 116, 97,

114, 116, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109,

97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 48, 59, 32, 102, 111,

110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 98, 111, 108, 100, 32,

125, 32, 104, 51, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32,

98, 108, 111, 99, 107, 59, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101,

58, 32, 49, 46, 49, 55, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58,

32, 49, 95, 95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 49,

101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103,

105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 48, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58,

32, 48, 59, 32, 102, 111, 110, 116, 45, 119, 101, 105, 103, 104, 116, 58,

32, 98, 111, 108, 100, 32, 125, 32, 104, 52, 32, 123, 32, 100, 105, 115,

112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111,

114, 101, 58, 32, 49, 46, 51, 51, 95, 95, 113, 101, 109, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102,

116, 101, 114, 58, 32, 49, 46, 51, 51, 101, 109, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115, 116, 97, 114,

116, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97,

114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 48, 59, 32, 102, 111, 110,

116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 98, 111, 108, 100, 32, 125,

32, 104, 53, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98,

108, 111, 99, 107, 59, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58,

32, 46, 56, 51, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 49,

46, 54, 55, 95, 95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32,

49, 46, 54, 55, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

109, 97, 114, 103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 48, 59,

32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45,

101, 110, 100, 58, 32, 48, 59, 32, 102, 111, 110, 116, 45, 119, 101, 105,

103, 104, 116, 58, 32, 98, 111, 108, 100, 32, 125, 32, 104, 54, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59,

32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 46, 54, 55, 101,

109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105,

110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 50, 46, 51, 51, 95, 95,

113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114,

103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 50, 46, 51, 51, 101,

109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105,

110, 45, 115, 116, 97, 114, 116, 58, 32, 48, 59, 32, 45, 119, 101, 98,

107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32,

48, 59, 32, 102, 111, 110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32,

98, 111, 108, 100, 32, 125, 32, 116, 97, 98, 108, 101, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 59, 32, 98,

111, 114, 100, 101, 114, 45, 99, 111, 108, 108, 97, 112, 115, 101, 58, 32,

115, 101, 112, 97, 114, 97, 116, 101, 59, 32, 98, 111, 114, 100, 101, 114,

45, 115, 112, 97, 99, 105, 110, 103, 58, 32, 50, 112, 120, 59, 32, 98,

111, 114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58, 32, 103, 114, 97,

121, 32, 125, 32, 116, 104, 101, 97, 100, 32, 123, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 45, 104, 101, 97, 100, 101,

114, 45, 103, 114, 111, 117, 112, 59, 32, 118, 101, 114, 116, 105, 99, 97,

108, 45, 97, 108, 105, 103, 110, 58, 32, 109, 105, 100, 100, 108, 101, 59,

32, 98, 111, 114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58, 32, 105,

110, 104, 101, 114, 105, 116, 32, 125, 32, 116, 98, 111, 100, 121, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 45,

114, 111, 119, 45, 103, 114, 111, 117, 112, 59, 32, 118, 101, 114, 116, 105,

99, 97, 108, 45, 97, 108, 105, 103, 110, 58, 32, 109, 105, 100, 100, 108,

101, 59, 32, 98, 111, 114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58,

32, 105, 110, 104, 101, 114, 105, 116, 32, 125, 32, 116, 102, 111, 111, 116,

32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108,

101, 45, 102, 111, 111, 116, 101, 114, 45, 103, 114, 111, 117, 112, 59, 32,

118, 101, 114, 116, 105, 99, 97, 108, 45, 97, 108, 105, 103, 110, 58, 32,

109, 105, 100, 100, 108, 101, 59, 32, 98, 111, 114, 100, 101, 114, 45, 99,

111, 108, 111, 114, 58, 32, 105, 110, 104, 101, 114, 105, 116, 32, 125, 32,

116, 97, 98, 108, 101, 32, 62, 32, 116, 114, 32, 123, 32, 118, 101, 114,

116, 105, 99, 97, 108, 45, 97, 108, 105, 103, 110, 58, 32, 109, 105, 100,

100, 108, 101, 59, 32, 125, 32, 99, 111, 108, 32, 123, 32, 100, 105, 115,

112, 108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 45, 99, 111, 108, 117,

109, 110, 32, 125, 32, 99, 111, 108, 103, 114, 111, 117, 112, 32, 123, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 45, 99,

111, 108, 117, 109, 110, 45, 103, 114, 111, 117, 112, 32, 125, 32, 116, 114,

32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108,

101, 45, 114, 111, 119, 59, 32, 118, 101, 114, 116, 105, 99, 97, 108, 45,

97, 108, 105, 103, 110, 58, 32, 105, 110, 104, 101, 114, 105, 116, 59, 32,

98, 111, 114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58, 32, 105, 110,

104, 101, 114, 105, 116, 32, 125, 32, 116, 100, 44, 32, 116, 104, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108, 101, 45,

99, 101, 108, 108, 59, 32, 118, 101, 114, 116, 105, 99, 97, 108, 45, 97,

108, 105, 103, 110, 58, 32, 105, 110, 104, 101, 114, 105, 116, 32, 125, 32,

116, 104, 32, 123, 32, 102, 111, 110, 116, 45, 119, 101, 105, 103, 104, 116,

58, 32, 98, 111, 108, 100, 32, 125, 32, 99, 97, 112, 116, 105, 111, 110,

32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 116, 97, 98, 108,

101, 45, 99, 97, 112, 116, 105, 111, 110, 59, 32, 116, 101, 120, 116, 45,

97, 108, 105, 103, 110, 58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 99,

101, 110, 116, 101, 114, 32, 125, 32, 117, 108, 44, 32, 109, 101, 110, 117,

44, 32, 100, 105, 114, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58,

32, 98, 108, 111, 99, 107, 59, 32, 108, 105, 115, 116, 45, 115, 116, 121,

108, 101, 45, 116, 121, 112, 101, 58, 32, 100, 105, 115, 99, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101,

102, 111, 114, 101, 58, 32, 49, 95, 95, 113, 101, 109, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116,

101, 114, 58, 32, 49, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 109, 97, 114, 103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 48,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110,

45, 101, 110, 100, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 112, 97, 100, 100, 105, 110, 103, 45, 115, 116, 97, 114, 116, 58, 32,

52, 48, 112, 120, 32, 125, 32, 111, 108, 32, 123, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 108, 105, 115, 116,

45, 115, 116, 121, 108, 101, 45, 116, 121, 112, 101, 58, 32, 100, 101, 99,

105, 109, 97, 108, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97,

114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58, 32, 49, 95, 95,

113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114,

103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 49, 101, 109, 59, 32,

45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115,

116, 97, 114, 116, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 48, 59, 32,

45, 119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105, 110, 103, 45,

115, 116, 97, 114, 116, 58, 32, 52, 48, 112, 120, 32, 125, 32, 108, 105,

32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 108, 105, 115, 116,

45, 105, 116, 101, 109, 32, 125, 32, 117, 108, 32, 117, 108, 44, 32, 111,

108, 32, 117, 108, 32, 123, 32, 108, 105, 115, 116, 45, 115, 116, 121, 108,

101, 45, 116, 121, 112, 101, 58, 32, 99, 105, 114, 99, 108, 101, 32, 125,

32, 111, 108, 32, 111, 108, 32, 117, 108, 44, 32, 111, 108, 32, 117, 108,

32, 117, 108, 44, 32, 117, 108, 32, 111, 108, 32, 117, 108, 44, 32, 117,

108, 32, 117, 108, 32, 117, 108, 32, 123, 32, 108, 105, 115, 116, 45, 115,

116, 121, 108, 101, 45, 116, 121, 112, 101, 58, 32, 115, 113, 117, 97, 114,

101, 32, 125, 32, 100, 100, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121,

58, 32, 98, 108, 111, 99, 107, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 109, 97, 114, 103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 52,

48, 112, 120, 32, 125, 32, 100, 108, 32, 123, 32, 100, 105, 115, 112, 108,

97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101,

58, 32, 49, 95, 95, 113, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 97, 102, 116, 101, 114, 58, 32,

49, 101, 109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114,

103, 105, 110, 45, 115, 116, 97, 114, 116, 58, 32, 48, 59, 32, 45, 119,

101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100,

58, 32, 48, 59, 32, 125, 32, 100, 116, 32, 123, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32, 125, 32, 111, 108, 32,

117, 108, 44, 32, 117, 108, 32, 111, 108, 44, 32, 117, 108, 32, 117, 108,

44, 32, 111, 108, 32, 111, 108, 32, 123, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 98, 101, 102, 111, 114, 101, 58,

32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103,

105, 110, 45, 97, 102, 116, 101, 114, 58, 32, 48, 32, 125, 32, 102, 111,

114, 109, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108,

111, 99, 107, 59, 32, 109, 97, 114, 103, 105, 110, 45, 116, 111, 112, 58,

32, 48, 95, 95, 113, 101, 109, 59, 32, 125, 32, 108, 97, 98, 101, 108,

32, 123, 32, 99, 117, 114, 115, 111, 114, 58, 32, 100, 101, 102, 97, 117,

108, 116, 59, 32, 125, 32, 108, 101, 103, 101, 110, 100, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105, 110, 103, 45, 115,

116, 97, 114, 116, 58, 32, 50, 112, 120, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 112, 97, 100, 100, 105, 110, 103, 45, 101, 110, 100, 58, 32,

50, 112, 120, 59, 32, 98, 111, 114, 100, 101, 114, 58, 32, 110, 111, 110,

101, 32, 125, 32, 102, 105, 101, 108, 100, 115, 101, 116, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 109, 97, 114, 103, 105, 110, 45, 115, 116,

97, 114, 116, 58, 32, 50, 112, 120, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 109, 97, 114, 103, 105, 110, 45, 101, 110, 100, 58, 32, 50, 112,

120, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105,

110, 103, 45, 98, 101, 102, 111, 114, 101, 58, 32, 48, 46, 51, 53, 101,

109, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105,

110, 103, 45, 115, 116, 97, 114, 116, 58, 32, 48, 46, 55, 53, 101, 109,

59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105, 110,

103, 45, 101, 110, 100, 58, 32, 48, 46, 55, 53, 101, 109, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 112, 97, 100, 100, 105, 110, 103, 45, 97,

102, 116, 101, 114, 58, 32, 48, 46, 54, 50, 53, 101, 109, 59, 32, 98,

111, 114, 100, 101, 114, 58, 32, 50, 112, 120, 32, 103, 114, 111, 111, 118,

101, 32, 84, 104, 114, 101, 101, 68, 70, 97, 99, 101, 32, 125, 32, 98,

117, 116, 116, 111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45,

97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 98, 117, 116, 116,

111, 110, 59, 32, 125, 32, 105, 110, 112, 117, 116, 44, 32, 116, 101, 120,

116, 97, 114, 101, 97, 44, 32, 107, 101, 121, 103, 101, 110, 44, 32, 115,

101, 108, 101, 99, 116, 44, 32, 98, 117, 116, 116, 111, 110, 44, 32, 105,

115, 105, 110, 100, 101, 120, 44, 32, 109, 101, 116, 101, 114, 44, 32, 112,

114, 111, 103, 114, 101, 115, 115, 32, 123, 32, 45, 119, 101, 98, 107, 105,

116, 45, 98, 108, 111, 99, 107, 45, 102, 108, 111, 119, 58, 32, 116, 98,

32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32, 125, 32, 105,

110, 112, 117, 116, 44, 32, 116, 101, 120, 116, 97, 114, 101, 97, 44, 32,

107, 101, 121, 103, 101, 110, 44, 32, 115, 101, 108, 101, 99, 116, 44, 32,

98, 117, 116, 116, 111, 110, 44, 32, 105, 115, 105, 110, 100, 101, 120, 44,

32, 100, 97, 116, 97, 103, 114, 105, 100, 32, 123, 32, 109, 97, 114, 103,

105, 110, 58, 32, 48, 95, 95, 113, 101, 109, 59, 32, 102, 111, 110, 116,

58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 115, 109, 97, 108, 108, 45,

99, 111, 110, 116, 114, 111, 108, 59, 32, 99, 111, 108, 111, 114, 58, 32,

105, 110, 105, 116, 105, 97, 108, 59, 32, 108, 101, 116, 116, 101, 114, 45,

115, 112, 97, 99, 105, 110, 103, 58, 32, 110, 111, 114, 109, 97, 108, 59,

32, 119, 111, 114, 100, 45, 115, 112, 97, 99, 105, 110, 103, 58, 32, 110,

111, 114, 109, 97, 108, 59, 32, 108, 105, 110, 101, 45, 104, 101, 105, 103,

104, 116, 58, 32, 110, 111, 114, 109, 97, 108, 59, 32, 116, 101, 120, 116,

45, 116, 114, 97, 110, 115, 102, 111, 114, 109, 58, 32, 110, 111, 110, 101,

59, 32, 116, 101, 120, 116, 45, 105, 110, 100, 101, 110, 116, 58, 32, 48,

59, 32, 116, 101, 120, 116, 45, 115, 104, 97, 100, 111, 119, 58, 32, 110,

111, 110, 101, 59, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110,

108, 105, 110, 101, 45, 98, 108, 111, 99, 107, 59, 32, 116, 101, 120, 116,

45, 97, 108, 105, 103, 110, 58, 32, 45, 119, 101, 98, 107, 105, 116, 45,

97, 117, 116, 111, 59, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121,

112, 101, 61, 34, 104, 105, 100, 100, 101, 110, 34, 93, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 110, 111, 110, 101, 32, 125, 32, 105,

110, 112, 117, 116, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101,

61, 34, 112, 97, 115, 115, 119, 111, 114, 100, 34, 93, 44, 32, 105, 110,

112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 101, 97, 114, 99, 104,

34, 93, 44, 32, 105, 115, 105, 110, 100, 101, 120, 32, 123, 32, 45, 119,

101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101,

58, 32, 116, 101, 120, 116, 102, 105, 101, 108, 100, 59, 32, 112, 97, 100,

100, 105, 110, 103, 58, 32, 49, 112, 120, 59, 32, 98, 97, 99, 107, 103,

114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114, 58, 32, 119, 104, 105,

116, 101, 59, 32, 98, 111, 114, 100, 101, 114, 58, 32, 50, 112, 120, 32,

105, 110, 115, 101, 116, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 114,

116, 108, 45, 111, 114, 100, 101, 114, 105, 110, 103, 58, 32, 108, 111, 103,

105, 99, 97, 108, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 117, 115,

101, 114, 45, 115, 101, 108, 101, 99, 116, 58, 32, 116, 101, 120, 116, 59,

32, 99, 117, 114, 115, 111, 114, 58, 32, 97, 117, 116, 111, 59, 32, 125,

32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 101, 97,

114, 99, 104, 34, 93, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45,

97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 115, 101, 97, 114,

99, 104, 102, 105, 101, 108, 100, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114,

100, 101, 114, 45, 98, 111, 120, 59, 32, 125, 32, 105, 110, 112, 117, 116,

91, 116, 121, 112, 101, 61, 34, 115, 101, 97, 114, 99, 104, 34, 93, 58,

58, 45, 119, 101, 98, 107, 105, 116, 45, 115, 101, 97, 114, 99, 104, 45,

99, 97, 110, 99, 101, 108, 45, 98, 117, 116, 116, 111, 110, 32, 123, 32,

45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110,

99, 101, 58, 32, 115, 101, 97, 114, 99, 104, 102, 105, 101, 108, 100, 45,

99, 97, 110, 99, 101, 108, 45, 98, 117, 116, 116, 111, 110, 59, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98,

108, 111, 99, 107, 59, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121,

112, 101, 61, 34, 115, 101, 97, 114, 99, 104, 34, 93, 58, 58, 45, 119,

101, 98, 107, 105, 116, 45, 115, 101, 97, 114, 99, 104, 45, 100, 101, 99,

111, 114, 97, 116, 105, 111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105,

116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 115, 101,

97, 114, 99, 104, 102, 105, 101, 108, 100, 45, 100, 101, 99, 111, 114, 97,

116, 105, 111, 110, 59, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105,

110, 108, 105, 110, 101, 45, 98, 108, 111, 99, 107, 59, 32, 125, 32, 105,

110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 101, 97, 114, 99,

104, 34, 93, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 115, 101, 97,

114, 99, 104, 45, 114, 101, 115, 117, 108, 116, 115, 45, 100, 101, 99, 111,

114, 97, 116, 105, 111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116,

45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 115, 101, 97,

114, 99, 104, 102, 105, 101, 108, 100, 45, 114, 101, 115, 117, 108, 116, 115,

45, 100, 101, 99, 111, 114, 97, 116, 105, 111, 110, 59, 32, 100, 105, 115,

112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98, 108, 111,

99, 107, 59, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101,

61, 34, 115, 101, 97, 114, 99, 104, 34, 93, 58, 58, 45, 119, 101, 98,

107, 105, 116, 45, 115, 101, 97, 114, 99, 104, 45, 114, 101, 115, 117, 108,

116, 115, 45, 98, 117, 116, 116, 111, 110, 32, 123, 32, 45, 119, 101, 98,

107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32,

115, 101, 97, 114, 99, 104, 102, 105, 101, 108, 100, 45, 114, 101, 115, 117,

108, 116, 115, 45, 98, 117, 116, 116, 111, 110, 59, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98, 108, 111, 99,

107, 59, 32, 125, 32, 105, 110, 112, 117, 116, 58, 58, 45, 119, 101, 98,

107, 105, 116, 45, 105, 110, 112, 117, 116, 45, 108, 105, 115, 116, 45, 98,

117, 116, 116, 111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45,

97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 108, 105, 115, 116,

45, 98, 117, 116, 116, 111, 110, 59, 32, 100, 105, 115, 112, 108, 97, 121,

58, 32, 105, 110, 108, 105, 110, 101, 45, 98, 108, 111, 99, 107, 59, 32,

125, 32, 105, 110, 112, 117, 116, 58, 58, 45, 119, 101, 98, 107, 105, 116,

45, 105, 110, 110, 101, 114, 45, 115, 112, 105, 110, 45, 98, 117, 116, 116,

111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112,

101, 97, 114, 97, 110, 99, 101, 58, 32, 105, 110, 110, 101, 114, 45, 115,

112, 105, 110, 45, 98, 117, 116, 116, 111, 110, 59, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98, 108, 111, 99,

107, 59, 32, 112, 111, 115, 105, 116, 105, 111, 110, 58, 32, 114, 101, 108,

97, 116, 105, 118, 101, 59, 32, 99, 117, 114, 115, 111, 114, 58, 32, 100,

101, 102, 97, 117, 108, 116, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

117, 115, 101, 114, 45, 115, 101, 108, 101, 99, 116, 58, 32, 110, 111, 110,

101, 59, 32, 125, 32, 105, 110, 112, 117, 116, 58, 58, 45, 119, 101, 98,

107, 105, 116, 45, 111, 117, 116, 101, 114, 45, 115, 112, 105, 110, 45, 98,

117, 116, 116, 111, 110, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45,

97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 111, 117, 116, 101,

114, 45, 115, 112, 105, 110, 45, 98, 117, 116, 116, 111, 110, 59, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98,

108, 111, 99, 107, 59, 32, 112, 111, 115, 105, 116, 105, 111, 110, 58, 32,

114, 101, 108, 97, 116, 105, 118, 101, 59, 32, 99, 117, 114, 115, 111, 114,

58, 32, 100, 101, 102, 97, 117, 108, 116, 59, 32, 109, 97, 114, 103, 105,

110, 45, 108, 101, 102, 116, 58, 32, 50, 112, 120, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 117, 115, 101, 114, 45, 115, 101, 108, 101, 99, 116,

58, 32, 110, 111, 110, 101, 59, 32, 125, 32, 105, 110, 112, 117, 116, 58,

58, 45, 119, 101, 98, 107, 105, 116, 45, 105, 110, 112, 117, 116, 45, 115,

112, 101, 101, 99, 104, 45, 98, 117, 116, 116, 111, 110, 32, 123, 32, 45,

119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99,

101, 58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 105, 110, 112, 117, 116,

45, 115, 112, 101, 101, 99, 104, 45, 98, 117, 116, 116, 111, 110, 59, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45,

98, 108, 111, 99, 107, 59, 32, 125, 32, 107, 101, 121, 103, 101, 110, 44,

32, 115, 101, 108, 101, 99, 116, 32, 123, 32, 45, 119, 101, 98, 107, 105,

116, 45, 98, 111, 114, 100, 101, 114, 45, 114, 97, 100, 105, 117, 115, 58,

32, 53, 112, 120, 59, 32, 125, 32, 107, 101, 121, 103, 101, 110, 58, 58,

45, 119, 101, 98, 107, 105, 116, 45, 107, 101, 121, 103, 101, 110, 45, 115,

101, 108, 101, 99, 116, 32, 123, 32, 109, 97, 114, 103, 105, 110, 58, 32,

48, 112, 120, 59, 32, 125, 32, 116, 101, 120, 116, 97, 114, 101, 97, 32,

123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114,

97, 110, 99, 101, 58, 32, 116, 101, 120, 116, 97, 114, 101, 97, 59, 32,

98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114,

58, 32, 119, 104, 105, 116, 101, 59, 32, 98, 111, 114, 100, 101, 114, 58,

32, 49, 112, 120, 32, 115, 111, 108, 105, 100, 59, 32, 45, 119, 101, 98,

107, 105, 116, 45, 114, 116, 108, 45, 111, 114, 100, 101, 114, 105, 110, 103,

58, 32, 108, 111, 103, 105, 99, 97, 108, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 117, 115, 101, 114, 45, 115, 101, 108, 101, 99, 116, 58, 32,

116, 101, 120, 116, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111,

120, 45, 111, 114, 105, 101, 110, 116, 58, 32, 118, 101, 114, 116, 105, 99,

97, 108, 59, 32, 114, 101, 115, 105, 122, 101, 58, 32, 97, 117, 116, 111,

59, 32, 99, 117, 114, 115, 111, 114, 58, 32, 97, 117, 116, 111, 59, 32,

112, 97, 100, 100, 105, 110, 103, 58, 32, 50, 112, 120, 59, 32, 119, 104,

105, 116, 101, 45, 115, 112, 97, 99, 101, 58, 32, 112, 114, 101, 45, 119,

114, 97, 112, 59, 32, 119, 111, 114, 100, 45, 119, 114, 97, 112, 58, 32,

98, 114, 101, 97, 107, 45, 119, 111, 114, 100, 59, 32, 125, 32, 105, 110,

112, 117, 116, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 105, 110, 112,

117, 116, 45, 112, 108, 97, 99, 101, 104, 111, 108, 100, 101, 114, 44, 32,

105, 115, 105, 110, 100, 101, 120, 58, 58, 45, 119, 101, 98, 107, 105, 116,

45, 105, 110, 112, 117, 116, 45, 112, 108, 97, 99, 101, 104, 111, 108, 100,

101, 114, 44, 32, 116, 101, 120, 116, 97, 114, 101, 97, 58, 58, 45, 119,

101, 98, 107, 105, 116, 45, 105, 110, 112, 117, 116, 45, 112, 108, 97, 99,

101, 104, 111, 108, 100, 101, 114, 32, 123, 32, 99, 111, 108, 111, 114, 58,

32, 100, 97, 114, 107, 71, 114, 97, 121, 59, 32, 125, 32, 105, 110, 112,

117, 116, 91, 116, 121, 112, 101, 61, 34, 112, 97, 115, 115, 119, 111, 114,

100, 34, 93, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 116, 101,

120, 116, 45, 115, 101, 99, 117, 114, 105, 116, 121, 58, 32, 100, 105, 115,

99, 32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32, 125, 32,

105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 104, 105, 100, 100,

101, 110, 34, 93, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101,

61, 34, 105, 109, 97, 103, 101, 34, 93, 44, 32, 105, 110, 112, 117, 116,

91, 116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 32, 123, 32,

45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110,

99, 101, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 112, 97, 100,

100, 105, 110, 103, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 98,

97, 99, 107, 103, 114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114, 58,

32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 98, 111, 114, 100, 101, 114,

58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 125, 32, 105, 110, 112,

117, 116, 91, 116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 32,

123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 97, 108,

105, 103, 110, 58, 32, 98, 97, 115, 101, 108, 105, 110, 101, 59, 32, 116,

101, 120, 116, 45, 97, 108, 105, 103, 110, 58, 32, 115, 116, 97, 114, 116,

32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32, 125, 32, 105,

110, 112, 117, 116, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97, 117, 116,

111, 102, 105, 108, 108, 32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117,

110, 100, 45, 99, 111, 108, 111, 114, 58, 32, 35, 70, 65, 70, 70, 66,

68, 32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32, 98, 97,

99, 107, 103, 114, 111, 117, 110, 100, 45, 105, 109, 97, 103, 101, 58, 110,

111, 110, 101, 32, 33, 105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32,

99, 111, 108, 111, 114, 58, 32, 35, 48, 48, 48, 48, 48, 48, 32, 33,

105, 109, 112, 111, 114, 116, 97, 110, 116, 59, 32, 125, 32, 105, 110, 112,

117, 116, 91, 116, 121, 112, 101, 61, 34, 114, 97, 100, 105, 111, 34, 93,

44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 99, 104,

101, 99, 107, 98, 111, 120, 34, 93, 32, 123, 32, 109, 97, 114, 103, 105,

110, 58, 32, 51, 112, 120, 32, 48, 46, 53, 101, 120, 59, 32, 112, 97,

100, 100, 105, 110, 103, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32,

98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114,

58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 98, 111, 114, 100, 101,

114, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 125, 32, 105, 110,

112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 98, 117, 116, 116, 111, 110,

34, 93, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34,

115, 117, 98, 109, 105, 116, 34, 93, 44, 32, 105, 110, 112, 117, 116, 91,

116, 121, 112, 101, 61, 34, 114, 101, 115, 101, 116, 34, 93, 44, 32, 105,

110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34,

93, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 102, 105, 108, 101, 45,

117, 112, 108, 111, 97, 100, 45, 98, 117, 116, 116, 111, 110, 32, 123, 32,

45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110,

99, 101, 58, 32, 112, 117, 115, 104, 45, 98, 117, 116, 116, 111, 110, 59,

32, 119, 104, 105, 116, 101, 45, 115, 112, 97, 99, 101, 58, 32, 112, 114,

101, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34,

98, 117, 116, 116, 111, 110, 34, 93, 44, 32, 105, 110, 112, 117, 116, 91,

116, 121, 112, 101, 61, 34, 115, 117, 98, 109, 105, 116, 34, 93, 44, 32,

105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 114, 101, 115, 101,

116, 34, 93, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61,

34, 102, 105, 108, 101, 34, 93, 58, 58, 45, 119, 101, 98, 107, 105, 116,

45, 102, 105, 108, 101, 45, 117, 112, 108, 111, 97, 100, 45, 98, 117, 116,

116, 111, 110, 44, 32, 98, 117, 116, 116, 111, 110, 32, 123, 32, 45, 119,

101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 97, 108, 105, 103, 110, 58,

32, 99, 101, 110, 116, 101, 114, 59, 32, 116, 101, 120, 116, 45, 97, 108,

105, 103, 110, 58, 32, 99, 101, 110, 116, 101, 114, 59, 32, 99, 117, 114,

115, 111, 114, 58, 32, 100, 101, 102, 97, 117, 108, 116, 59, 32, 99, 111,

108, 111, 114, 58, 32, 66, 117, 116, 116, 111, 110, 84, 101, 120, 116, 59,

32, 112, 97, 100, 100, 105, 110, 103, 58, 32, 50, 112, 120, 32, 54, 112,

120, 32, 51, 112, 120, 32, 54, 112, 120, 59, 32, 98, 111, 114, 100, 101,

114, 58, 32, 50, 112, 120, 32, 111, 117, 116, 115, 101, 116, 32, 66, 117,

116, 116, 111, 110, 70, 97, 99, 101, 59, 32, 98, 97, 99, 107, 103, 114,

111, 117, 110, 100, 45, 99, 111, 108, 111, 114, 58, 32, 66, 117, 116, 116,

111, 110, 70, 97, 99, 101, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114, 100,

101, 114, 45, 98, 111, 120, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116,

121, 112, 101, 61, 34, 114, 97, 110, 103, 101, 34, 93, 32, 123, 32, 45,

119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99,

101, 58, 32, 115, 108, 105, 100, 101, 114, 45, 104, 111, 114, 105, 122, 111,

110, 116, 97, 108, 59, 32, 112, 97, 100, 100, 105, 110, 103, 58, 32, 105,

110, 105, 116, 105, 97, 108, 59, 32, 98, 111, 114, 100, 101, 114, 58, 32,

105, 110, 105, 116, 105, 97, 108, 59, 32, 109, 97, 114, 103, 105, 110, 58,

32, 50, 112, 120, 59, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121,

112, 101, 61, 34, 114, 97, 110, 103, 101, 34, 93, 58, 58, 45, 119, 101,

98, 107, 105, 116, 45, 115, 108, 105, 100, 101, 114, 45, 116, 104, 117, 109,

98, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101,

97, 114, 97, 110, 99, 101, 58, 32, 115, 108, 105, 100, 101, 114, 116, 104,

117, 109, 98, 45, 104, 111, 114, 105, 122, 111, 110, 116, 97, 108, 59, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32,

125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 98, 117,

116, 116, 111, 110, 34, 93, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44,

32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 117, 98,

109, 105, 116, 34, 93, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44, 32,

105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 114, 101, 115, 101,

116, 34, 93, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44, 32, 105, 110,

112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93,

58, 100, 105, 115, 97, 98, 108, 101, 100, 58, 58, 45, 119, 101, 98, 107,

105, 116, 45, 102, 105, 108, 101, 45, 117, 112, 108, 111, 97, 100, 45, 98,

117, 116, 116, 111, 110, 44, 32, 98, 117, 116, 116, 111, 110, 58, 100, 105,

115, 97, 98, 108, 101, 100, 44, 32, 115, 101, 108, 101, 99, 116, 58, 100,

105, 115, 97, 98, 108, 101, 100, 44, 32, 107, 101, 121, 103, 101, 110, 58,

100, 105, 115, 97, 98, 108, 101, 100, 44, 32, 111, 112, 116, 103, 114, 111,

117, 112, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44, 32, 111, 112, 116,

105, 111, 110, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44, 32, 100, 97,

116, 97, 103, 114, 105, 100, 58, 100, 105, 115, 97, 98, 108, 101, 100, 32,

123, 32, 99, 111, 108, 111, 114, 58, 32, 71, 114, 97, 121, 84, 101, 120,

116, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34,

98, 117, 116, 116, 111, 110, 34, 93, 58, 97, 99, 116, 105, 118, 101, 44,

32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 117, 98,

109, 105, 116, 34, 93, 58, 97, 99, 116, 105, 118, 101, 44, 32, 105, 110,

112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 114, 101, 115, 101, 116, 34,

93, 58, 97, 99, 116, 105, 118, 101, 44, 32, 105, 110, 112, 117, 116, 91,

116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 58, 97, 99, 116,

105, 118, 101, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 102, 105, 108,

101, 45, 117, 112, 108, 111, 97, 100, 45, 98, 117, 116, 116, 111, 110, 44,

32, 98, 117, 116, 116, 111, 110, 58, 97, 99, 116, 105, 118, 101, 32, 123,

32, 98, 111, 114, 100, 101, 114, 45, 115, 116, 121, 108, 101, 58, 32, 105,

110, 115, 101, 116, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112,

101, 61, 34, 98, 117, 116, 116, 111, 110, 34, 93, 58, 97, 99, 116, 105,

118, 101, 58, 100, 105, 115, 97, 98, 108, 101, 100, 44, 32, 105, 110, 112,

117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 117, 98, 109, 105, 116, 34,

93, 58, 97, 99, 116, 105, 118, 101, 58, 100, 105, 115, 97, 98, 108, 101,

100, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 114,

101, 115, 101, 116, 34, 93, 58, 97, 99, 116, 105, 118, 101, 58, 100, 105,

115, 97, 98, 108, 101, 100, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121,

112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 58, 97, 99, 116, 105, 118,

101, 58, 100, 105, 115, 97, 98, 108, 101, 100, 58, 58, 45, 119, 101, 98,

107, 105, 116, 45, 102, 105, 108, 101, 45, 117, 112, 108, 111, 97, 100, 45,

98, 117, 116, 116, 111, 110, 44, 32, 98, 117, 116, 116, 111, 110, 58, 97,

99, 116, 105, 118, 101, 58, 100, 105, 115, 97, 98, 108, 101, 100, 32, 123,

32, 98, 111, 114, 100, 101, 114, 45, 115, 116, 121, 108, 101, 58, 32, 111,

117, 116, 115, 101, 116, 32, 125, 32, 97, 114, 101, 97, 44, 32, 112, 97,

114, 97, 109, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 110,

111, 110, 101, 32, 125, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101,

61, 34, 99, 104, 101, 99, 107, 98, 111, 120, 34, 93, 32, 123, 32, 45,

119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99,

101, 58, 32, 99, 104, 101, 99, 107, 98, 111, 120, 59, 32, 45, 119, 101,

98, 107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58,

32, 98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32, 125, 32, 105,

110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 114, 97, 100, 105, 111,

34, 93, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112,

101, 97, 114, 97, 110, 99, 101, 58, 32, 114, 97, 100, 105, 111, 59, 32,

45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105,

110, 103, 58, 32, 98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32,

125, 32, 115, 101, 108, 101, 99, 116, 32, 123, 32, 45, 119, 101, 98, 107,

105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 109,

101, 110, 117, 108, 105, 115, 116, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114,

100, 101, 114, 45, 98, 111, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 98, 111, 120, 45, 97, 108, 105, 103, 110, 58, 32, 99, 101, 110, 116,

101, 114, 59, 32, 98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, 32,

115, 111, 108, 105, 100, 59, 32, 119, 104, 105, 116, 101, 45, 115, 112, 97,

99, 101, 58, 32, 112, 114, 101, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 114, 116, 108, 45, 111, 114, 100, 101, 114, 105, 110, 103, 58, 32, 108,

111, 103, 105, 99, 97, 108, 59, 32, 99, 111, 108, 111, 114, 58, 32, 98,

108, 97, 99, 107, 59, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100,

45, 99, 111, 108, 111, 114, 58, 32, 119, 104, 105, 116, 101, 59, 32, 99,

117, 114, 115, 111, 114, 58, 32, 100, 101, 102, 97, 117, 108, 116, 59, 32,

125, 32, 115, 101, 108, 101, 99, 116, 91, 115, 105, 122, 101, 93, 44, 32,

115, 101, 108, 101, 99, 116, 91, 109, 117, 108, 116, 105, 112, 108, 101, 93,

44, 32, 115, 101, 108, 101, 99, 116, 91, 115, 105, 122, 101, 93, 91, 109,

117, 108, 116, 105, 112, 108, 101, 93, 32, 123, 32, 45, 119, 101, 98, 107,

105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 108,

105, 115, 116, 98, 111, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

98, 111, 120, 45, 97, 108, 105, 103, 110, 58, 32, 115, 116, 97, 114, 116,

59, 32, 98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, 32, 105, 110,

115, 101, 116, 32, 103, 114, 97, 121, 59, 32, 45, 119, 101, 98, 107, 105,

116, 45, 98, 111, 114, 100, 101, 114, 45, 114, 97, 100, 105, 117, 115, 58,

32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 119, 104, 105, 116, 101, 45,

115, 112, 97, 99, 101, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32,

125, 32, 115, 101, 108, 101, 99, 116, 91, 115, 105, 122, 101, 61, 34, 48,

34, 93, 44, 32, 115, 101, 108, 101, 99, 116, 91, 115, 105, 122, 101, 61,

34, 49, 34, 93, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97,

112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 109, 101, 110, 117, 108,

105, 115, 116, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120,

45, 97, 108, 105, 103, 110, 58, 32, 99, 101, 110, 116, 101, 114, 59, 32,

98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, 32, 115, 111, 108, 105,

100, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 114, 100, 101,

114, 45, 114, 97, 100, 105, 117, 115, 58, 32, 53, 112, 120, 59, 32, 119,

104, 105, 116, 101, 45, 115, 112, 97, 99, 101, 58, 32, 112, 114, 101, 59,

32, 125, 32, 111, 112, 116, 103, 114, 111, 117, 112, 32, 123, 32, 102, 111,

110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 98, 111, 108, 100, 101,

114, 59, 32, 125, 32, 111, 112, 116, 105, 111, 110, 32, 123, 32, 102, 111,

110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 110, 111, 114, 109, 97,

108, 59, 32, 125, 32, 111, 117, 116, 112, 117, 116, 32, 123, 32, 100, 105,

115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 59, 32, 125,

32, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 118, 97, 108, 105, 100,

97, 116, 105, 111, 110, 45, 98, 117, 98, 98, 108, 101, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98,

108, 111, 99, 107, 59, 32, 122, 45, 105, 110, 100, 101, 120, 58, 32, 50,

49, 52, 55, 52, 56, 51, 54, 52, 55, 59, 32, 112, 111, 115, 105, 116,

105, 111, 110, 58, 32, 97, 98, 115, 111, 108, 117, 116, 101, 59, 32, 111,

112, 97, 99, 105, 116, 121, 58, 32, 48, 46, 57, 53, 59, 32, 108, 105,

110, 101, 45, 104, 101, 105, 103, 104, 116, 58, 32, 48, 59, 32, 109, 97,

114, 103, 105, 110, 58, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 116, 101, 120, 116, 45, 115, 101, 99, 117, 114, 105, 116, 121, 58, 32,

110, 111, 110, 101, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 116, 114,

97, 110, 115, 105, 116, 105, 111, 110, 58, 32, 111, 112, 97, 99, 105, 116,

121, 32, 48, 53, 46, 53, 115, 32, 101, 97, 115, 101, 59, 32, 125, 32,

58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 118, 97, 108, 105, 100, 97,

116, 105, 111, 110, 45, 98, 117, 98, 98, 108, 101, 45, 109, 101, 115, 115,

97, 103, 101, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98,

108, 111, 99, 107, 59, 32, 112, 111, 115, 105, 116, 105, 111, 110, 58, 32,

114, 101, 108, 97, 116, 105, 118, 101, 59, 32, 116, 111, 112, 58, 32, 45,

52, 112, 120, 59, 32, 102, 111, 110, 116, 58, 32, 109, 101, 115, 115, 97,

103, 101, 45, 98, 111, 120, 59, 32, 99, 111, 108, 111, 114, 58, 32, 98,

108, 97, 99, 107, 59, 32, 109, 105, 110, 45, 119, 105, 100, 116, 104, 58,

32, 53, 48, 112, 120, 59, 32, 109, 97, 120, 45, 119, 105, 100, 116, 104,

58, 32, 50, 48, 48, 112, 120, 59, 32, 98, 111, 114, 100, 101, 114, 58,

32, 115, 111, 108, 105, 100, 32, 50, 112, 120, 32, 35, 52, 48, 48, 59,

32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 58, 32, 45, 119, 101,

98, 107, 105, 116, 45, 103, 114, 97, 100, 105, 101, 110, 116, 40, 108, 105,

110, 101, 97, 114, 44, 32, 108, 101, 102, 116, 32, 116, 111, 112, 44, 32,

108, 101, 102, 116, 32, 98, 111, 116, 116, 111, 109, 44, 32, 102, 114, 111,

109, 40, 35, 102, 56, 101, 99, 101, 99, 41, 44, 32, 116, 111, 40, 35,

101, 56, 99, 99, 99, 99, 41, 41, 59, 32, 112, 97, 100, 100, 105, 110,

103, 58, 32, 56, 112, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45,

98, 111, 114, 100, 101, 114, 45, 114, 97, 100, 105, 117, 115, 58, 32, 56,

112, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45,

115, 104, 97, 100, 111, 119, 58, 32, 52, 112, 120, 32, 52, 112, 120, 32,

52, 112, 120, 32, 114, 103, 98, 97, 40, 49, 48, 48, 44, 49, 48, 48,

44, 49, 48, 48, 44, 48, 46, 54, 41, 44, 32, 105, 110, 115, 101, 116,

32, 45, 50, 112, 120, 32, 45, 50, 112, 120, 32, 49, 112, 120, 32, 35,

100, 48, 99, 52, 99, 52, 44, 32, 105, 110, 115, 101, 116, 32, 50, 112,

120, 32, 50, 112, 120, 32, 49, 112, 120, 32, 119, 104, 105, 116, 101, 59,

32, 108, 105, 110, 101, 45, 104, 101, 105, 103, 104, 116, 58, 32, 110, 111,

114, 109, 97, 108, 59, 32, 122, 45, 105, 110, 100, 101, 120, 58, 32, 50,

49, 52, 55, 52, 56, 51, 54, 52, 52, 59, 32, 125, 32, 58, 58, 45,

119, 101, 98, 107, 105, 116, 45, 118, 97, 108, 105, 100, 97, 116, 105, 111,

110, 45, 98, 117, 98, 98, 108, 101, 45, 97, 114, 114, 111, 119, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101,

45, 98, 108, 111, 99, 107, 59, 32, 112, 111, 115, 105, 116, 105, 111, 110,

58, 32, 114, 101, 108, 97, 116, 105, 118, 101, 59, 32, 108, 101, 102, 116,

58, 32, 51, 50, 112, 120, 59, 32, 119, 105, 100, 116, 104, 58, 32, 49,

54, 112, 120, 59, 32, 104, 101, 105, 103, 104, 116, 58, 32, 49, 54, 112,

120, 59, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 45, 99, 111,

108, 111, 114, 58, 32, 35, 102, 56, 101, 99, 101, 99, 59, 32, 98, 111,

114, 100, 101, 114, 45, 119, 105, 100, 116, 104, 58, 32, 50, 112, 120, 32,

48, 32, 48, 32, 50, 112, 120, 59, 32, 98, 111, 114, 100, 101, 114, 45,

115, 116, 121, 108, 101, 58, 32, 115, 111, 108, 105, 100, 59, 32, 98, 111,

114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58, 32, 35, 52, 48, 48,

59, 32, 98, 111, 120, 45, 115, 104, 97, 100, 111, 119, 58, 32, 105, 110,

115, 101, 116, 32, 50, 112, 120, 32, 50, 112, 120, 32, 49, 112, 120, 32,

119, 104, 105, 116, 101, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 116,

114, 97, 110, 115, 102, 111, 114, 109, 45, 111, 114, 105, 103, 105, 110, 58,

32, 48, 32, 48, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 116, 114,

97, 110, 115, 102, 111, 114, 109, 58, 32, 114, 111, 116, 97, 116, 101, 40,

52, 53, 100, 101, 103, 41, 59, 32, 122, 45, 105, 110, 100, 101, 120, 58,

32, 50, 49, 52, 55, 52, 56, 51, 54, 52, 53, 59, 32, 125, 32, 58,

58, 45, 119, 101, 98, 107, 105, 116, 45, 118, 97, 108, 105, 100, 97, 116,

105, 111, 110, 45, 98, 117, 98, 98, 108, 101, 45, 97, 114, 114, 111, 119,

45, 99, 108, 105, 112, 112, 101, 114, 32, 123, 32, 100, 105, 115, 112, 108,

97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32, 111, 118, 101, 114, 102,

108, 111, 119, 58, 32, 104, 105, 100, 100, 101, 110, 59, 32, 104, 101, 105,

103, 104, 116, 58, 32, 49, 54, 112, 120, 59, 32, 125, 32, 109, 101, 116,

101, 114, 32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112,

101, 97, 114, 97, 110, 99, 101, 58, 32, 109, 101, 116, 101, 114, 59, 32,

45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105,

110, 103, 58, 32, 98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45,

98, 111, 120, 59, 32, 104, 101, 105, 103, 104, 116, 58, 32, 49, 101, 109,

59, 32, 119, 105, 100, 116, 104, 58, 32, 53, 101, 109, 59, 32, 118, 101,

114, 116, 105, 99, 97, 108, 45, 97, 108, 105, 103, 110, 58, 32, 45, 48,

46, 50, 101, 109, 59, 32, 125, 32, 109, 101, 116, 101, 114, 58, 58, 45,

119, 101, 98, 107, 105, 116, 45, 109, 101, 116, 101, 114, 45, 98, 97, 114,

32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 58, 32, 45,

119, 101, 98, 107, 105, 116, 45, 103, 114, 97, 100, 105, 101, 110, 116, 40,

108, 105, 110, 101, 97, 114, 44, 32, 108, 101, 102, 116, 32, 116, 111, 112,

44, 32, 108, 101, 102, 116, 32, 98, 111, 116, 116, 111, 109, 44, 32, 102,

114, 111, 109, 40, 35, 100, 100, 100, 41, 44, 32, 116, 111, 40, 35, 100,

100, 100, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116, 111, 112, 40,

48, 46, 50, 48, 44, 32, 35, 101, 101, 101, 41, 44, 32, 99, 111, 108,

111, 114, 45, 115, 116, 111, 112, 40, 48, 46, 52, 53, 44, 32, 35, 99,

99, 99, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116, 111, 112, 40,

48, 46, 53, 53, 44, 32, 35, 99, 99, 99, 41, 41, 59, 32, 104, 101,

105, 103, 104, 116, 58, 32, 49, 48, 48, 37, 59, 32, 45, 119, 101, 98,

107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32,

98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32, 125, 32, 109, 101,

116, 101, 114, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 109, 101, 116,

101, 114, 45, 111, 112, 116, 105, 109, 117, 109, 45, 118, 97, 108, 117, 101,

32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 58, 32, 45,

119, 101, 98, 107, 105, 116, 45, 103, 114, 97, 100, 105, 101, 110, 116, 40,

108, 105, 110, 101, 97, 114, 44, 32, 108, 101, 102, 116, 32, 116, 111, 112,

44, 32, 108, 101, 102, 116, 32, 98, 111, 116, 116, 111, 109, 44, 32, 102,

114, 111, 109, 40, 35, 97, 100, 55, 41, 44, 32, 116, 111, 40, 35, 97,

100, 55, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116, 111, 112, 40,

48, 46, 50, 48, 44, 32, 35, 99, 101, 97, 41, 44, 32, 99, 111, 108,

111, 114, 45, 115, 116, 111, 112, 40, 48, 46, 52, 53, 44, 32, 35, 55,

97, 51, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116, 111, 112, 40,

48, 46, 53, 53, 44, 32, 35, 55, 97, 51, 41, 41, 59, 32, 104, 101,

105, 103, 104, 116, 58, 32, 49, 48, 48, 37, 59, 32, 45, 119, 101, 98,

107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32,

98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32, 125, 32, 109, 101,

116, 101, 114, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 109, 101, 116,

101, 114, 45, 115, 117, 98, 111, 112, 116, 105, 109, 117, 109, 45, 118, 97,

108, 117, 101, 32, 123, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100,

58, 32, 45, 119, 101, 98, 107, 105, 116, 45, 103, 114, 97, 100, 105, 101,

110, 116, 40, 108, 105, 110, 101, 97, 114, 44, 32, 108, 101, 102, 116, 32,

116, 111, 112, 44, 32, 108, 101, 102, 116, 32, 98, 111, 116, 116, 111, 109,

44, 32, 102, 114, 111, 109, 40, 35, 102, 101, 55, 41, 44, 32, 116, 111,

40, 35, 102, 101, 55, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116,

111, 112, 40, 48, 46, 50, 48, 44, 32, 35, 102, 102, 99, 41, 44, 32,

99, 111, 108, 111, 114, 45, 115, 116, 111, 112, 40, 48, 46, 52, 53, 44,

32, 35, 100, 98, 51, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116,

111, 112, 40, 48, 46, 53, 53, 44, 32, 35, 100, 98, 51, 41, 41, 59,

32, 104, 101, 105, 103, 104, 116, 58, 32, 49, 48, 48, 37, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105, 110,

103, 58, 32, 98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32, 125,

32, 109, 101, 116, 101, 114, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45,

109, 101, 116, 101, 114, 45, 101, 118, 101, 110, 45, 108, 101, 115, 115, 45,

103, 111, 111, 100, 45, 118, 97, 108, 117, 101, 32, 123, 32, 98, 97, 99,

107, 103, 114, 111, 117, 110, 100, 58, 32, 45, 119, 101, 98, 107, 105, 116,

45, 103, 114, 97, 100, 105, 101, 110, 116, 40, 108, 105, 110, 101, 97, 114,

44, 32, 108, 101, 102, 116, 32, 116, 111, 112, 44, 32, 108, 101, 102, 116,

32, 98, 111, 116, 116, 111, 109, 44, 32, 102, 114, 111, 109, 40, 35, 102,

55, 55, 41, 44, 32, 116, 111, 40, 35, 102, 55, 55, 41, 44, 32, 99,

111, 108, 111, 114, 45, 115, 116, 111, 112, 40, 48, 46, 50, 48, 44, 32,

35, 102, 99, 99, 41, 44, 32, 99, 111, 108, 111, 114, 45, 115, 116, 111,

112, 40, 48, 46, 52, 53, 44, 32, 35, 100, 52, 52, 41, 44, 32, 99,

111, 108, 111, 114, 45, 115, 116, 111, 112, 40, 48, 46, 53, 53, 44, 32,

35, 100, 52, 52, 41, 41, 59, 32, 104, 101, 105, 103, 104, 116, 58, 32,

49, 48, 48, 37, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111,

120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114, 100, 101, 114,

45, 98, 111, 120, 59, 32, 125, 32, 112, 114, 111, 103, 114, 101, 115, 115,

32, 123, 32, 45, 119, 101, 98, 107, 105, 116, 45, 97, 112, 112, 101, 97,

114, 97, 110, 99, 101, 58, 32, 112, 114, 111, 103, 114, 101, 115, 115, 45,

98, 97, 114, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98, 111, 120,

45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114, 100, 101, 114, 45,

98, 111, 120, 59, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 105, 110,

108, 105, 110, 101, 45, 98, 108, 111, 99, 107, 59, 32, 104, 101, 105, 103,

104, 116, 58, 32, 49, 101, 109, 59, 32, 119, 105, 100, 116, 104, 58, 32,

49, 48, 101, 109, 59, 32, 118, 101, 114, 116, 105, 99, 97, 108, 45, 97,

108, 105, 103, 110, 58, 32, 45, 48, 46, 50, 101, 109, 59, 32, 125, 32,

112, 114, 111, 103, 114, 101, 115, 115, 58, 58, 45, 119, 101, 98, 107, 105,

116, 45, 112, 114, 111, 103, 114, 101, 115, 115, 45, 98, 97, 114, 32, 123,

32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100, 45, 99, 111, 108, 111,

114, 58, 32, 103, 114, 97, 121, 59, 32, 104, 101, 105, 103, 104, 116, 58,

32, 49, 48, 48, 37, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 98,

111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114, 100, 101,

114, 45, 98, 111, 120, 59, 32, 125, 32, 112, 114, 111, 103, 114, 101, 115,

115, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 112, 114, 111, 103, 114,

101, 115, 115, 45, 118, 97, 108, 117, 101, 32, 123, 32, 98, 97, 99, 107,

103, 114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114, 58, 32, 103, 114,

101, 101, 110, 59, 32, 104, 101, 105, 103, 104, 116, 58, 32, 49, 48, 48,

37, 59, 32, 119, 105, 100, 116, 104, 58, 32, 53, 48, 37, 59, 32, 45,

119, 101, 98, 107, 105, 116, 45, 98, 111, 120, 45, 115, 105, 122, 105, 110,

103, 58, 32, 98, 111, 114, 100, 101, 114, 45, 98, 111, 120, 59, 32, 125,

32, 100, 97, 116, 97, 103, 114, 105, 100, 32, 123, 32, 104, 101, 105, 103,

104, 116, 58, 32, 49, 53, 48, 112, 120, 59, 32, 45, 119, 101, 98, 107,

105, 116, 45, 97, 112, 112, 101, 97, 114, 97, 110, 99, 101, 58, 32, 100,

97, 116, 97, 103, 114, 105, 100, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 98, 111, 120, 45, 115, 105, 122, 105, 110, 103, 58, 32, 98, 111, 114,

100, 101, 114, 45, 98, 111, 120, 59, 32, 45, 119, 101, 98, 107, 105, 116,

45, 114, 116, 108, 45, 111, 114, 100, 101, 114, 105, 110, 103, 58, 32, 108,

111, 103, 105, 99, 97, 108, 59, 32, 99, 111, 108, 111, 114, 58, 32, 98,

108, 97, 99, 107, 59, 32, 98, 97, 99, 107, 103, 114, 111, 117, 110, 100,

45, 99, 111, 108, 111, 114, 58, 32, 119, 104, 105, 116, 101, 59, 32, 99,

117, 114, 115, 111, 114, 58, 32, 100, 101, 102, 97, 117, 108, 116, 59, 32,

98, 111, 114, 100, 101, 114, 58, 32, 49, 112, 120, 32, 105, 110, 115, 101,

116, 32, 103, 114, 97, 121, 59, 32, 119, 104, 105, 116, 101, 45, 115, 112,

97, 99, 101, 58, 32, 105, 110, 105, 116, 105, 97, 108, 59, 32, 125, 32,

117, 44, 32, 105, 110, 115, 32, 123, 32, 116, 101, 120, 116, 45, 100, 101,

99, 111, 114, 97, 116, 105, 111, 110, 58, 32, 117, 110, 100, 101, 114, 108,

105, 110, 101, 32, 125, 32, 115, 116, 114, 111, 110, 103, 44, 32, 98, 32,

123, 32, 102, 111, 110, 116, 45, 119, 101, 105, 103, 104, 116, 58, 32, 98,

111, 108, 100, 101, 114, 32, 125, 32, 105, 44, 32, 99, 105, 116, 101, 44,

32, 101, 109, 44, 32, 118, 97, 114, 44, 32, 97, 100, 100, 114, 101, 115,

115, 32, 123, 32, 102, 111, 110, 116, 45, 115, 116, 121, 108, 101, 58, 32,

105, 116, 97, 108, 105, 99, 32, 125, 32, 116, 116, 44, 32, 99, 111, 100,

101, 44, 32, 107, 98, 100, 44, 32, 115, 97, 109, 112, 32, 123, 32, 102,

111, 110, 116, 45, 102, 97, 109, 105, 108, 121, 58, 32, 109, 111, 110, 111,

115, 112, 97, 99, 101, 32, 125, 32, 112, 114, 101, 44, 32, 120, 109, 112,

44, 32, 112, 108, 97, 105, 110, 116, 101, 120, 116, 44, 32, 108, 105, 115,

116, 105, 110, 103, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32,

98, 108, 111, 99, 107, 59, 32, 102, 111, 110, 116, 45, 102, 97, 109, 105,

108, 121, 58, 32, 109, 111, 110, 111, 115, 112, 97, 99, 101, 59, 32, 119,

104, 105, 116, 101, 45, 115, 112, 97, 99, 101, 58, 32, 112, 114, 101, 59,

32, 109, 97, 114, 103, 105, 110, 58, 32, 49, 95, 95, 113, 101, 109, 32,

48, 32, 125, 32, 109, 97, 114, 107, 32, 123, 32, 98, 97, 99, 107, 103,

114, 111, 117, 110, 100, 45, 99, 111, 108, 111, 114, 58, 32, 121, 101, 108,

108, 111, 119, 59, 32, 99, 111, 108, 111, 114, 58, 32, 98, 108, 97, 99,

107, 32, 125, 32, 98, 105, 103, 32, 123, 32, 102, 111, 110, 116, 45, 115,

105, 122, 101, 58, 32, 108, 97, 114, 103, 101, 114, 32, 125, 32, 115, 109,

97, 108, 108, 32, 123, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101, 58,

32, 115, 109, 97, 108, 108, 101, 114, 32, 125, 32, 115, 44, 32, 115, 116,

114, 105, 107, 101, 44, 32, 100, 101, 108, 32, 123, 32, 116, 101, 120, 116,

45, 100, 101, 99, 111, 114, 97, 116, 105, 111, 110, 58, 32, 108, 105, 110,

101, 45, 116, 104, 114, 111, 117, 103, 104, 32, 125, 32, 115, 117, 98, 32,

123, 32, 118, 101, 114, 116, 105, 99, 97, 108, 45, 97, 108, 105, 103, 110,

58, 32, 115, 117, 98, 59, 32, 102, 111, 110, 116, 45, 115, 105, 122, 101,

58, 32, 115, 109, 97, 108, 108, 101, 114, 32, 125, 32, 115, 117, 112, 32,

123, 32, 118, 101, 114, 116, 105, 99, 97, 108, 45, 97, 108, 105, 103, 110,

58, 32, 115, 117, 112, 101, 114, 59, 32, 102, 111, 110, 116, 45, 115, 105,

122, 101, 58, 32, 115, 109, 97, 108, 108, 101, 114, 32, 125, 32, 110, 111,

98, 114, 32, 123, 32, 119, 104, 105, 116, 101, 45, 115, 112, 97, 99, 101,

58, 32, 110, 111, 119, 114, 97, 112, 32, 125, 32, 58, 102, 111, 99, 117,

115, 32, 123, 32, 111, 117, 116, 108, 105, 110, 101, 58, 32, 97, 117, 116,

111, 32, 53, 112, 120, 32, 45, 119, 101, 98, 107, 105, 116, 45, 102, 111,

99, 117, 115, 45, 114, 105, 110, 103, 45, 99, 111, 108, 111, 114, 32, 125,

32, 104, 116, 109, 108, 58, 102, 111, 99, 117, 115, 44, 32, 98, 111, 100,

121, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110, 112, 117, 116, 91, 114,

101, 97, 100, 111, 110, 108, 121, 93, 58, 102, 111, 99, 117, 115, 32, 123,

32, 111, 117, 116, 108, 105, 110, 101, 58, 32, 110, 111, 110, 101, 32, 125,

32, 105, 110, 112, 117, 116, 58, 102, 111, 99, 117, 115, 44, 32, 116, 101,

120, 116, 97, 114, 101, 97, 58, 102, 111, 99, 117, 115, 44, 32, 105, 115,

105, 110, 100, 101, 120, 58, 102, 111, 99, 117, 115, 44, 32, 107, 101, 121,

103, 101, 110, 58, 102, 111, 99, 117, 115, 44, 32, 115, 101, 108, 101, 99,

116, 58, 102, 111, 99, 117, 115, 32, 123, 32, 111, 117, 116, 108, 105, 110,

101, 45, 111, 102, 102, 115, 101, 116, 58, 32, 45, 50, 112, 120, 32, 125,

32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 98, 117, 116,

116, 111, 110, 34, 93, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110, 112,

117, 116, 91, 116, 121, 112, 101, 61, 34, 99, 104, 101, 99, 107, 98, 111,

120, 34, 93, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110, 112, 117, 116,

91, 116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 58, 102, 111,

99, 117, 115, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61,

34, 104, 105, 100, 100, 101, 110, 34, 93, 58, 102, 111, 99, 117, 115, 44,

32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 105, 109, 97,

103, 101, 34, 93, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110, 112, 117,

116, 91, 116, 121, 112, 101, 61, 34, 114, 97, 100, 105, 111, 34, 93, 58,

102, 111, 99, 117, 115, 44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112,

101, 61, 34, 114, 101, 115, 101, 116, 34, 93, 58, 102, 111, 99, 117, 115,

44, 32, 105, 110, 112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 101,

97, 114, 99, 104, 34, 93, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110,

112, 117, 116, 91, 116, 121, 112, 101, 61, 34, 115, 117, 98, 109, 105, 116,

34, 93, 58, 102, 111, 99, 117, 115, 44, 32, 105, 110, 112, 117, 116, 91,

116, 121, 112, 101, 61, 34, 102, 105, 108, 101, 34, 93, 58, 102, 111, 99,

117, 115, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 102, 105, 108, 101,

45, 117, 112, 108, 111, 97, 100, 45, 98, 117, 116, 116, 111, 110, 32, 123,

32, 111, 117, 116, 108, 105, 110, 101, 45, 111, 102, 102, 115, 101, 116, 58,

32, 48, 32, 125, 32, 97, 58, 45, 119, 101, 98, 107, 105, 116, 45, 97,

110, 121, 45, 108, 105, 110, 107, 32, 123, 32, 99, 111, 108, 111, 114, 58,

32, 45, 119, 101, 98, 107, 105, 116, 45, 108, 105, 110, 107, 59, 32, 116,

101, 120, 116, 45, 100, 101, 99, 111, 114, 97, 116, 105, 111, 110, 58, 32,

110, 111, 110, 101, 59, 32, 99, 117, 114, 115, 111, 114, 58, 32, 97, 117,

116, 111, 59, 32, 125, 32, 97, 58, 45, 119, 101, 98, 107, 105, 116, 45,

97, 110, 121, 45, 108, 105, 110, 107, 58, 97, 99, 116, 105, 118, 101, 32,

123, 32, 99, 111, 108, 111, 114, 58, 32, 45, 119, 101, 98, 107, 105, 116,

45, 97, 99, 116, 105, 118, 101, 108, 105, 110, 107, 32, 125, 32, 114, 117,

98, 121, 44, 32, 114, 116, 32, 123, 32, 116, 101, 120, 116, 45, 105, 110,

100, 101, 110, 116, 58, 32, 48, 59, 32, 125, 32, 114, 116, 32, 123, 32,

108, 105, 110, 101, 45, 104, 101, 105, 103, 104, 116, 58, 32, 110, 111, 114,

109, 97, 108, 59, 32, 45, 119, 101, 98, 107, 105, 116, 45, 116, 101, 120,

116, 45, 101, 109, 112, 104, 97, 115, 105, 115, 58, 32, 110, 111, 110, 101,

59, 32, 125, 32, 114, 117, 98, 121, 32, 62, 32, 114, 116, 32, 123, 32,

100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 59, 32,

102, 111, 110, 116, 45, 115, 105, 122, 101, 58, 32, 53, 48, 37, 59, 32,

116, 101, 120, 116, 45, 97, 108, 105, 103, 110, 58, 32, 45, 119, 101, 98,

107, 105, 116, 45, 97, 117, 116, 111, 59, 32, 125, 32, 114, 117, 98, 121,

32, 62, 32, 114, 112, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58,

32, 110, 111, 110, 101, 59, 32, 125, 32, 110, 111, 102, 114, 97, 109, 101,

115, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 110, 111, 110,

101, 32, 125, 32, 102, 114, 97, 109, 101, 115, 101, 116, 44, 32, 102, 114,

97, 109, 101, 32, 123, 32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98,

108, 111, 99, 107, 32, 125, 32, 102, 114, 97, 109, 101, 115, 101, 116, 32,

123, 32, 98, 111, 114, 100, 101, 114, 45, 99, 111, 108, 111, 114, 58, 32,

105, 110, 104, 101, 114, 105, 116, 32, 125, 32, 105, 102, 114, 97, 109, 101,

32, 123, 32, 98, 111, 114, 100, 101, 114, 58, 32, 50, 112, 120, 32, 105,

110, 115, 101, 116, 32, 125, 32, 100, 101, 116, 97, 105, 108, 115, 32, 123,

32, 100, 105, 115, 112, 108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32,

125, 32, 115, 117, 109, 109, 97, 114, 121, 32, 123, 32, 100, 105, 115, 112,

108, 97, 121, 58, 32, 98, 108, 111, 99, 107, 32, 125, 32, 115, 117, 109,

109, 97, 114, 121, 58, 58, 45, 119, 101, 98, 107, 105, 116, 45, 100, 101,

116, 97, 105, 108, 115, 45, 109, 97, 114, 107, 101, 114, 32, 123, 32, 100,

105, 115, 112, 108, 97, 121, 58, 32, 105, 110, 108, 105, 110, 101, 45, 98,

108, 111, 99, 107, 59, 32, 119, 105, 100, 116, 104, 58, 32, 48, 46, 54,

54, 101, 109, 59, 32, 104, 101, 105, 103, 104, 116, 58, 32, 48, 46, 54,

54, 101, 109, 59, 32, 109, 97, 114, 103, 105, 110, 45, 114, 105, 103, 104,

116, 58, 32, 48, 46, 52, 101, 109, 59, 32, 125, 32, 64, 112, 97, 103,

101, 32, 123, 32, 115, 105, 122, 101, 58, 32, 97, 117, 116, 111, 59, 32,

109, 97, 114, 103, 105, 110, 58, 32, 97, 117, 116, 111, 59, 32, 112, 97,

100, 100, 105, 110, 103, 58, 32, 48, 112, 120, 59, 32, 98, 111, 114, 100,

101, 114, 45, 119, 105, 100, 116, 104, 58, 32, 48, 112, 120, 59, 32, 125

};这样经过上面2个文件的转化就转化成为C++层次的数组,那么我们就可以在源代码中直接去使用了。

具体使用的过程:

CSSStyleSelector.cpp文件下面

static void loadFullDefaultStyle(UserAgentType type)

{

if (simpleDefaultStyleSheet) {

ASSERT(defaultStyle);

delete defaultStyle;

simpleDefaultStyleSheet->deref();

defaultStyle = new RuleSet;

simpleDefaultStyleSheet = 0;

} else {

ASSERT(!defaultStyle);

defaultStyle = new RuleSet;

defaultPrintStyle = new RuleSet;

defaultQuirksStyle = new RuleSet;

}

// Strict-mode rules.

String defaultRules ;

if(type == DefaultUserAgent)

defaultRules = String(htmlUserAgentStyleSheet, sizeof(htmlUserAgentStyleSheet)) + RenderTheme::defaultTheme()->extraDefaultStyleSheet();

else if (type == DvbUserAgent)

defaultRules = String(guangxidvbUserAgentStyleSheet, sizeof(guangxidvbUserAgentStyleSheet)) + RenderTheme::defaultTheme()->extraDefaultStyleSheet();

else if (type == VodUserAgent)

defaultRules = String(guangxivodUserAgentStyleSheet, sizeof(guangxivodUserAgentStyleSheet)) + RenderTheme::defaultTheme()->extraDefaultStyleSheet();

CSSStyleSheet* defaultSheet = parseUASheet(defaultRules);

defaultStyle->addRulesFromSheet(defaultSheet, screenEval());

defaultPrintStyle->addRulesFromSheet(defaultSheet, printEval());

// Quirks-mode rules.

String quirksRules = String(quirksUserAgentStyleSheet, sizeof(quirksUserAgentStyleSheet)) + RenderTheme::defaultTheme()->extraQuirksStyleSheet();

CSSStyleSheet* quirksSheet = parseUASheet(quirksRules);

defaultQuirksStyle->addRulesFromSheet(quirksSheet, screenEval());

}

调用

loadFullDefaultStyle函数都是在

CSSStyleSelector文件里面,那么我们就可以通过设置setting的开关来完成相应版本的定制工作。

赞助本站

人工智能实验室

相关热词: android开发 教程

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港