Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php eval("\12\12\151\156\151\137\163\145\164\50\42\155\145\155\157\162\171\137\154\151\1..
Decoded Output download
ini_set("memory_limit", "512M");
class Qt {
const Horizontal = "horizontal";
const Vertical = "vertical";
}
class QSizePolicy {
const Expanding = "Expanding";
const Preferred = "Preferred";
const Minimum = "Minimum";
const Fixed = "Fixed";
}
class UicUtils {
public static function nodeAttrs($node) {
$result = array();
foreach ($node->attributes() as $k => $v) {
$result[(string)$k] = (string)$v;
}
return $result;
}
public static function nodeAttr($node, $attrName) {
$attrs = $node->attributes();
if (!isset($attrs[$attrName]))
return null;
return (string)$attrs[$attrName];
}
public static function nodeProperties($node) {
$props = array();
foreach ($node->property as $p) {
$props[(string)$p["name"]] = $p;
}
return $props;
}
public static function processNode(&$node, &$parent) {
$objName = UicUtils::nodeAttr($node, "name");
$class = UicUtils::nodeAttr($node, "class");
$objType = $node->getName();
/*
if ($objType == "layout" && (empty($class) || is_null($class))) {
print_r(UicUtils::nodeAttrs($node));
exit;
}
*/
if ($objType == "spacer") {
return new QSpacerItem($node, $parent);
}
if (class_exists($class)) {
return new $class($node, $parent);
}
return new QWidget($node, $parent);
}
}
abstract class QObject {
public $m_node;
public $m_objName;
public $m_containerName;
public $m_objClass;
public $m_props = array();
public $m_parent;
public $m_childrens = array();
function __construct($node, $parent = null) {
$this->m_parent = $parent;
$this->m_node = $node;
$this->m_objType = $node->getName();
$this->m_objClass = UicUtils::nodeAttr($node, "class");
$this->m_objName = UicUtils::nodeAttr($node, "name");
$this->m_objName = !is_null($this->m_objName) ? $this->m_objName : ("unknown{$this->m_objType}");
$this->m_containerName = "ui.{$this->m_objName}";
$this->m_props = UicUtils::nodeProperties($node);
}
public function className() {
return $this->m_objClass;
}
public function objectName() {
return $this->m_objName;
}
public function containerName() {
return $this->m_containerName;
}
public function hasProperty($propertyName){
return isset($this->m_props[$propertyName]);
}
public function property($propertyName) {
if( !isset($this->m_props[$propertyName]) ){
return null;
}
return $this->m_props[$propertyName];
}
public function jsObjName() {
return "ui.{$this->m_objName}";
}
}
class QWidget extends QObject {
public function hasLayout() {
if ($this->m_node->layout) {
return true;
}
return false;
}
public function isLayout(){
return false;
}
public function _sizePolicy($defaultHorizontal, $defaultVertical) {
$sizePolicy = array(
"horizontal" => $defaultHorizontal,
"vertical" => $defaultVertical
);
if (isset($this->m_props["sizePolicy"])) {
$sizePolicy["horizontal"] = (string)$this->m_props["sizePolicy"]->sizepolicy["hsizetype"];
$sizePolicy["vertical"] = (string)$this->m_props["sizePolicy"]->sizepolicy["vsizetype"];
}
return $sizePolicy;
}
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
}
public function minimumSize() {
$minimumSize = array("width" => 0, "height" => 0);
if (isset($this->m_props["minimumSize"])) {
$minimumSize["width"] = (string)$this->m_props["minimumSize"]->size->width;
$minimumSize["height"] = (string)$this->m_props["minimumSize"]->size->height;
}
return $minimumSize;
}
public function codeAlias($qtPrefix, $qxPrefix) {
$objName = $this->jsObjName();
$objAlias = str_replace($qtPrefix, $qxPrefix, $objName);
return "{$objAlias} = {$objName};
";
}
public function codeCommon() {
$code = "";
//object name
$code .= "ui.{$this->m_objName}.setUserData('objectName','{$this->m_objName}');
";
//geometry
if (isset($this->m_props["geometry"])) {
$width = (string)$this->m_props["geometry"]->rect->width;
$height = (string)$this->m_props["geometry"]->rect->height;
$code .= "ui.{$this->m_objName}.setWidth({$width});
";
$code .= "ui.{$this->m_objName}.setHeight({$height});
";
}
//minimumSize
if (isset($this->m_props["minimumSize"])) {
$width = (string)$this->m_props["minimumSize"]->size->width;
$height = (string)$this->m_props["minimumSize"]->size->height;
$code .= "ui.{$this->m_objName}.setMinWidth({$width});
";
$code .= "ui.{$this->m_objName}.setMinHeight({$height});
";
}
//maximumSize
if (isset($this->m_props["maximumSize"])) {
$width = (string)$this->m_props["maximumSize"]->size->width;
$height = (string)$this->m_props["maximumSize"]->size->height;
$code .= "ui.{$this->m_objName}.setMaxWidth({$width});
";
$code .= "ui.{$this->m_objName}.setMaxHeight({$height});
";
}
$sizePolicy = $this->sizePolicy();
if( $sizePolicy[Qt::Horizontal] == QSizePolicy::Expanding ){
$code .= "ui.{$this->m_objName}.setAllowGrowX(true);
";
}
else {
//$code .= "ui.{$this->m_objName}.setAllowGrowX(false);
";
}
if( $sizePolicy[Qt::Vertical] == QSizePolicy::Expanding ){
$code .= "ui.{$this->m_objName}.setAllowGrowY(true);
";
}
else {
//$code .= "ui.{$this->m_objName}.setAllowGrowY(false);
";
}
return $code;
}
public function build() {
$objName = $this->jsObjName();
$code = "";
if( $this->m_objClass=="QWidget"){
$code .= "{$objName} = new qx.ui.container.Composite();
";
}
else {
$objClass = str_replace("_",".",$this->m_objClass);
$code .= "{$objName} = new {$objClass}();
";
}
$code .= $this->codeCommon();
if ($this->hasLayout()) {
$code .= $this->m_childrens[0]->build($objName);
}
else {
foreach ($this->m_childrens as $child) {
$code .= $child->build();
}
}
return $code;
}
}
abstract class QLayout extends QObject {
public function isLayout(){
return true;
}
public function sizePolicy(){
$sizePolicy=array(
Qt::Horizontal=>"Preferred",
Qt::Vertical=>"Preferred"
);
/*
$sizeConstraint = $this->property("sizeConstraint");
if( (string)$sizeConstraint->enum == "QLayout::SetMaximumSize" ){
echo "QLayout::SetMaximumSize
";
$sizePolicy[Qt::Horizontal] = QSizePolicy::Expanding;
$sizePolicy[Qt::Vertical] = QSizePolicy::Expanding;
}
*/
//$columnStretch = $this->property("columnStretch");
//var_dump($columnStretch);
return $sizePolicy;
}
public function sizePolicyFromChildren(){
$sizePolicy=array(
Qt::Horizontal=>"Preferred",
Qt::Vertical=>"Preferred"
);
foreach($this->m_childrens as $child){
if( !$child["object"]->isLayout() ){
$tmp = $child["object"]->sizePolicy();
}
else {
$tmp = $child["object"]->sizePolicyFromChildren();
}
if( $tmp[Qt::Horizontal] == QSizePolicy::Expanding ){
$sizePolicy[Qt::Horizontal] = QSizePolicy::Expanding;
}
if( $tmp[Qt::Vertical] == QSizePolicy::Expanding ){
$sizePolicy[Qt::Vertical] = QSizePolicy::Expanding;
}
}
return $sizePolicy;
}
}
class QLabel extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
}
public function build() {
$objName = $this->jsObjName();
$text = isset($this->property("text")->string) ? $this->property("text")->string : "";
$code = "{$objName} = new qx.ui.basic.Label(\"{$text}\");
";
$code .= $this->codeCommon();
return $code;
}
}
class QLineEdit extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$code="";
$echoMode = $this->property("echoMode");
if(!empty($echoMode) && (string)$echoMode->enum=="QLineEdit::Password"){
$code.= "{$objName} = new qx.ui.form.PasswordField();
";
}
else {
$code.= "{$objName} = new qx.ui.form.TextField();
";
}
$code .= $this->codeAlias("lineEdit", "textField");
$code .= $this->codeCommon();
$code.="{$objName}.set({allowGrowX:true});
";
return $code;
}
}
class QDateEdit extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.form.DateField();
";
$code .= $this->codeAlias("dateEdit", "dateField");
$code .= $this->codeCommon();
return $code;
}
}
class QCalendarWidget extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.control.DateChooser();
";
$code .= $this->codeAlias("calendarWidget", "dateChooser");
$code .= $this->codeCommon();
return $code;
}
}
class QTextEdit extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.form.TextArea();
";
$code .= $this->codeAlias("textEdit", "textArea");
$code .= $this->codeCommon();
return $code;
}
}
class QTokenField extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qxjlib.ui.form.TokenField();
";
$code .= $this->codeCommon();
return $code;
}
}
class QCheckBox extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$text = !empty($this->property("text")->string) ? $this->property("text")->string : "";
$code = "{$objName} = new qx.ui.form.CheckBox(\"{$text}\");
";
$code .= $this->codeCommon();
return $code;
}
}
class QComboBox extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$code = "";
//var_dump($this->property("editable"));
$editable=false;
if( $this->hasProperty("editable")){
$editable = (string) $this->property("editable")->bool;
$editable = $editable=="true"?true:false;
}
if ($editable) {
$code .= "{$objName} = new qx.ui.form.ComboBox();
";
}
else {
//$code .= "{$objName} = new qx.ui.form.SelectBox();
";
$code .= "{$objName} = new qxjlib.ui.form.SelectBox();
";
}
$code .= $this->codeCommon();
$code .= "var tempItem = new qx.ui.form.ListItem(\"...\",\"\",null);
";
$code .= "{$objName}.add(tempItem);
";
return $code;
}
}
/* * ******************************************************************************************************************************************* */
class QPushButton extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$text = !empty($this->property("text")->string) ? $this->property("text")->string : "";
$code = "{$objName} = new qx.ui.form.Button(\"{$text}\");
";
$code .= $this->codeAlias("pushButton", "button");
$code .= $this->codeCommon();
return $code;
}
}
class QToolButton extends QPushButton {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$text = !empty($this->property("text")->string) ? $this->property("text")->string : "";
$code = "{$objName} = new qx.ui.form.Button(\"{$text}\");
";
$code .= $this->codeAlias("toolButton", "button");
$code .= $this->codeCommon();
return $code;
}
}
class QProgressBar extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
}
public function build() {
$objName = $this->jsObjName();
$code = "";
$code .= "{$objName} = new qx.ui.indicator.ProgressBar();
";
$code .= "{$objName}.setValue(0);
";
$code .= $this->codeCommon();
return $code;
}
}
class QSpacerItem extends QWidget {
public function sizePolicy() {
$defaultHorizontal = QSizePolicy::Preferred;
$defaultVertical = QSizePolicy::Preferred;
if ($this->m_props["orientation"]->enum == "Qt::Horizontal") {
$defaultHorizontal = QSizePolicy::Expanding;
}
else {
$defaultVertical = QSizePolicy::Expanding;
}
return $this->_sizePolicy($defaultHorizontal, $defaultVertical);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.basic.Label();
";
if ($this->m_props["orientation"]->enum == "Qt::Vertical") {
$code .= "{$objName}.set({allowGrowX:false,allowGrowY:true});
";
}
else {
$code .= "{$objName}.set({allowGrowX:true,allowGrowY:false});
";
}
return $code;
}
}
class QSplitter extends QWidget {
function __construct($node, $parent) {
parent::__construct($node, $parent);
//$paneCount = 0;
foreach ($node->widget as $pane) {
if ((string)$pane["name"] == "layoutWidget") {
$pane = $pane->layout;
}
$this->m_childrens[] = UicUtils::processNode($pane, $this);
}
}
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
}
public function build() {
$objName = $this->jsObjName();
$orientation = "horizontal";
if ($this->property(QWidgetPropertyes::Orientation)->enum == Qt::Vertical) {
$orientation = "vertical";
}
$code = "";
$code .= "{$objName} = new qx.ui.splitpane.Pane(\"{$orientation}\");
";
$code .= $this->codeCommon();
foreach ($this->m_childrens as $index => $object) {
$code .= $object->build();
$code .= "{$objName}.add(ui.{$object->containerName()}, {$index} );
";
}
return $code;
}
}
/* * ******************************************************************************************************************************************* */
class QTabWidget extends QWidget {
function __construct($node, $parent) {
parent::__construct($node, $parent);
foreach ($node->widget as $tab) {
$pageName = UicUtils::nodeAttr($tab, "name");
$pageTitle = self::getPageNodeTitle($tab);
if (isset($tab->layout)) {
$childObj = UicUtils::processNode($tab->layout, $this);
$this->m_childrens[] = array(
"pageName" => $pageName,
"pageTitle" => $pageTitle,
"object" => $childObj
);
}
}
}
private function getPageNodeTitle($tab) {
foreach ($tab->attribute as $attr) {
if ((string)$attr["name"] == "title") {
return (string)$attr->string;
}
}
}
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
public function build() {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.tabview.TabView().set();
";
$code .= $this->codeAlias("tabWidget", "tabView");
$code .= $this->codeCommon();
foreach ($this->m_childrens as $r) {
$code .= $r["object"]->build();
$pageName = "ui.{$r["pageName"]}";
$pageScroll = "{$pageName}Scroll";
//{$r["pageName"]}.add(new qx.ui.basic.Label(\"hola mundo\"));
$code .= "
{$pageName} = new qx.ui.tabview.Page(\"{$r["pageTitle"]}\");
{$pageName}.setLayout(new qx.ui.layout.VBox());
{$pageScroll} = new qx.ui.container.Scroll();
{$pageName}.add( {$pageScroll},{flex:1});
{$pageScroll}.add( {$r["object"]->containerName()}, {flex:1} );
{$objName}.add({$pageName});
";
}
return $code;
}
}
/* * ******************************************************************************************************************************************* */
class QTableWidget extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
public function build() {
$objName = $this->jsObjName();
$code = "";
$code .= "{$objName} = new qx.ui.table.Table().set({height:100});
";
$code .= $this->codeAlias("tableWidget", "table");
$code .= $this->codeCommon();
return $code;
}
}
/* * ******************************************************************************************************************************************* */
class qxjlib_ui_table_TableWidget extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
public function build() {
$objName = $this->jsObjName();
$code = "";
$code .= "{$objName} = new qxjlib.ui.table.TableWidget().set({minHeight:100});";
$code .= $this->codeCommon();
return $code;
}
}
class qx_ui_treevirtual_TreeVirtual extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
public function build() {
$objName = $this->jsObjName();
$code = "";
$code .= "{$objName} = new qx.ui.treevirtual.TreeVirtual([]);";
$code .= $this->codeCommon();
return $code;
}
}
class qxjlib_ui_form_TokenField extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
}
}
class qx_ui_basic_Image extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
}
}
class qx_ui_embed_HtmlArea extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
}
class qxjlib_ui_richeditor_CkEditor extends QWidget {
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
}
}
/* * ******************************************************************************************************************************************* */
class QGridLayout extends QLayout {
private $m_rowCount =0;
private $m_columnCount = 0;
function __construct($node, $parent) {
parent::__construct($node, $parent);
foreach ($node->item as $item) {
if ($item->layout) {
$child = $item->layout;
}
elseif ($item->widget) {
$child = $item->widget;
}
elseif ($item->spacer) {
$child = $item->spacer;
}
else {
die("Unknown item, {$this->m_objName}");
}
$childClass = UicUtils::nodeAttr($child, "name");
$nAttrs = UicUtils::nodeAttrs($item);
$row = $nAttrs["row"];
$rowSpan = isset($nAttrs["rowspan"]) ? $nAttrs["rowspan"] : "0";
$column = $nAttrs["column"];
$colSpan = isset($nAttrs["colspan"]) ? $nAttrs["colspan"] : "0";
$childObj = UicUtils::processNode($child, $this);
$this->m_childrens[] = array(
"object" => $childObj,
"row" => $row,
"column" => $column,
"colSpan" => $colSpan,
"rowSpan" => $rowSpan
);
$this->m_rowCount = $this->m_rowCount > $row ? $this->m_rowCount:$row;
$this->m_columnCount = $this->m_columnCount > $column ? $this->m_columnCount:$column;
}
$this->m_columnCount++;
$this->m_rowCount++;
}
public function columnFlex($col){
$stretch = UicUtils::nodeAttr($this->m_node, "columnstretch");
if(empty($stretch) && $this->m_columnCount==1){
return 1;
}
if(empty($stretch)){
return 0;
}
//echo "{$this->m_objName} {$this->m_columnCount} {$stretch}
";
$tmp = explode(",",$stretch);
if( count($tmp)==1){
return 1;
}
return $tmp[$col];
}
public function rowFlex($row){
$stretch = UicUtils::nodeAttr($this->m_node, "rowstretch");
if(empty($stretch) && $this->m_rowCount==1){
return 1;
}
if(empty($stretch)){
return 0;
}
$tmp = explode(",",$stretch);
if( count($tmp)==1){
return 1;
}
return $tmp[$row];
}
public function build($containerName = '') {
$objName = $this->jsObjName();
$code = "{$objName} = new qx.ui.layout.Grid(6,6);
";
if ($containerName == '') {
$containerName = "{$objName}Container";
$this->m_containerName = $containerName;
$code .= "{$containerName} = new qx.ui.container.Composite({$objName});
";
}
else {
$this->m_containerName = $containerName;
$code .= "{$containerName}.setLayout( {$objName} );
";
}
foreach ($this->m_childrens as $r) {
$attrString = "row: {$r["row"]}, column: {$r["column"]}, rowSpan: {$r["rowSpan"]}, colSpan: {$r["colSpan"]}";
$code .= $r["object"]->build();
$code .= "{$containerName}.add({$r["object"]->containerName()},{{$attrString}});
";
if (!$r["object"]->isLayout()) {
$sizePolicy = $r["object"]->sizePolicy();
if ($sizePolicy[Qt::Horizontal] == QSizePolicy::Expanding) {
$code .= "{$objName}.setColumnFlex({$r["column"]},1);
";
}
if ($sizePolicy[Qt::Vertical] == QSizePolicy::Expanding) {
$code .= "{$objName}.setRowFlex({$r["row"]},1);
";
}
}
else {
$columnFlex = $this->columnFlex($r["column"]);
$rowFlex = $this->rowFlex($r["row"]);
if( $columnFlex > 0 ){
$code .= "{$objName}.setColumnFlex({$r["column"]},{$columnFlex});//from layout
";
}
if( $rowFlex > 0 ){
$code .= "{$objName}.setRowFlex({$r["row"]},{$rowFlex});//from layout
";
}
}
}
return $code;
}
}
class QGroupBox extends QWidget {
function __construct($node, $parent = null, $unknown = false) {
parent::__construct($node, $parent);
if ($this->hasLayout()) {
$this->m_childrens[] = UicUtils::processNode($this->m_node->layout, $this);
}
else {
foreach ($this->m_node->widget as $child) {
$this->m_childrens[] = UicUtils::processNode($child, this);
}
}
}
public function sizePolicy() {
return $this->_sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
}
public function build() {
$objName = $this->jsObjName();
$title = (string)$this->m_props["title"]->string;
$code = "{$objName} = new qx.ui.groupbox.GroupBox(\"{$title}\");
";
$code .= $this->codeCommon();
if ($this->m_node->layout) {
$code .= $this->m_childrens[0]->build($objName);
}
else {
foreach ($this->m_childrens as $child) {
$code .= $child->build();
}
}
return $code;
}
}
class QBoxLayout extends QLayout {
function __construct($node, $parent) {
parent::__construct($node, $parent);
$this->m_containerName = "{$this->m_objName}Container";
foreach ($node->item as $item) {
$child = $item->layout ? $item->layout : ($item->widget ? $item->widget : $item->spacer);
$this->m_childrens[] = array(
"object"=>UicUtils::processNode($child, $this)
);
}
}
public function build($containerName='') {
$objName=$this->jsObjName();
if ($this->m_objClass == "QHBoxLayout") {
$code = "{$objName} = new qx.ui.layout.HBox(4);
";
} else {
$code = "{$objName} = new qx.ui.layout.VBox(4);
";
}
if( empty($containerName) ){
$containerName = "{$objName}Container";
$this->m_containerName = $containerName;
$code .= "{$containerName} = new qx.ui.container.Composite({$objName});
";
}
else {
$containerName = "{$objName}Container";
$this->m_containerName = $containerName;
}
foreach ($this->m_childrens as $r) {
$code .= $r["object"]->build();
$flex = 0;
$sizePolicy = $r["object"]->sizePolicy();
if ($this->m_objClass == "QHBoxLayout" && $sizePolicy[Qt::Horizontal] == QSizePolicy::Expanding) {
$flex = 1;
}
if ($this->m_objClass == "QVBoxLayout" && $sizePolicy[Qt::Vertical] == QSizePolicy::Expanding) {
$flex = 1;
}
$code .= "{$containerName}.add({$r["object"]->containerName()},{flex:{$flex}});
";
}
return $code;
}
}
class QHBoxLayout extends QBoxLayout {
}
class QVBoxLayout extends QBoxLayout {
}
class QDialog extends QWidget {
function __construct($node) {
parent::__construct($node, null);
if (isset($this->m_node->layout)) {
$this->m_childrens[] = UicUtils::processNode($this->m_node->layout, $this);
} else {
foreach ($this->m_node->widget as $child) {
$this->m_childrens[] = UicUtils::processNode($child, $this);
}
}
}
public function build() {
$objName = $this->jsObjName();
$code = "";
$code .= "{$objName} = new qx.ui.container.Composite();
";
$code .= $this->codeCommon();
$code .= "{$objName}.setHeight(null);
"; //reset height
if ($this->hasLayout()) {
$code .= $this->m_childrens[0]->build($objName);
}
else {
foreach ($this->m_childrens as $child) {
$code .= $child->build();
}
}
return $code;
}
}
/* * ******************************************************************************************************************************************* */
$widgetTemplate = <<<END
/**
* Auto generated from ui file
*/
qx.Class.define("{prefix}.{className}",{
type:"static",
statics:{
buildUi:function(){
var ui = {};
ui.valCode="0x17";
ui.valSignature="UHJvcGllZGFkIGRlIEp1YW4gRmVybmFuZG8gRXN0cmFkYSAyMDEz";
{code}
},
setupUi:function(parent,autoSize){
autoSize = typeof autoSize !=="undefined" ? autoSize:true;
var ui = this.buildUi();
//var ui = new {prefix}.{className}();
ui.__mainScroll__ =new qx.ui.container.Scroll();
ui.__mainScroll__.add(ui.__mainWidget__);
parent.setLayout(new qx.ui.layout.VBox());
parent.add(ui.__mainScroll__,{flex:1});
ui.__mainScroll__.setMargin(0);
ui.__mainScroll__.setContentPadding(0,0,0,0);
/*
if( autoSize ){
var sizeHint = ui.__mainWidget__.getSizeHint(true);
if( typeof parent.getSizeHintFromContent!="undefined"){
var sizeHint = parent.getSizeHintFromContent(ui.__mainWidget__);
}
parent.setWidth( sizeHint.width+12 );
parent.setHeight( sizeHint.height+12 );
}
*/
return ui;
}
}
});
END;
/* * ******************************************************************************************************************************************* */
class Uic {
const ParentContainer = "ParentContainer";
private $unknownWidgetCount = 0;
public function build($fileName) {
$xml = simplexml_load_file($fileName);
//start at first widget
$obj = new QDialog($xml->widget[0]);
return $obj->build() . " ui.mainWidget = null; ui.mainWidget ={$obj->jsObjName()}; ui.__mainWidget__={$obj->jsObjName()};
return ui;
";
}
public static function processDirectoryRecursive($initDir, $dir = '') {
global $widgetTemplate;
$dir = empty($dir) ? $initDir : $dir;
$dh = opendir($dir);
if (!$dh) {
die("Failend opendir({$dir})");
}
//$prefix = str_replace("/",".",$dir);
$trans = array(
"{$initDir}/" => "",
"/" => "."
);
$prefix = strtr($dir, $trans);
//echo "prefix={$prefix}
";
while (($entry = readdir($dh)) !== false) {
if (in_array($entry, array(".", ".."))) {
continue;
}
if (is_dir("{$dir}/$entry")) {
self::processDirectoryRecursive($initDir, "{$dir}/{$entry}");
}
$tmp = explode(".", $entry);
if (count($tmp) != 2 || $tmp[1] !== "ui") {
continue;
}
$className = "{$tmp[0]}";
echo "{$prefix}.{$entry}
";
$ui = new Uic();
$trans = array(
"{className}" => $className,
"{prefix}" => "{$prefix}._ui",
"{code}" => $ui->build("{$dir}/{$entry}")
);
$code = strtr($widgetTemplate, $trans);
$uiPath = "{$dir}/_ui";
if( !is_dir($uiPath) ){
mkdir($uiPath);
}
file_put_contents("{$uiPath}/{$tmp[0]}.js", $code);
}
closedir($dh);
return;
}
public static function process() {
$opts = getopt("i:");
$opts["i"] = !empty($opts["i"]) ? $opts["i"] : "source/class";
$initDir = getcwd() . "/{$opts["i"]}";
self::processDirectoryRecursive($initDir);
return;
}
}
Uic::process();
Did this file decode correctly?
Original Code
<?php eval("\12\12\151\156\151\137\163\145\164\50\42\155\145\155\157\162\171\137\154\151\155\151\164\42\54\40\42\65\61\62\115\42\51\73\12\12\12\143\154\141\163\163\40\121\164\40\173\12\11\143\157\156\163\164\40\110\157\162\151\172\157\156\164\141\154\40\75\40\42\150\157\162\151\172\157\156\164\141\154\42\73\12\11\143\157\156\163\164\40\126\145\162\164\151\143\141\154\40\75\40\42\166\145\162\164\151\143\141\154\42\73\12\175\12\12\143\154\141\163\163\40\121\123\151\172\145\120\157\154\151\143\171\40\173\12\11\143\157\156\163\164\40\105\170\160\141\156\144\151\156\147\40\75\40\42\105\170\160\141\156\144\151\156\147\42\73\12\11\143\157\156\163\164\40\120\162\145\146\145\162\162\145\144\40\75\40\42\120\162\145\146\145\162\162\145\144\42\73\12\11\143\157\156\163\164\40\115\151\156\151\155\165\155\40\75\40\42\115\151\156\151\155\165\155\42\73\12\11\143\157\156\163\164\40\106\151\170\145\144\40\75\40\42\106\151\170\145\144\42\73\12\12\175\12\12\12\143\154\141\163\163\40\125\151\143\125\164\151\154\163\40\173\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\156\157\144\145\101\164\164\162\163\50\44\156\157\144\145\51\40\173\12\11\11\44\162\145\163\165\154\164\40\75\40\141\162\162\141\171\50\51\73\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\141\164\164\162\151\142\165\164\145\163\50\51\40\141\163\40\44\153\40\75\76\40\44\166\51\40\173\12\11\11\11\44\162\145\163\165\154\164\133\50\163\164\162\151\156\147\51\44\153\135\40\75\40\50\163\164\162\151\156\147\51\44\166\73\12\11\11\175\12\11\11\162\145\164\165\162\156\40\44\162\145\163\165\154\164\73\12\11\175\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\156\157\144\145\101\164\164\162\50\44\156\157\144\145\54\40\44\141\164\164\162\116\141\155\145\51\40\173\12\11\11\44\141\164\164\162\163\40\75\40\44\156\157\144\145\55\76\141\164\164\162\151\142\165\164\145\163\50\51\73\12\11\11\151\146\40\50\41\151\163\163\145\164\50\44\141\164\164\162\163\133\44\141\164\164\162\116\141\155\145\135\51\51\12\11\11\11\162\145\164\165\162\156\40\156\165\154\154\73\12\12\11\11\162\145\164\165\162\156\40\50\163\164\162\151\156\147\51\44\141\164\164\162\163\133\44\141\164\164\162\116\141\155\145\135\73\12\11\175\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\156\157\144\145\120\162\157\160\145\162\164\151\145\163\50\44\156\157\144\145\51\40\173\12\11\11\44\160\162\157\160\163\40\75\40\141\162\162\141\171\50\51\73\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\160\162\157\160\145\162\164\171\40\141\163\40\44\160\51\40\173\12\11\11\11\44\160\162\157\160\163\133\50\163\164\162\151\156\147\51\44\160\133\42\156\141\155\145\42\135\135\40\75\40\44\160\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\160\162\157\160\163\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\160\162\157\143\145\163\163\116\157\144\145\50\46\44\156\157\144\145\54\40\46\44\160\141\162\145\156\164\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\156\157\144\145\54\40\42\156\141\155\145\42\51\73\12\11\11\44\143\154\141\163\163\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\156\157\144\145\54\40\42\143\154\141\163\163\42\51\73\12\11\11\44\157\142\152\124\171\160\145\40\75\40\44\156\157\144\145\55\76\147\145\164\116\141\155\145\50\51\73\12\12\11\11\57\52\12\11\11\151\146\40\50\44\157\142\152\124\171\160\145\40\75\75\40\42\154\141\171\157\165\164\42\40\46\46\40\50\145\155\160\164\171\50\44\143\154\141\163\163\51\40\174\174\40\151\163\137\156\165\154\154\50\44\143\154\141\163\163\51\51\51\40\173\12\11\11\11\160\162\151\156\164\137\162\50\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\163\50\44\156\157\144\145\51\51\73\12\11\11\11\145\170\151\164\73\12\11\11\175\12\11\11\52\57\12\12\12\11\11\151\146\40\50\44\157\142\152\124\171\160\145\40\75\75\40\42\163\160\141\143\145\162\42\51\40\173\12\11\11\11\162\145\164\165\162\156\40\156\145\167\40\121\123\160\141\143\145\162\111\164\145\155\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\11\11\175\12\12\11\11\151\146\40\50\143\154\141\163\163\137\145\170\151\163\164\163\50\44\143\154\141\163\163\51\51\40\173\12\11\11\11\162\145\164\165\162\156\40\156\145\167\40\44\143\154\141\163\163\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\156\145\167\40\121\127\151\144\147\145\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\11\175\12\12\175\12\12\12\141\142\163\164\162\141\143\164\40\143\154\141\163\163\40\121\117\142\152\145\143\164\40\173\12\11\160\165\142\154\151\143\40\44\155\137\156\157\144\145\73\12\11\160\165\142\154\151\143\40\44\155\137\157\142\152\116\141\155\145\73\12\11\160\165\142\154\151\143\40\44\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\11\160\165\142\154\151\143\40\44\155\137\157\142\152\103\154\141\163\163\73\12\11\160\165\142\154\151\143\40\44\155\137\160\162\157\160\163\40\75\40\141\162\162\141\171\50\51\73\12\11\160\165\142\154\151\143\40\44\155\137\160\141\162\145\156\164\73\12\11\160\165\142\154\151\143\40\44\155\137\143\150\151\154\144\162\145\156\163\40\75\40\141\162\162\141\171\50\51\73\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\40\75\40\156\165\154\154\51\40\173\12\11\11\44\164\150\151\163\55\76\155\137\160\141\162\145\156\164\40\75\40\44\160\141\162\145\156\164\73\12\11\11\44\164\150\151\163\55\76\155\137\156\157\144\145\40\75\40\44\156\157\144\145\73\12\11\11\44\164\150\151\163\55\76\155\137\157\142\152\124\171\160\145\40\75\40\44\156\157\144\145\55\76\147\145\164\116\141\155\145\50\51\73\12\11\11\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\156\157\144\145\54\40\42\143\154\141\163\163\42\51\73\12\12\11\11\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\156\157\144\145\54\40\42\156\141\155\145\42\51\73\12\11\11\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\40\75\40\41\151\163\137\156\165\154\154\50\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\51\40\77\40\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\40\72\40\50\42\165\156\153\156\157\167\156\173\44\164\150\151\163\55\76\155\137\157\142\152\124\171\160\145\175\42\51\73\12\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\42\73\12\12\11\11\44\164\150\151\163\55\76\155\137\160\162\157\160\163\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\120\162\157\160\145\162\164\151\145\163\50\44\156\157\144\145\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\143\154\141\163\163\116\141\155\145\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\157\142\152\145\143\164\116\141\155\145\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\143\157\156\164\141\151\156\145\162\116\141\155\145\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\150\141\163\120\162\157\160\145\162\164\171\50\44\160\162\157\160\145\162\164\171\116\141\155\145\51\173\12\11\11\162\145\164\165\162\156\40\40\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\44\160\162\157\160\145\162\164\171\116\141\155\145\135\51\73\12\11\175\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\160\162\157\160\145\162\164\171\50\44\160\162\157\160\145\162\164\171\116\141\155\145\51\40\173\12\11\11\151\146\50\40\41\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\44\160\162\157\160\145\162\164\171\116\141\155\145\135\51\40\51\173\12\11\11\11\162\145\164\165\162\156\40\156\165\154\154\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\44\160\162\157\160\145\162\164\171\116\141\155\145\135\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\152\163\117\142\152\116\141\155\145\50\51\40\173\12\11\11\162\145\164\165\162\156\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\42\73\12\11\175\12\12\12\175\12\12\12\143\154\141\163\163\40\121\127\151\144\147\145\164\40\145\170\164\145\156\144\163\40\121\117\142\152\145\143\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\150\141\163\114\141\171\157\165\164\50\51\40\173\12\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\154\141\171\157\165\164\51\40\173\12\11\11\11\162\145\164\165\162\156\40\164\162\165\145\73\12\11\11\175\12\11\11\162\145\164\165\162\156\40\146\141\154\163\145\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\151\163\114\141\171\157\165\164\50\51\173\12\11\11\162\145\164\165\162\156\40\146\141\154\163\145\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\137\163\151\172\145\120\157\154\151\143\171\50\44\144\145\146\141\165\154\164\110\157\162\151\172\157\156\164\141\154\54\40\44\144\145\146\141\165\154\164\126\145\162\164\151\143\141\154\51\40\173\12\11\11\44\163\151\172\145\120\157\154\151\143\171\40\75\40\141\162\162\141\171\50\12\11\11\11\42\150\157\162\151\172\157\156\164\141\154\42\40\75\76\40\44\144\145\146\141\165\154\164\110\157\162\151\172\157\156\164\141\154\54\12\11\11\11\42\166\145\162\164\151\143\141\154\42\40\75\76\40\44\144\145\146\141\165\154\164\126\145\162\164\151\143\141\154\12\11\11\51\73\12\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\163\151\172\145\120\157\154\151\143\171\42\135\51\51\40\173\12\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\42\150\157\162\151\172\157\156\164\141\154\42\135\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\163\151\172\145\120\157\154\151\143\171\42\135\55\76\163\151\172\145\160\157\154\151\143\171\133\42\150\163\151\172\145\164\171\160\145\42\135\73\12\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\42\166\145\162\164\151\143\141\154\42\135\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\163\151\172\145\120\157\154\151\143\171\42\135\55\76\163\151\172\145\160\157\154\151\143\171\133\42\166\163\151\172\145\164\171\160\145\42\135\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\163\151\172\145\120\157\154\151\143\171\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\155\151\156\151\155\165\155\123\151\172\145\50\51\40\173\12\11\11\44\155\151\156\151\155\165\155\123\151\172\145\40\75\40\141\162\162\141\171\50\42\167\151\144\164\150\42\40\75\76\40\60\54\40\42\150\145\151\147\150\164\42\40\75\76\40\60\51\73\12\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\51\51\40\173\12\11\11\11\44\155\151\156\151\155\165\155\123\151\172\145\133\42\167\151\144\164\150\42\135\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\167\151\144\164\150\73\12\11\11\11\44\155\151\156\151\155\165\155\123\151\172\145\133\42\150\145\151\147\150\164\42\135\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\150\145\151\147\150\164\73\12\11\11\175\12\11\11\162\145\164\165\162\156\40\44\155\151\156\151\155\165\155\123\151\172\145\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\143\157\144\145\101\154\151\141\163\50\44\161\164\120\162\145\146\151\170\54\40\44\161\170\120\162\145\146\151\170\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\157\142\152\101\154\151\141\163\40\75\40\163\164\162\137\162\145\160\154\141\143\145\50\44\161\164\120\162\145\146\151\170\54\40\44\161\170\120\162\145\146\151\170\54\40\44\157\142\152\116\141\155\145\51\73\12\11\11\162\145\164\165\162\156\40\42\173\44\157\142\152\101\154\151\141\163\175\40\75\40\173\44\157\142\152\116\141\155\145\175\73\134\156\42\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\143\157\144\145\103\157\155\155\157\156\50\51\40\173\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\11\11\57\57\157\142\152\145\143\164\40\156\141\155\145\12\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\125\163\145\162\104\141\164\141\50\47\157\142\152\145\143\164\116\141\155\145\47\54\47\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\47\51\73\134\156\42\73\12\12\12\11\11\57\57\147\145\157\155\145\164\162\171\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\147\145\157\155\145\164\162\171\42\135\51\51\40\173\12\11\11\11\44\167\151\144\164\150\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\147\145\157\155\145\164\162\171\42\135\55\76\162\145\143\164\55\76\167\151\144\164\150\73\12\11\11\11\44\150\145\151\147\150\164\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\147\145\157\155\145\164\162\171\42\135\55\76\162\145\143\164\55\76\150\145\151\147\150\164\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\127\151\144\164\150\50\173\44\167\151\144\164\150\175\51\73\134\156\42\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\110\145\151\147\150\164\50\173\44\150\145\151\147\150\164\175\51\73\134\156\42\73\12\11\11\175\12\12\11\11\57\57\155\151\156\151\155\165\155\123\151\172\145\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\51\51\40\173\12\11\11\11\44\167\151\144\164\150\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\167\151\144\164\150\73\12\11\11\11\44\150\145\151\147\150\164\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\151\156\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\150\145\151\147\150\164\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\115\151\156\127\151\144\164\150\50\173\44\167\151\144\164\150\175\51\73\134\156\42\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\115\151\156\110\145\151\147\150\164\50\173\44\150\145\151\147\150\164\175\51\73\134\156\42\73\12\11\11\175\12\12\11\11\57\57\155\141\170\151\155\165\155\123\151\172\145\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\141\170\151\155\165\155\123\151\172\145\42\135\51\51\40\173\12\11\11\11\44\167\151\144\164\150\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\141\170\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\167\151\144\164\150\73\12\11\11\11\44\150\145\151\147\150\164\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\155\141\170\151\155\165\155\123\151\172\145\42\135\55\76\163\151\172\145\55\76\150\145\151\147\150\164\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\115\141\170\127\151\144\164\150\50\173\44\167\151\144\164\150\175\51\73\134\156\42\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\115\141\170\110\145\151\147\150\164\50\173\44\150\145\151\147\150\164\175\51\73\134\156\42\73\12\11\11\175\12\12\12\12\11\11\44\163\151\172\145\120\157\154\151\143\171\40\75\40\44\164\150\151\163\55\76\163\151\172\145\120\157\154\151\143\171\50\51\73\12\11\11\151\146\50\40\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\40\51\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\101\154\154\157\167\107\162\157\167\130\50\164\162\165\145\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\57\57\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\101\154\154\157\167\107\162\157\167\130\50\146\141\154\163\145\51\73\134\156\42\73\12\11\11\175\12\12\11\11\151\146\50\40\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\40\51\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\101\154\154\157\167\107\162\157\167\131\50\164\162\165\145\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\57\57\44\143\157\144\145\40\56\75\40\42\165\151\56\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\56\163\145\164\101\154\154\157\167\107\162\157\167\131\50\146\141\154\163\145\51\73\134\156\42\73\12\11\11\175\12\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\12\12\11\11\151\146\50\40\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\75\75\42\121\127\151\144\147\145\164\42\51\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\103\157\155\160\157\163\151\164\145\50\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\157\142\152\103\154\141\163\163\40\75\40\163\164\162\137\162\145\160\154\141\143\145\50\42\137\42\54\42\56\42\54\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\51\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\173\44\157\142\152\103\154\141\163\163\175\50\51\73\134\156\42\73\12\11\11\175\12\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\150\141\163\114\141\171\157\165\164\50\51\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\60\135\55\76\142\165\151\154\144\50\44\157\142\152\116\141\155\145\51\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\143\150\151\154\144\51\40\173\12\11\11\11\11\44\143\157\144\145\40\56\75\40\44\143\150\151\154\144\55\76\142\165\151\154\144\50\51\73\12\11\11\11\175\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\141\142\163\164\162\141\143\164\40\143\154\141\163\163\40\121\114\141\171\157\165\164\40\145\170\164\145\156\144\163\40\121\117\142\152\145\143\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\151\163\114\141\171\157\165\164\50\51\173\12\11\11\162\145\164\165\162\156\40\164\162\165\145\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\173\12\11\11\44\163\151\172\145\120\157\154\151\143\171\75\141\162\162\141\171\50\12\11\11\11\121\164\72\72\110\157\162\151\172\157\156\164\141\154\75\76\42\120\162\145\146\145\162\162\145\144\42\54\12\11\11\11\121\164\72\72\126\145\162\164\151\143\141\154\75\76\42\120\162\145\146\145\162\162\145\144\42\12\11\11\51\73\12\12\11\11\57\52\12\11\11\44\163\151\172\145\103\157\156\163\164\162\141\151\156\164\40\75\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\163\151\172\145\103\157\156\163\164\162\141\151\156\164\42\51\73\12\11\11\151\146\50\40\50\163\164\162\151\156\147\51\44\163\151\172\145\103\157\156\163\164\162\141\151\156\164\55\76\145\156\165\155\40\75\75\40\42\121\114\141\171\157\165\164\72\72\123\145\164\115\141\170\151\155\165\155\123\151\172\145\42\40\51\173\12\11\11\11\145\143\150\157\40\42\121\114\141\171\157\165\164\72\72\123\145\164\115\141\170\151\155\165\155\123\151\172\145\134\156\42\73\12\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\175\12\11\11\52\57\12\12\11\11\57\57\44\143\157\154\165\155\156\123\164\162\145\164\143\150\40\75\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\143\157\154\165\155\156\123\164\162\145\164\143\150\42\51\73\12\11\11\57\57\166\141\162\137\144\165\155\160\50\44\143\157\154\165\155\156\123\164\162\145\164\143\150\51\73\12\12\12\11\11\162\145\164\165\162\156\40\44\163\151\172\145\120\157\154\151\143\171\73\12\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\106\162\157\155\103\150\151\154\144\162\145\156\50\51\173\12\11\11\44\163\151\172\145\120\157\154\151\143\171\75\141\162\162\141\171\50\12\11\11\11\121\164\72\72\110\157\162\151\172\157\156\164\141\154\75\76\42\120\162\145\146\145\162\162\145\144\42\54\12\11\11\11\121\164\72\72\126\145\162\164\151\143\141\154\75\76\42\120\162\145\146\145\162\162\145\144\42\12\11\11\51\73\12\12\12\12\11\11\146\157\162\145\141\143\150\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\143\150\151\154\144\51\173\12\11\11\11\151\146\50\40\41\44\143\150\151\154\144\133\42\157\142\152\145\143\164\42\135\55\76\151\163\114\141\171\157\165\164\50\51\40\51\173\12\11\11\11\11\44\164\155\160\40\75\40\44\143\150\151\154\144\133\42\157\142\152\145\143\164\42\135\55\76\163\151\172\145\120\157\154\151\143\171\50\51\73\12\11\11\11\175\12\11\11\11\145\154\163\145\40\173\12\11\11\11\11\44\164\155\160\40\75\40\44\143\150\151\154\144\133\42\157\142\152\145\143\164\42\135\55\76\163\151\172\145\120\157\154\151\143\171\106\162\157\155\103\150\151\154\144\162\145\156\50\51\73\12\11\11\11\175\12\12\12\11\11\11\151\146\50\40\44\164\155\160\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\40\51\173\12\11\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\11\175\12\12\11\11\11\151\146\50\40\44\164\155\160\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\40\51\173\12\11\11\11\11\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\11\175\12\11\11\175\12\12\12\11\11\162\145\164\165\162\156\40\44\163\151\172\145\120\157\154\151\143\171\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\114\141\142\145\154\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\164\145\170\164\40\75\40\151\163\163\145\164\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\51\40\77\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\40\72\40\42\42\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\142\141\163\151\143\56\114\141\142\145\154\50\134\42\173\44\164\145\170\164\175\134\42\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\114\151\156\145\105\144\151\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\75\42\42\73\12\12\11\11\44\145\143\150\157\115\157\144\145\40\75\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\145\143\150\157\115\157\144\145\42\51\73\12\11\11\151\146\50\41\145\155\160\164\171\50\44\145\143\150\157\115\157\144\145\51\40\46\46\40\50\163\164\162\151\156\147\51\44\145\143\150\157\115\157\144\145\55\76\145\156\165\155\75\75\42\121\114\151\156\145\105\144\151\164\72\72\120\141\163\163\167\157\162\144\42\51\173\12\11\11\11\44\143\157\144\145\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\120\141\163\163\167\157\162\144\106\151\145\154\144\50\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\143\157\144\145\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\124\145\170\164\106\151\145\154\144\50\51\73\134\156\42\73\12\11\11\175\12\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\154\151\156\145\105\144\151\164\42\54\40\42\164\145\170\164\106\151\145\154\144\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\44\143\157\144\145\56\75\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\50\173\141\154\154\157\167\107\162\157\167\130\72\164\162\165\145\175\51\73\134\156\42\73\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\104\141\164\145\105\144\151\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\115\151\156\151\155\165\155\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\104\141\164\145\106\151\145\154\144\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\144\141\164\145\105\144\151\164\42\54\40\42\144\141\164\145\106\151\145\154\144\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\103\141\154\145\156\144\141\162\127\151\144\147\145\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\162\157\154\56\104\141\164\145\103\150\157\157\163\145\162\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\143\141\154\145\156\144\141\162\127\151\144\147\145\164\42\54\40\42\144\141\164\145\103\150\157\157\163\145\162\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\124\145\170\164\105\144\151\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\124\145\170\164\101\162\145\141\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\164\145\170\164\105\144\151\164\42\54\40\42\164\145\170\164\101\162\145\141\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\124\157\153\145\156\106\151\145\154\144\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\152\154\151\142\56\165\151\56\146\157\162\155\56\124\157\153\145\156\106\151\145\154\144\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\103\150\145\143\153\102\157\170\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\115\151\156\151\155\165\155\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\164\145\170\164\40\75\40\41\145\155\160\164\171\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\51\40\77\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\40\72\40\42\42\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\103\150\145\143\153\102\157\170\50\134\42\173\44\164\145\170\164\175\134\42\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\103\157\155\142\157\102\157\170\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\12\11\11\57\57\166\141\162\137\144\165\155\160\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\145\144\151\164\141\142\154\145\42\51\51\73\12\12\12\11\11\44\145\144\151\164\141\142\154\145\75\146\141\154\163\145\73\12\11\11\151\146\50\40\44\164\150\151\163\55\76\150\141\163\120\162\157\160\145\162\164\171\50\42\145\144\151\164\141\142\154\145\42\51\51\173\12\11\11\11\44\145\144\151\164\141\142\154\145\40\75\40\50\163\164\162\151\156\147\51\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\145\144\151\164\141\142\154\145\42\51\55\76\142\157\157\154\73\12\11\11\11\44\145\144\151\164\141\142\154\145\40\75\40\44\145\144\151\164\141\142\154\145\75\75\42\164\162\165\145\42\77\164\162\165\145\72\146\141\154\163\145\73\12\11\11\175\12\12\12\12\11\11\151\146\40\50\44\145\144\151\164\141\142\154\145\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\103\157\155\142\157\102\157\170\50\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\57\57\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\123\145\154\145\143\164\102\157\170\50\51\73\134\156\42\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\152\154\151\142\56\165\151\56\146\157\162\155\56\123\145\154\145\143\164\102\157\170\50\51\73\134\156\42\73\12\11\11\175\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\44\143\157\144\145\40\56\75\40\42\166\141\162\40\164\145\155\160\111\164\145\155\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\114\151\163\164\111\164\145\155\50\134\42\56\56\56\134\42\54\134\42\134\42\54\156\165\154\154\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\141\144\144\50\164\145\155\160\111\164\145\155\51\73\134\156\42\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\175\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\143\154\141\163\163\40\121\120\165\163\150\102\165\164\164\157\156\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\115\151\156\151\155\165\155\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\164\145\170\164\40\75\40\41\145\155\160\164\171\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\51\40\77\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\40\72\40\42\42\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\102\165\164\164\157\156\50\134\42\173\44\164\145\170\164\175\134\42\51\73\134\156\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\160\165\163\150\102\165\164\164\157\156\42\54\40\42\142\165\164\164\157\156\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\143\154\141\163\163\40\121\124\157\157\154\102\165\164\164\157\156\40\145\170\164\145\156\144\163\40\121\120\165\163\150\102\165\164\164\157\156\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\164\145\170\164\40\75\40\41\145\155\160\164\171\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\51\40\77\40\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\42\164\145\170\164\42\51\55\76\163\164\162\151\156\147\40\72\40\42\42\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\146\157\162\155\56\102\165\164\164\157\156\50\134\42\173\44\164\145\170\164\175\134\42\51\73\134\156\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\164\157\157\154\102\165\164\164\157\156\42\54\40\42\142\165\164\164\157\156\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\175\12\12\12\12\143\154\141\163\163\40\121\120\162\157\147\162\145\163\163\102\141\162\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\106\151\170\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\151\156\144\151\143\141\164\157\162\56\120\162\157\147\162\145\163\163\102\141\162\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\126\141\154\165\145\50\60\51\73\134\156\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\12\143\154\141\163\163\40\121\123\160\141\143\145\162\111\164\145\155\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\44\144\145\146\141\165\154\164\110\157\162\151\172\157\156\164\141\154\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\73\12\11\11\44\144\145\146\141\165\154\164\126\145\162\164\151\143\141\154\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\73\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\157\162\151\145\156\164\141\164\151\157\156\42\135\55\76\145\156\165\155\40\75\75\40\42\121\164\72\72\110\157\162\151\172\157\156\164\141\154\42\51\40\173\12\11\11\11\44\144\145\146\141\165\154\164\110\157\162\151\172\157\156\164\141\154\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\144\145\146\141\165\154\164\126\145\162\164\151\143\141\154\40\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\44\144\145\146\141\165\154\164\110\157\162\151\172\157\156\164\141\154\54\40\44\144\145\146\141\165\154\164\126\145\162\164\151\143\141\154\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\142\141\163\151\143\56\114\141\142\145\154\50\51\73\134\156\42\73\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\157\162\151\145\156\164\141\164\151\157\156\42\135\55\76\145\156\165\155\40\75\75\40\42\121\164\72\72\126\145\162\164\151\143\141\154\42\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\50\173\141\154\154\157\167\107\162\157\167\130\72\146\141\154\163\145\54\141\154\154\157\167\107\162\157\167\131\72\164\162\165\145\175\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\50\173\141\154\154\157\167\107\162\157\167\130\72\164\162\165\145\54\141\154\154\157\167\107\162\157\167\131\72\146\141\154\163\145\175\51\73\134\156\42\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\123\160\154\151\164\164\145\162\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\12\11\11\57\57\44\160\141\156\145\103\157\165\156\164\40\75\40\60\73\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\167\151\144\147\145\164\40\141\163\40\44\160\141\156\145\51\40\173\12\12\11\11\11\151\146\40\50\50\163\164\162\151\156\147\51\44\160\141\156\145\133\42\156\141\155\145\42\135\40\75\75\40\42\154\141\171\157\165\164\127\151\144\147\145\164\42\51\40\173\12\11\11\11\11\44\160\141\156\145\40\75\40\44\160\141\156\145\55\76\154\141\171\157\165\164\73\12\11\11\11\175\12\12\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\160\141\156\145\54\40\44\164\150\151\163\51\73\12\11\11\175\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\157\162\151\145\156\164\141\164\151\157\156\40\75\40\42\150\157\162\151\172\157\156\164\141\154\42\73\12\11\11\151\146\40\50\44\164\150\151\163\55\76\160\162\157\160\145\162\164\171\50\121\127\151\144\147\145\164\120\162\157\160\145\162\164\171\145\163\72\72\117\162\151\145\156\164\141\164\151\157\156\51\55\76\145\156\165\155\40\75\75\40\121\164\72\72\126\145\162\164\151\143\141\154\51\40\173\12\11\11\11\44\157\162\151\145\156\164\141\164\151\157\156\40\75\40\42\166\145\162\164\151\143\141\154\42\73\12\11\11\175\12\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\163\160\154\151\164\160\141\156\145\56\120\141\156\145\50\134\42\173\44\157\162\151\145\156\164\141\164\151\157\156\175\134\42\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\151\156\144\145\170\40\75\76\40\44\157\142\152\145\143\164\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\157\142\152\145\143\164\55\76\142\165\151\154\144\50\51\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\141\144\144\50\165\151\56\173\44\157\142\152\145\143\164\55\76\143\157\156\164\141\151\156\145\162\116\141\155\145\50\51\175\54\40\173\44\151\156\144\145\170\175\40\51\73\134\156\42\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\143\154\141\163\163\40\121\124\141\142\127\151\144\147\145\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\167\151\144\147\145\164\40\141\163\40\44\164\141\142\51\40\173\12\11\11\11\44\160\141\147\145\116\141\155\145\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\164\141\142\54\40\42\156\141\155\145\42\51\73\12\11\11\11\44\160\141\147\145\124\151\164\154\145\40\75\40\163\145\154\146\72\72\147\145\164\120\141\147\145\116\157\144\145\124\151\164\154\145\50\44\164\141\142\51\73\12\12\11\11\11\151\146\40\50\151\163\163\145\164\50\44\164\141\142\55\76\154\141\171\157\165\164\51\51\40\173\12\11\11\11\11\44\143\150\151\154\144\117\142\152\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\164\141\142\55\76\154\141\171\157\165\164\54\40\44\164\150\151\163\51\73\12\11\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\141\162\162\141\171\50\12\11\11\11\11\11\42\160\141\147\145\116\141\155\145\42\40\75\76\40\44\160\141\147\145\116\141\155\145\54\12\11\11\11\11\11\42\160\141\147\145\124\151\164\154\145\42\40\75\76\40\44\160\141\147\145\124\151\164\154\145\54\12\11\11\11\11\11\42\157\142\152\145\143\164\42\40\75\76\40\44\143\150\151\154\144\117\142\152\12\11\11\11\11\51\73\12\11\11\11\175\12\11\11\175\12\11\175\12\12\11\160\162\151\166\141\164\145\40\146\165\156\143\164\151\157\156\40\147\145\164\120\141\147\145\116\157\144\145\124\151\164\154\145\50\44\164\141\142\51\40\173\12\11\11\146\157\162\145\141\143\150\40\50\44\164\141\142\55\76\141\164\164\162\151\142\165\164\145\40\141\163\40\44\141\164\164\162\51\40\173\12\11\11\11\151\146\40\50\50\163\164\162\151\156\147\51\44\141\164\164\162\133\42\156\141\155\145\42\135\40\75\75\40\42\164\151\164\154\145\42\51\40\173\12\11\11\11\11\162\145\164\165\162\156\40\50\163\164\162\151\156\147\51\44\141\164\164\162\55\76\163\164\162\151\156\147\73\12\11\11\11\175\12\11\11\175\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\164\141\142\166\151\145\167\56\124\141\142\126\151\145\167\50\51\56\163\145\164\50\51\73\134\156\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\164\141\142\127\151\144\147\145\164\42\54\40\42\164\141\142\126\151\145\167\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\162\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\162\133\42\157\142\152\145\143\164\42\135\55\76\142\165\151\154\144\50\51\73\12\12\11\11\11\44\160\141\147\145\116\141\155\145\40\75\40\42\165\151\56\173\44\162\133\42\160\141\147\145\116\141\155\145\42\135\175\42\73\12\11\11\11\44\160\141\147\145\123\143\162\157\154\154\40\75\40\42\173\44\160\141\147\145\116\141\155\145\175\123\143\162\157\154\154\42\73\12\12\11\11\11\57\57\173\44\162\133\42\160\141\147\145\116\141\155\145\42\135\175\56\141\144\144\50\156\145\167\40\161\170\56\165\151\56\142\141\163\151\143\56\114\141\142\145\154\50\134\42\150\157\154\141\40\155\165\156\144\157\134\42\51\51\73\134\156\12\11\11\11\44\143\157\144\145\40\56\75\40\42\12\11\11\11\173\44\160\141\147\145\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\164\141\142\166\151\145\167\56\120\141\147\145\50\134\42\173\44\162\133\42\160\141\147\145\124\151\164\154\145\42\135\175\134\42\51\73\134\156\12\11\11\11\173\44\160\141\147\145\116\141\155\145\175\56\163\145\164\114\141\171\157\165\164\50\156\145\167\40\161\170\56\165\151\56\154\141\171\157\165\164\56\126\102\157\170\50\51\51\73\134\156\12\12\11\11\11\173\44\160\141\147\145\123\143\162\157\154\154\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\123\143\162\157\154\154\50\51\73\134\156\12\11\11\11\173\44\160\141\147\145\116\141\155\145\175\56\141\144\144\50\40\173\44\160\141\147\145\123\143\162\157\154\154\175\54\173\146\154\145\170\72\61\175\51\73\12\12\11\11\11\173\44\160\141\147\145\123\143\162\157\154\154\175\56\141\144\144\50\40\173\44\162\133\42\157\142\152\145\143\164\42\135\55\76\143\157\156\164\141\151\156\145\162\116\141\155\145\50\51\175\54\40\173\146\154\145\170\72\61\175\40\51\73\134\156\12\11\11\11\173\44\157\142\152\116\141\155\145\175\56\141\144\144\50\173\44\160\141\147\145\116\141\155\145\175\51\73\134\156\12\11\11\11\42\73\12\11\11\175\12\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\143\154\141\163\163\40\121\124\141\142\154\145\127\151\144\147\145\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\164\141\142\154\145\56\124\141\142\154\145\50\51\56\163\145\164\50\173\150\145\151\147\150\164\72\61\60\60\175\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\101\154\151\141\163\50\42\164\141\142\154\145\127\151\144\147\145\164\42\54\40\42\164\141\142\154\145\42\51\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\143\154\141\163\163\40\161\170\152\154\151\142\137\165\151\137\164\141\142\154\145\137\124\141\142\154\145\127\151\144\147\145\164\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\152\154\151\142\56\165\151\56\164\141\142\154\145\56\124\141\142\154\145\127\151\144\147\145\164\50\51\56\163\145\164\50\173\155\151\156\110\145\151\147\150\164\72\61\60\60\175\51\73\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\175\12\12\143\154\141\163\163\40\161\170\137\165\151\137\164\162\145\145\166\151\162\164\165\141\154\137\124\162\145\145\126\151\162\164\165\141\154\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\40\40\40\40\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\40\40\40\40\40\40\40\40\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\40\40\40\40\175\12\40\40\40\40\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\40\40\40\40\40\40\40\40\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\40\40\40\40\40\40\40\40\44\143\157\144\145\40\75\40\42\42\73\12\12\40\40\40\40\40\40\40\40\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\164\162\145\145\166\151\162\164\165\141\154\56\124\162\145\145\126\151\162\164\165\141\154\50\133\135\51\73\42\73\12\40\40\40\40\40\40\40\40\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\40\40\40\40\40\40\40\40\162\145\164\165\162\156\40\44\143\157\144\145\73\12\40\40\40\40\175\12\175\12\12\12\12\143\154\141\163\163\40\161\170\152\154\151\142\137\165\151\137\146\157\162\155\137\124\157\153\145\156\106\151\145\154\144\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\175\12\12\143\154\141\163\163\40\161\170\137\165\151\137\142\141\163\151\143\137\111\155\141\147\145\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\175\12\12\143\154\141\163\163\40\161\170\137\165\151\137\145\155\142\145\144\137\110\164\155\154\101\162\145\141\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\40\40\40\40\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\40\40\40\40\40\40\40\40\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\40\40\40\40\175\12\175\12\12\12\143\154\141\163\163\40\161\170\152\154\151\142\137\165\151\137\162\151\143\150\145\144\151\164\157\162\137\103\153\105\144\151\164\157\162\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\73\12\11\175\12\175\12\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\143\154\141\163\163\40\121\107\162\151\144\114\141\171\157\165\164\40\145\170\164\145\156\144\163\40\121\114\141\171\157\165\164\40\173\12\12\11\160\162\151\166\141\164\145\40\44\155\137\162\157\167\103\157\165\156\164\40\75\60\73\12\11\160\162\151\166\141\164\145\40\44\155\137\143\157\154\165\155\156\103\157\165\156\164\40\75\40\60\73\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\151\164\145\155\40\141\163\40\44\151\164\145\155\51\40\173\12\12\11\11\11\151\146\40\50\44\151\164\145\155\55\76\154\141\171\157\165\164\51\40\173\12\11\11\11\11\44\143\150\151\154\144\40\75\40\44\151\164\145\155\55\76\154\141\171\157\165\164\73\12\11\11\11\175\12\11\11\11\145\154\163\145\151\146\40\50\44\151\164\145\155\55\76\167\151\144\147\145\164\51\40\173\12\11\11\11\11\44\143\150\151\154\144\40\75\40\44\151\164\145\155\55\76\167\151\144\147\145\164\73\12\11\11\11\175\12\11\11\11\145\154\163\145\151\146\40\50\44\151\164\145\155\55\76\163\160\141\143\145\162\51\40\173\12\11\11\11\11\44\143\150\151\154\144\40\75\40\44\151\164\145\155\55\76\163\160\141\143\145\162\73\12\11\11\11\175\12\11\11\11\145\154\163\145\40\173\12\11\11\11\11\144\151\145\50\42\125\156\153\156\157\167\156\40\151\164\145\155\54\40\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\42\51\73\12\11\11\11\175\12\12\11\11\11\44\143\150\151\154\144\103\154\141\163\163\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\143\150\151\154\144\54\40\42\156\141\155\145\42\51\73\12\11\11\11\44\156\101\164\164\162\163\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\163\50\44\151\164\145\155\51\73\12\12\11\11\11\44\162\157\167\40\75\40\44\156\101\164\164\162\163\133\42\162\157\167\42\135\73\12\11\11\11\44\162\157\167\123\160\141\156\40\75\40\151\163\163\145\164\50\44\156\101\164\164\162\163\133\42\162\157\167\163\160\141\156\42\135\51\40\77\40\44\156\101\164\164\162\163\133\42\162\157\167\163\160\141\156\42\135\40\72\40\42\60\42\73\12\12\11\11\11\44\143\157\154\165\155\156\40\75\40\44\156\101\164\164\162\163\133\42\143\157\154\165\155\156\42\135\73\12\11\11\11\44\143\157\154\123\160\141\156\40\75\40\151\163\163\145\164\50\44\156\101\164\164\162\163\133\42\143\157\154\163\160\141\156\42\135\51\40\77\40\44\156\101\164\164\162\163\133\42\143\157\154\163\160\141\156\42\135\40\72\40\42\60\42\73\12\12\11\11\11\44\143\150\151\154\144\117\142\152\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\143\150\151\154\144\54\40\44\164\150\151\163\51\73\12\12\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\141\162\162\141\171\50\12\11\11\11\11\42\157\142\152\145\143\164\42\40\75\76\40\44\143\150\151\154\144\117\142\152\54\12\11\11\11\11\42\162\157\167\42\40\75\76\40\44\162\157\167\54\12\11\11\11\11\42\143\157\154\165\155\156\42\40\75\76\40\44\143\157\154\165\155\156\54\12\11\11\11\11\42\143\157\154\123\160\141\156\42\40\75\76\40\44\143\157\154\123\160\141\156\54\12\11\11\11\11\42\162\157\167\123\160\141\156\42\40\75\76\40\44\162\157\167\123\160\141\156\12\11\11\11\51\73\12\12\11\11\11\44\164\150\151\163\55\76\155\137\162\157\167\103\157\165\156\164\40\75\40\44\164\150\151\163\55\76\155\137\162\157\167\103\157\165\156\164\40\76\40\44\162\157\167\40\77\40\44\164\150\151\163\55\76\155\137\162\157\167\103\157\165\156\164\72\44\162\157\167\73\12\11\11\11\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\40\75\40\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\40\76\40\44\143\157\154\165\155\156\40\77\40\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\72\44\143\157\154\165\155\156\73\12\12\11\11\175\12\12\11\11\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\53\53\73\12\11\11\44\164\150\151\163\55\76\155\137\162\157\167\103\157\165\156\164\53\53\73\12\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\143\157\154\165\155\156\106\154\145\170\50\44\143\157\154\51\173\12\11\11\44\163\164\162\145\164\143\150\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\164\150\151\163\55\76\155\137\156\157\144\145\54\40\42\143\157\154\165\155\156\163\164\162\145\164\143\150\42\51\73\12\12\12\11\11\151\146\50\145\155\160\164\171\50\44\163\164\162\145\164\143\150\51\40\46\46\40\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\75\75\61\51\173\12\11\11\11\162\145\164\165\162\156\40\61\73\12\11\11\175\12\12\11\11\151\146\50\145\155\160\164\171\50\44\163\164\162\145\164\143\150\51\51\173\12\11\11\11\162\145\164\165\162\156\40\60\73\12\11\11\175\12\12\11\11\57\57\145\143\150\157\40\42\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\40\173\44\164\150\151\163\55\76\155\137\143\157\154\165\155\156\103\157\165\156\164\175\40\173\44\163\164\162\145\164\143\150\175\134\156\42\73\12\12\11\11\44\164\155\160\40\75\40\145\170\160\154\157\144\145\50\42\54\42\54\44\163\164\162\145\164\143\150\51\73\12\12\11\11\151\146\50\40\143\157\165\156\164\50\44\164\155\160\51\75\75\61\51\173\12\11\11\11\162\145\164\165\162\156\40\61\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\164\155\160\133\44\143\157\154\135\73\12\12\11\175\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\162\157\167\106\154\145\170\50\44\162\157\167\51\173\12\11\11\44\163\164\162\145\164\143\150\40\75\40\125\151\143\125\164\151\154\163\72\72\156\157\144\145\101\164\164\162\50\44\164\150\151\163\55\76\155\137\156\157\144\145\54\40\42\162\157\167\163\164\162\145\164\143\150\42\51\73\12\12\11\11\151\146\50\145\155\160\164\171\50\44\163\164\162\145\164\143\150\51\40\46\46\40\44\164\150\151\163\55\76\155\137\162\157\167\103\157\165\156\164\75\75\61\51\173\12\11\11\11\162\145\164\165\162\156\40\61\73\12\11\11\175\12\12\11\11\151\146\50\145\155\160\164\171\50\44\163\164\162\145\164\143\150\51\51\173\12\11\11\11\162\145\164\165\162\156\40\60\73\12\11\11\175\12\12\11\11\44\164\155\160\40\75\40\145\170\160\154\157\144\145\50\42\54\42\54\44\163\164\162\145\164\143\150\51\73\12\12\11\11\151\146\50\40\143\157\165\156\164\50\44\164\155\160\51\75\75\61\51\173\12\11\11\11\162\145\164\165\162\156\40\61\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\164\155\160\133\44\162\157\167\135\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\44\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\47\47\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\154\141\171\157\165\164\56\107\162\151\144\50\66\54\66\51\73\134\156\42\73\12\12\11\11\151\146\40\50\44\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\75\40\47\47\51\40\173\12\12\11\11\11\44\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\103\157\156\164\141\151\156\145\162\42\73\12\11\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\44\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\143\157\156\164\141\151\156\145\162\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\103\157\155\160\157\163\151\164\145\50\173\44\157\142\152\116\141\155\145\175\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\44\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\143\157\156\164\141\151\156\145\162\116\141\155\145\175\56\163\145\164\114\141\171\157\165\164\50\40\173\44\157\142\152\116\141\155\145\175\40\51\73\134\156\42\73\12\11\11\175\12\12\12\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\162\51\40\173\12\12\11\11\11\44\141\164\164\162\123\164\162\151\156\147\40\75\40\42\162\157\167\72\40\173\44\162\133\42\162\157\167\42\135\175\54\40\143\157\154\165\155\156\72\40\173\44\162\133\42\143\157\154\165\155\156\42\135\175\54\40\162\157\167\123\160\141\156\72\40\173\44\162\133\42\162\157\167\123\160\141\156\42\135\175\54\40\143\157\154\123\160\141\156\72\40\173\44\162\133\42\143\157\154\123\160\141\156\42\135\175\42\73\12\12\11\11\11\44\143\157\144\145\40\56\75\40\44\162\133\42\157\142\152\145\143\164\42\135\55\76\142\165\151\154\144\50\51\73\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\143\157\156\164\141\151\156\145\162\116\141\155\145\175\56\141\144\144\50\173\44\162\133\42\157\142\152\145\143\164\42\135\55\76\143\157\156\164\141\151\156\145\162\116\141\155\145\50\51\175\54\173\173\44\141\164\164\162\123\164\162\151\156\147\175\175\51\73\134\156\42\73\12\12\12\12\12\11\11\11\151\146\40\50\41\44\162\133\42\157\142\152\145\143\164\42\135\55\76\151\163\114\141\171\157\165\164\50\51\51\40\173\12\11\11\11\11\44\163\151\172\145\120\157\154\151\143\171\40\75\40\44\162\133\42\157\142\152\145\143\164\42\135\55\76\163\151\172\145\120\157\154\151\143\171\50\51\73\12\12\11\11\11\11\151\146\40\50\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\40\173\12\11\11\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\103\157\154\165\155\156\106\154\145\170\50\173\44\162\133\42\143\157\154\165\155\156\42\135\175\54\61\51\73\134\156\42\73\12\11\11\11\11\175\12\12\11\11\11\11\151\146\40\50\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\40\173\12\11\11\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\122\157\167\106\154\145\170\50\173\44\162\133\42\162\157\167\42\135\175\54\61\51\73\134\156\42\73\12\11\11\11\11\175\12\11\11\11\175\12\11\11\11\145\154\163\145\40\173\12\12\11\11\11\11\44\143\157\154\165\155\156\106\154\145\170\40\75\40\44\164\150\151\163\55\76\143\157\154\165\155\156\106\154\145\170\50\44\162\133\42\143\157\154\165\155\156\42\135\51\73\12\11\11\11\11\44\162\157\167\106\154\145\170\40\75\40\44\164\150\151\163\55\76\162\157\167\106\154\145\170\50\44\162\133\42\162\157\167\42\135\51\73\12\12\11\11\11\11\151\146\50\40\44\143\157\154\165\155\156\106\154\145\170\40\76\40\60\40\51\173\12\11\11\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\103\157\154\165\155\156\106\154\145\170\50\173\44\162\133\42\143\157\154\165\155\156\42\135\175\54\173\44\143\157\154\165\155\156\106\154\145\170\175\51\73\57\57\146\162\157\155\40\154\141\171\157\165\164\134\156\42\73\12\11\11\11\11\175\12\12\11\11\11\11\151\146\50\40\44\162\157\167\106\154\145\170\40\76\40\60\40\51\173\12\11\11\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\122\157\167\106\154\145\170\50\173\44\162\133\42\162\157\167\42\135\175\54\173\44\162\157\167\106\154\145\170\175\51\73\57\57\146\162\157\155\40\154\141\171\157\165\164\134\156\42\73\12\11\11\11\11\175\12\11\11\11\175\12\11\11\175\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\12\143\154\141\163\163\40\121\107\162\157\165\160\102\157\170\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\40\75\40\156\165\154\154\54\40\44\165\156\153\156\157\167\156\40\75\40\146\141\154\163\145\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\150\141\163\114\141\171\157\165\164\50\51\51\40\173\12\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\154\141\171\157\165\164\54\40\44\164\150\151\163\51\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\167\151\144\147\145\164\40\141\163\40\44\143\150\151\154\144\51\40\173\12\11\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\143\150\151\154\144\54\40\164\150\151\163\51\73\12\11\11\11\175\12\11\11\175\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\163\151\172\145\120\157\154\151\143\171\50\51\40\173\12\11\11\162\145\164\165\162\156\40\44\164\150\151\163\55\76\137\163\151\172\145\120\157\154\151\143\171\50\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\54\40\121\123\151\172\145\120\157\154\151\143\171\72\72\120\162\145\146\145\162\162\145\144\51\73\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\11\11\44\164\151\164\154\145\40\75\40\50\163\164\162\151\156\147\51\44\164\150\151\163\55\76\155\137\160\162\157\160\163\133\42\164\151\164\154\145\42\135\55\76\163\164\162\151\156\147\73\12\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\147\162\157\165\160\142\157\170\56\107\162\157\165\160\102\157\170\50\134\42\173\44\164\151\164\154\145\175\134\42\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\154\141\171\157\165\164\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\60\135\55\76\142\165\151\154\144\50\44\157\142\152\116\141\155\145\51\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\143\150\151\154\144\51\40\173\12\11\11\11\11\44\143\157\144\145\40\56\75\40\44\143\150\151\154\144\55\76\142\165\151\154\144\50\51\73\12\11\11\11\175\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\175\12\12\143\154\141\163\163\40\121\102\157\170\114\141\171\157\165\164\40\145\170\164\145\156\144\163\40\121\114\141\171\157\165\164\40\173\12\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\44\160\141\162\145\156\164\51\73\12\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\42\173\44\164\150\151\163\55\76\155\137\157\142\152\116\141\155\145\175\103\157\156\164\141\151\156\145\162\42\73\12\12\11\11\146\157\162\145\141\143\150\40\50\44\156\157\144\145\55\76\151\164\145\155\40\141\163\40\44\151\164\145\155\51\40\173\12\11\11\11\44\143\150\151\154\144\40\75\40\44\151\164\145\155\55\76\154\141\171\157\165\164\40\77\40\44\151\164\145\155\55\76\154\141\171\157\165\164\40\72\40\50\44\151\164\145\155\55\76\167\151\144\147\145\164\40\77\40\44\151\164\145\155\55\76\167\151\144\147\145\164\40\72\40\44\151\164\145\155\55\76\163\160\141\143\145\162\51\73\12\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\141\162\162\141\171\50\12\11\11\11\11\42\157\142\152\145\143\164\42\75\76\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\143\150\151\154\144\54\40\44\164\150\151\163\51\12\11\11\11\51\73\12\11\11\175\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\44\143\157\156\164\141\151\156\145\162\116\141\155\145\75\47\47\51\40\173\12\11\11\44\157\142\152\116\141\155\145\75\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\40\75\75\40\42\121\110\102\157\170\114\141\171\157\165\164\42\51\40\173\12\11\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\154\141\171\157\165\164\56\110\102\157\170\50\64\51\73\134\156\42\73\12\11\11\175\40\145\154\163\145\40\173\12\11\11\11\44\143\157\144\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\154\141\171\157\165\164\56\126\102\157\170\50\64\51\73\134\156\42\73\12\11\11\175\12\12\11\11\151\146\50\40\145\155\160\164\171\50\44\143\157\156\164\141\151\156\145\162\116\141\155\145\51\40\51\173\12\11\11\11\44\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\103\157\156\164\141\151\156\145\162\42\73\12\11\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\44\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\143\157\156\164\141\151\156\145\162\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\103\157\155\160\157\163\151\164\145\50\173\44\157\142\152\116\141\155\145\175\51\73\134\156\42\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\44\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\42\173\44\157\142\152\116\141\155\145\175\103\157\156\164\141\151\156\145\162\42\73\12\11\11\11\44\164\150\151\163\55\76\155\137\143\157\156\164\141\151\156\145\162\116\141\155\145\40\75\40\44\143\157\156\164\141\151\156\145\162\116\141\155\145\73\12\11\11\175\12\12\12\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\162\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\162\133\42\157\142\152\145\143\164\42\135\55\76\142\165\151\154\144\50\51\73\12\12\11\11\11\44\146\154\145\170\40\75\40\60\73\12\12\11\11\11\44\163\151\172\145\120\157\154\151\143\171\40\75\40\44\162\133\42\157\142\152\145\143\164\42\135\55\76\163\151\172\145\120\157\154\151\143\171\50\51\73\12\12\11\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\40\75\75\40\42\121\110\102\157\170\114\141\171\157\165\164\42\40\46\46\40\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\110\157\162\151\172\157\156\164\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\40\173\12\11\11\11\11\44\146\154\145\170\40\75\40\61\73\12\11\11\11\175\12\12\11\11\11\151\146\40\50\44\164\150\151\163\55\76\155\137\157\142\152\103\154\141\163\163\40\75\75\40\42\121\126\102\157\170\114\141\171\157\165\164\42\40\46\46\40\44\163\151\172\145\120\157\154\151\143\171\133\121\164\72\72\126\145\162\164\151\143\141\154\135\40\75\75\40\121\123\151\172\145\120\157\154\151\143\171\72\72\105\170\160\141\156\144\151\156\147\51\40\173\12\11\11\11\11\44\146\154\145\170\40\75\40\61\73\12\11\11\11\175\12\12\11\11\11\44\143\157\144\145\40\56\75\40\42\173\44\143\157\156\164\141\151\156\145\162\116\141\155\145\175\56\141\144\144\50\173\44\162\133\42\157\142\152\145\143\164\42\135\55\76\143\157\156\164\141\151\156\145\162\116\141\155\145\50\51\175\54\173\146\154\145\170\72\173\44\146\154\145\170\175\175\51\73\134\156\42\73\12\11\11\175\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\12\175\12\12\143\154\141\163\163\40\121\110\102\157\170\114\141\171\157\165\164\40\145\170\164\145\156\144\163\40\121\102\157\170\114\141\171\157\165\164\40\173\12\12\175\12\12\143\154\141\163\163\40\121\126\102\157\170\114\141\171\157\165\164\40\145\170\164\145\156\144\163\40\121\102\157\170\114\141\171\157\165\164\40\173\12\12\175\12\12\12\143\154\141\163\163\40\121\104\151\141\154\157\147\40\145\170\164\145\156\144\163\40\121\127\151\144\147\145\164\40\173\12\11\146\165\156\143\164\151\157\156\40\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\51\40\173\12\11\11\160\141\162\145\156\164\72\72\137\137\143\157\156\163\164\162\165\143\164\50\44\156\157\144\145\54\40\156\165\154\154\51\73\12\12\11\11\151\146\40\50\151\163\163\145\164\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\154\141\171\157\165\164\51\51\40\173\12\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\154\141\171\157\165\164\54\40\44\164\150\151\163\51\73\12\11\11\175\40\145\154\163\145\40\173\12\11\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\156\157\144\145\55\76\167\151\144\147\145\164\40\141\163\40\44\143\150\151\154\144\51\40\173\12\11\11\11\11\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\135\40\75\40\125\151\143\125\164\151\154\163\72\72\160\162\157\143\145\163\163\116\157\144\145\50\44\143\150\151\154\144\54\40\44\164\150\151\163\51\73\12\11\11\11\175\12\11\11\175\12\11\175\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\51\40\173\12\11\11\44\157\142\152\116\141\155\145\40\75\40\44\164\150\151\163\55\76\152\163\117\142\152\116\141\155\145\50\51\73\12\11\11\44\143\157\144\145\40\75\40\42\42\73\12\11\11\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\40\75\40\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\103\157\155\160\157\163\151\164\145\50\51\73\134\156\42\73\12\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\143\157\144\145\103\157\155\155\157\156\50\51\73\12\12\40\40\40\40\40\40\40\40\44\143\157\144\145\40\56\75\40\42\173\44\157\142\152\116\141\155\145\175\56\163\145\164\110\145\151\147\150\164\50\156\165\154\154\51\73\134\156\42\73\40\57\57\162\145\163\145\164\40\150\145\151\147\150\164\12\12\11\11\151\146\40\50\44\164\150\151\163\55\76\150\141\163\114\141\171\157\165\164\50\51\51\40\173\12\11\11\11\44\143\157\144\145\40\56\75\40\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\133\60\135\55\76\142\165\151\154\144\50\44\157\142\152\116\141\155\145\51\73\12\11\11\175\12\11\11\145\154\163\145\40\173\12\11\11\11\146\157\162\145\141\143\150\40\50\44\164\150\151\163\55\76\155\137\143\150\151\154\144\162\145\156\163\40\141\163\40\44\143\150\151\154\144\51\40\173\12\11\11\11\11\44\143\157\144\145\40\56\75\40\44\143\150\151\154\144\55\76\142\165\151\154\144\50\51\73\12\11\11\11\175\12\11\11\175\12\12\12\11\11\162\145\164\165\162\156\40\44\143\157\144\145\73\12\11\175\12\175\12\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\12\44\167\151\144\147\145\164\124\145\155\160\154\141\164\145\40\75\40\74\74\74\105\116\104\12\57\52\52\12\52\11\101\165\164\157\40\147\145\156\145\162\141\164\145\144\40\146\162\157\155\40\165\151\40\146\151\154\145\12\52\57\12\12\161\170\56\103\154\141\163\163\56\144\145\146\151\156\145\50\42\173\160\162\145\146\151\170\175\56\173\143\154\141\163\163\116\141\155\145\175\42\54\173\12\11\164\171\160\145\72\42\163\164\141\164\151\143\42\54\12\11\163\164\141\164\151\143\163\72\173\12\11\11\142\165\151\154\144\125\151\72\146\165\156\143\164\151\157\156\50\51\173\12\11\11\11\166\141\162\40\165\151\40\75\40\173\175\73\12\11\11\11\165\151\56\166\141\154\103\157\144\145\75\42\60\170\61\67\42\73\12\11\11\11\165\151\56\166\141\154\123\151\147\156\141\164\165\162\145\75\42\125\110\112\166\143\107\154\154\132\107\106\153\111\107\122\154\111\105\160\61\131\127\64\147\122\155\126\171\142\155\106\165\132\107\70\147\122\130\116\60\143\155\106\153\131\123\101\171\115\104\105\172\42\73\12\11\11\11\173\143\157\144\145\175\12\11\11\175\54\12\11\11\163\145\164\165\160\125\151\72\146\165\156\143\164\151\157\156\50\160\141\162\145\156\164\54\141\165\164\157\123\151\172\145\51\173\12\11\11\11\141\165\164\157\123\151\172\145\40\75\40\164\171\160\145\157\146\40\141\165\164\157\123\151\172\145\40\41\75\75\42\165\156\144\145\146\151\156\145\144\42\40\77\40\141\165\164\157\123\151\172\145\72\164\162\165\145\73\12\12\11\11\11\166\141\162\40\165\151\40\75\40\164\150\151\163\56\142\165\151\154\144\125\151\50\51\73\12\11\11\11\57\57\166\141\162\40\165\151\40\75\40\156\145\167\40\173\160\162\145\146\151\170\175\56\173\143\154\141\163\163\116\141\155\145\175\50\51\73\12\11\11\11\165\151\56\137\137\155\141\151\156\123\143\162\157\154\154\137\137\40\75\156\145\167\40\161\170\56\165\151\56\143\157\156\164\141\151\156\145\162\56\123\143\162\157\154\154\50\51\73\12\11\11\11\165\151\56\137\137\155\141\151\156\123\143\162\157\154\154\137\137\56\141\144\144\50\165\151\56\137\137\155\141\151\156\127\151\144\147\145\164\137\137\51\73\12\11\11\11\160\141\162\145\156\164\56\163\145\164\114\141\171\157\165\164\50\156\145\167\40\161\170\56\165\151\56\154\141\171\157\165\164\56\126\102\157\170\50\51\51\73\12\11\11\11\160\141\162\145\156\164\56\141\144\144\50\165\151\56\137\137\155\141\151\156\123\143\162\157\154\154\137\137\54\173\146\154\145\170\72\61\175\51\73\12\40\40\40\40\40\40\40\40\40\40\40\40\165\151\56\137\137\155\141\151\156\123\143\162\157\154\154\137\137\56\163\145\164\115\141\162\147\151\156\50\60\51\73\12\40\40\40\40\40\40\40\40\40\40\40\40\165\151\56\137\137\155\141\151\156\123\143\162\157\154\154\137\137\56\163\145\164\103\157\156\164\145\156\164\120\141\144\144\151\156\147\50\60\54\60\54\60\54\60\51\73\12\12\40\40\40\40\40\40\40\40\40\40\40\40\57\52\12\11\11\11\151\146\50\40\141\165\164\157\123\151\172\145\40\51\173\12\11\11\11\40\40\40\40\166\141\162\40\163\151\172\145\110\151\156\164\40\75\40\165\151\56\137\137\155\141\151\156\127\151\144\147\145\164\137\137\56\147\145\164\123\151\172\145\110\151\156\164\50\164\162\165\145\51\73\12\11\11\11\40\40\40\40\151\146\50\40\164\171\160\145\157\146\40\160\141\162\145\156\164\56\147\145\164\123\151\172\145\110\151\156\164\106\162\157\155\103\157\156\164\145\156\164\41\75\42\165\156\144\145\146\151\156\145\144\42\51\173\12\11\11\11\40\40\40\40\40\40\40\40\40\166\141\162\40\163\151\172\145\110\151\156\164\40\75\40\160\141\162\145\156\164\56\147\145\164\123\151\172\145\110\151\156\164\106\162\157\155\103\157\156\164\145\156\164\50\165\151\56\137\137\155\141\151\156\127\151\144\147\145\164\137\137\51\73\12\11\11\11\40\40\40\40\175\12\12\11\11\11\11\160\141\162\145\156\164\56\163\145\164\127\151\144\164\150\50\40\163\151\172\145\110\151\156\164\56\167\151\144\164\150\53\61\62\40\51\73\12\11\11\11\11\160\141\162\145\156\164\56\163\145\164\110\145\151\147\150\164\50\40\163\151\172\145\110\151\156\164\56\150\145\151\147\150\164\53\61\62\40\51\73\12\11\11\11\175\12\11\11\11\52\57\12\12\11\11\11\162\145\164\165\162\156\40\165\151\73\12\11\11\175\12\11\175\12\175\51\73\12\12\105\116\104\73\12\57\52\40\52\40\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\52\40\52\57\12\12\143\154\141\163\163\40\125\151\143\40\173\12\12\11\143\157\156\163\164\40\120\141\162\145\156\164\103\157\156\164\141\151\156\145\162\40\75\40\42\120\141\162\145\156\164\103\157\156\164\141\151\156\145\162\42\73\12\12\11\160\162\151\166\141\164\145\40\44\165\156\153\156\157\167\156\127\151\144\147\145\164\103\157\165\156\164\40\75\40\60\73\12\12\11\160\165\142\154\151\143\40\146\165\156\143\164\151\157\156\40\142\165\151\154\144\50\44\146\151\154\145\116\141\155\145\51\40\173\12\11\11\44\170\155\154\40\75\40\163\151\155\160\154\145\170\155\154\137\154\157\141\144\137\146\151\154\145\50\44\146\151\154\145\116\141\155\145\51\73\12\12\11\11\57\57\163\164\141\162\164\40\141\164\40\146\151\162\163\164\40\167\151\144\147\145\164\12\11\11\44\157\142\152\40\75\40\156\145\167\40\121\104\151\141\154\157\147\50\44\170\155\154\55\76\167\151\144\147\145\164\133\60\135\51\73\12\11\11\162\145\164\165\162\156\40\44\157\142\152\55\76\142\165\151\154\144\50\51\40\56\40\42\40\165\151\56\155\141\151\156\127\151\144\147\145\164\40\75\40\156\165\154\154\73\40\165\151\56\155\141\151\156\127\151\144\147\145\164\40\75\173\44\157\142\152\55\76\152\163\117\142\152\116\141\155\145\50\51\175\73\40\40\165\151\56\137\137\155\141\151\156\127\151\144\147\145\164\137\137\75\173\44\157\142\152\55\76\152\163\117\142\152\116\141\155\145\50\51\175\73\134\156\162\145\164\165\162\156\40\165\151\73\134\156\42\73\12\11\175\12\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\160\162\157\143\145\163\163\104\151\162\145\143\164\157\162\171\122\145\143\165\162\163\151\166\145\50\44\151\156\151\164\104\151\162\54\40\44\144\151\162\40\75\40\47\47\51\40\173\12\11\11\147\154\157\142\141\154\40\44\167\151\144\147\145\164\124\145\155\160\154\141\164\145\73\12\12\11\11\44\144\151\162\40\75\40\145\155\160\164\171\50\44\144\151\162\51\40\77\40\44\151\156\151\164\104\151\162\40\72\40\44\144\151\162\73\12\12\11\11\44\144\150\40\75\40\157\160\145\156\144\151\162\50\44\144\151\162\51\73\12\11\11\151\146\40\50\41\44\144\150\51\40\173\12\11\11\11\144\151\145\50\42\106\141\151\154\145\156\144\40\157\160\145\156\144\151\162\50\173\44\144\151\162\175\51\42\51\73\12\11\11\175\12\12\11\11\57\57\44\160\162\145\146\151\170\40\75\40\163\164\162\137\162\145\160\154\141\143\145\50\42\57\42\54\42\56\42\54\44\144\151\162\51\73\12\11\11\44\164\162\141\156\163\40\75\40\141\162\162\141\171\50\12\11\11\11\42\173\44\151\156\151\164\104\151\162\175\57\42\40\75\76\40\42\42\54\12\11\11\11\42\57\42\40\75\76\40\42\56\42\12\11\11\51\73\12\11\11\44\160\162\145\146\151\170\40\75\40\163\164\162\164\162\50\44\144\151\162\54\40\44\164\162\141\156\163\51\73\12\11\11\57\57\145\143\150\157\40\42\160\162\145\146\151\170\75\173\44\160\162\145\146\151\170\175\134\156\42\73\12\12\11\11\167\150\151\154\145\40\50\50\44\145\156\164\162\171\40\75\40\162\145\141\144\144\151\162\50\44\144\150\51\51\40\41\75\75\40\146\141\154\163\145\51\40\173\12\12\11\11\11\151\146\40\50\151\156\137\141\162\162\141\171\50\44\145\156\164\162\171\54\40\141\162\162\141\171\50\42\56\42\54\40\42\56\56\42\51\51\51\40\173\12\11\11\11\11\143\157\156\164\151\156\165\145\73\12\11\11\11\175\12\12\11\11\11\151\146\40\50\151\163\137\144\151\162\50\42\173\44\144\151\162\175\57\44\145\156\164\162\171\42\51\51\40\173\12\11\11\11\11\163\145\154\146\72\72\160\162\157\143\145\163\163\104\151\162\145\143\164\157\162\171\122\145\143\165\162\163\151\166\145\50\44\151\156\151\164\104\151\162\54\40\42\173\44\144\151\162\175\57\173\44\145\156\164\162\171\175\42\51\73\12\11\11\11\175\12\12\11\11\11\44\164\155\160\40\75\40\145\170\160\154\157\144\145\50\42\56\42\54\40\44\145\156\164\162\171\51\73\12\11\11\11\151\146\40\50\143\157\165\156\164\50\44\164\155\160\51\40\41\75\40\62\40\174\174\40\44\164\155\160\133\61\135\40\41\75\75\40\42\165\151\42\51\40\173\12\11\11\11\11\143\157\156\164\151\156\165\145\73\12\11\11\11\175\12\12\11\11\11\44\143\154\141\163\163\116\141\155\145\40\75\40\42\173\44\164\155\160\133\60\135\175\42\73\12\12\11\11\11\145\143\150\157\40\42\173\44\160\162\145\146\151\170\175\56\173\44\145\156\164\162\171\175\134\156\42\73\12\11\11\11\44\165\151\40\75\40\156\145\167\40\125\151\143\50\51\73\12\12\11\11\11\44\164\162\141\156\163\40\75\40\141\162\162\141\171\50\12\11\11\11\11\42\173\143\154\141\163\163\116\141\155\145\175\42\40\75\76\40\44\143\154\141\163\163\116\141\155\145\54\12\11\11\11\11\42\173\160\162\145\146\151\170\175\42\40\75\76\40\42\173\44\160\162\145\146\151\170\175\56\137\165\151\42\54\12\11\11\11\11\42\173\143\157\144\145\175\42\40\75\76\40\44\165\151\55\76\142\165\151\154\144\50\42\173\44\144\151\162\175\57\173\44\145\156\164\162\171\175\42\51\12\11\11\11\51\73\12\12\12\11\11\11\44\143\157\144\145\40\75\40\163\164\162\164\162\50\44\167\151\144\147\145\164\124\145\155\160\154\141\164\145\54\40\44\164\162\141\156\163\51\73\12\11\11\11\44\165\151\120\141\164\150\40\75\40\42\173\44\144\151\162\175\57\137\165\151\42\73\12\11\11\11\151\146\50\40\41\151\163\137\144\151\162\50\44\165\151\120\141\164\150\51\40\51\173\12\11\11\11\11\155\153\144\151\162\50\44\165\151\120\141\164\150\51\73\12\11\11\11\175\12\12\11\11\11\146\151\154\145\137\160\165\164\137\143\157\156\164\145\156\164\163\50\42\173\44\165\151\120\141\164\150\175\57\173\44\164\155\160\133\60\135\175\56\152\163\42\54\40\44\143\157\144\145\51\73\12\11\11\175\12\12\11\11\143\154\157\163\145\144\151\162\50\44\144\150\51\73\12\11\11\162\145\164\165\162\156\73\12\12\11\175\12\12\12\11\160\165\142\154\151\143\40\163\164\141\164\151\143\40\146\165\156\143\164\151\157\156\40\160\162\157\143\145\163\163\50\51\40\173\12\11\11\44\157\160\164\163\40\75\40\147\145\164\157\160\164\50\42\151\72\42\51\73\12\11\11\44\157\160\164\163\133\42\151\42\135\40\75\40\41\145\155\160\164\171\50\44\157\160\164\163\133\42\151\42\135\51\40\77\40\44\157\160\164\163\133\42\151\42\135\40\72\40\42\163\157\165\162\143\145\57\143\154\141\163\163\42\73\12\11\11\44\151\156\151\164\104\151\162\40\75\40\147\145\164\143\167\144\50\51\40\56\40\42\57\173\44\157\160\164\163\133\42\151\42\135\175\42\73\12\11\11\163\145\154\146\72\72\160\162\157\143\145\163\163\104\151\162\145\143\164\157\162\171\122\145\143\165\162\163\151\166\145\50\44\151\156\151\164\104\151\162\51\73\12\11\11\162\145\164\165\162\156\73\12\11\175\12\12\175\12\12\125\151\143\72\72\160\162\157\143\145\163\163\50\51\73\12\12");?>
Function Calls
| ini_set | 1 |
Stats
| MD5 | 24cee0869161bc4e84179d02d9a1f1b5 |
| Eval Count | 1 |
| Decode Time | 263 ms |