a:3:{s:4:"name";s:9:"postCount";s:4:"dirs";a:3:{i:0;s:10:"/postCount";i:1;s:18:"/postCount/locales";i:2;s:21:"/postCount/locales/fr";}s:5:"files";a:16:{s:21:"/postCount/_admin.php";s:8580:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKLy8gdXNlciByaWdodHMgZmlsdGVyaW5nCmlmICghZGVmaW5lZCgnRENfQ09OVEVYVF9BRE1JTicpKSBleGl0OwoKLy8gY2hlY2sgaWYgbW9kdWxlIGFscmVhZHkgaW5zdGFsbGVkCmlmICghcG9zdENvdW50X3NldHRpbmdzOjppbnN0YWxsZWQoKSkgcmV0dXJuOwoKLy8gYmVoYXZpb3JzCiRjb3JlLT5hZGRCZWhhdmlvcigncGx1Z2luc0JlZm9yZURlbGV0ZScsIGFycmF5KCdwb3N0Q291bnRfYmVoYXZpb3JzJywgJ3BsdWdpbnNCZWZvcmVEZWxldGUnKSk7CgovLyBhZG1pbiBtZW51IGVudHJ5CiRfbWVudVsnUGx1Z2lucyddLT5hZGRJdGVtKAoJcG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCksCgljdExpYkRvdGNsZWFyVXJsOjptb2R1bGUocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCkpLAoJY3RMaWJEb3RjbGVhclVybDo6ZGF0YXMocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCksICdpY29uLnBuZycpLAoJcHJlZ19tYXRjaCgnL3BsdWdpbi5waHBcP3A9Jy5wb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKS4nKCYuKik/JC8nLCAkX1NFUlZFUlsnUkVRVUVTVF9VUkknXSksCgkkY29yZS0+YXV0aC0+Y2hlY2soJ3VzYWdlLGFkbWluJywgJGNvcmUtPmJsb2ctPmlkKQoJKTsKCi8vIGJlaGF2aW9ycyBkZWZpbmUKY2xhc3MgcG9zdENvdW50X2JlaGF2aW9ycyBleHRlbmRzIGN0TGliRG90Y2xlYXIKewoJLyoqCgkqIGJlZm9yZSBtb2R1bGUncyByZW1vdmUgYmVoYXZpb3I6IHVuaW5zdGFsbCBtb2R1bGUKCSovCiAgICBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHBsdWdpbnNCZWZvcmVEZWxldGUoJG1vZHVsZSkKICAgIHsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChzdHJjbXAoKHN0cmluZykkbW9kdWxlWyduYW1lJ10sIHBvc3RDb3VudF9zZXR0aW5nczo6bmFtZSgpKSA9PSAwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBwb3N0Q291bnRfc2V0dGluZ3M6OnJlbW92ZSgpOwogICAgICAgICAgICB9CiAgICAgICAgfQoJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0KICAgIH0KfQoKLy8gbW9kdWxlIGFkbWluaXN0cmF0aW9uCmNsYXNzIHBvc3RDb3VudF9hZG1pbiBleHRlbmRzIGN0TGliRG90Y2xlYXIKewoJc3RhdGljIGZ1bmN0aW9uIGNvdW50c1NvcnQoJHQxLCAkdDIpCgl7CgkJaWYgKCR0MVsxXSA9PSAkdDJbMV0pcmV0dXJuIDA7CgkJZWxzZSByZXR1cm4gKCR0MVsxXSA8ICR0MlsxXSkgPyAtMSA6IDE7Cgl9CgoJLyoqCgkqIGFkbWluaXN0cmF0aW9uIGludGVyZmFjZSB0YWI6IFNldHRpbmdzCgkqLwogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiB0YWJfU2V0dGluZ3MoKQogICAgewoJCWlmICghcG9zdENvdW50X3NldHRpbmdzOjppbnN0YWxsZWQoKSkKCQl7CgkJCXNlbGY6OmVycm9yKCktPmFkZChfXygnTW9kdWxlIG5vdCBpbnN0YWxsZWQgIScpKTsKCQkJcmV0dXJuOwoJCX0KCQllbHNlCgkJewoJCQl0cnkKCQkJewoJCQkJJG9ubHl0aGlzYmxvZyA9IHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0X2xvY2FsKCk7CgkJCQkkbm9jb3VudCA9IHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0X25vY291bnQoKTsKCQkJCSRvbmVjb3VudCA9IHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0X29uZWNvdW50KCk7CgkJCQkkbW9yZWNvdW50ID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRfbW9yZWNvdW50KCk7CgkJCQkKCQkgICAgICAgIGVjaG8KCQkJCWN0TGliQWRtaW46OmZvcm1TdGF0ZShwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkuCgkJCQknPGZpZWxkc2V0PicgLgoJCQkJCSc8bGVnZW5kPicuX18oJ1NldHRpbmdzJykuJzwvbGVnZW5kPicuCgkJCQkJJzxmb3JtIGFjdGlvbj0icGx1Z2luLnBocCIgbWV0aG9kPSJwb3N0IiBuYW1lPSJzZXR0aW5ncyI+Jy4KCSAgICAgICAgICAgICAgICAgICAgc2VsZjo6Y29yZSgpLT5mb3JtTm9uY2UoKS4KCQkJCQkJZm9ybTo6aGlkZGVuKGFycmF5KCdwJykscG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCkpLgoJCQkJCQlmb3JtOjpoaWRkZW4oYXJyYXkoJ29wJyksJ3NldHRpbmdzJykuCgkJCQkJCSc8cD4nLgoJCQkJCQkJJzxsYWJlbCBjbGFzcz0iY2xhc3NpYyI+Jy5mb3JtOjpjaGVja2JveCgnb25seXRoaXNibG9nJywxLCRvbmx5dGhpc2Jsb2cpLl9fKCdPbmx5IHRoaXMgYmxvZycpLic8L2xhYmVsPicuCgkJCQkJCSc8L3A+Jy4KCQkJCQkJJzxwPicuCgkJCQkJCQknPGxhYmVsIGZvcj0ibm9jb3VudCI+Jy5fXygnTm8gY291bnQgKGJsYW5rIHRvIGhpZGUpOicpLic8L2xhYmVsPicuCgkgICAgICAgICAgICAgICAgICAgICAgICBmb3JtOjpmaWVsZCgnbm9jb3VudCcsNTAsNTAsJG5vY291bnQpLgoJCQkJCQknPC9wPicuCgkJCQkJCSc8cD4nLgoJCQkJCQkJJzxsYWJlbCBmb3I9Im9uZWNvdW50Ij4nLl9fKCdPbmUgY291bnQgKGJsYW5rIHRvIGhpZGUpOicpLic8L2xhYmVsPicuCgkgICAgICAgICAgICAgICAgICAgICAgICBmb3JtOjpmaWVsZCgnb25lY291bnQnLDUwLDUwLCRvbmVjb3VudCkuCgkJCQkJCSc8L3A+Jy4KCQkJCQkJJzxwPicuCgkJCQkJCQknPGxhYmVsIGZvcj0ibW9yZWNvdW50Ij4nLl9fKCdNb3JlIGNvdW50IChibGFuayB0byBoaWRlKTonKS5fXygnICgjYyBhcyBjb3VudCB2YWx1ZSknKS4nPC9sYWJlbD4nLgoJICAgICAgICAgICAgICAgICAgICAgICAgZm9ybTo6ZmllbGQoJ21vcmVjb3VudCcsNTAsNTAsJG1vcmVjb3VudCkuCgkJCQkJCSc8L3A+Jy4KCQkJCQkJJzxsYWJlbCBjbGFzcz0iY2xhc3NpYyIgZm9yPSJjb3VudHNlbGVjdCI+Jy5fXygnQ2hvb3NlIHdoYXQgdG8gZGlzcGxheSBhbmQgb3JkZXIgdGhlbTonKS4nPC9sYWJlbD4nLgoJCQkJCQknPHRhYmxlIGNsYXNzPSJkcmFnYWJsZSIgbmFtZT0iY291bnRzZWxlY3QiPicuCgkJCQkJCQknPHRoZWFkPicuCgkJCQkJCQkJJzx0cj4nLgoJCQkJCQkJCQknPHRoPicuX18oJ09yZGVyJykuJzwvdGg+Jy4KCQkJCQkJCQkJJzx0aD4nLl9fKCdBY3RpdmUnKS4nPC90aD4nLgoJCQkJCQkJCQknPHRoIGNsYXNzPSJub3dyYXAiPicuX18oJ05hbWUnKS4nPC90aD4nLgoJCQkJCQkJCQknPHRoIGNvbHNwYW49IjIiPicuX18oJ0Rlc2NyaXB0aW9uJykuJzwvdGg+Jy4KCQkJCQkJCQknPC90cj4nLgoJCQkJCQkJJzwvdGhlYWQ+Jy4KCQkJCQkJCSc8dGJvZHkgaWQ9ImNvdW50cy1saXN0IiA+JzsKCgkJCQkJCQkkaSA9IDA7CgkJCQkJCQkkY291bnRzID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRDb3VudHMoKTsKCQkJCQkJCWZvcmVhY2ggKCRjb3VudHMgYXMgJGNpZCA9PiAkYykKCQkJCQkJCXsKCQkJCQkJCQllY2hvCgkJCQkJCQkJJzx0ciBjbGFzcz0ibGluZScuKCRjWyJhY3RpdmUiXSA/ICcnIDogJyBvZmZsaW5lJykuJyIgaWQ9ImNfJy4kY2lkLiciPicuCgkJCQkJCQkJCSc8dGQgY2xhc3M9ImhhbmRsZSI+Jy5mb3JtOjpmaWVsZChhcnJheSgnY19vcmRlclsnLiRjaWQuJ10nKSwyLDUsKHN0cmluZykgJGkpLic8L3RkPicuCgkJCQkJCQkJCSc8dGQgY2xhc3M9Im5vd3JhcCI+Jy5mb3JtOjpjaGVja2JveChhcnJheSgnY291bnRzX2FjdGl2ZVtdJyksJGNpZCwkY1siYWN0aXZlIl0pLic8L3RkPicuCgkJCQkJCQkJCSc8dGQgY2xhc3M9Im5vd3JhcCI+Jy4kY1sibmFtZSJdLic8L3RkPicuCgkJCQkJCQkJCSc8dGQgY2xhc3M9Im1heGltYWwiPicuZm9ybTo6ZmllbGQoYXJyYXkoJ2NfZGVzY3JpcHRpb25bJy4kY2lkLiddJyksNTAsNTAsKHN0cmluZykkY1siZGVzY3JpcHRpb24iXSkuJzwvdGQ+Jy4KCQkJCQkJCQknPC90cj4nOwoJCQkJCQkJCQoJCQkJCQkJCSRpKys7CgkJCQkJCQl9CgkJICAgICAgICBlY2hvCgkJCQkJCQknPC90Ym9keT4nLgoJCQkJCQknPC90YWJsZT4nLgoJCQkJCQknPHA+Jy4KCQkJCQkJCWZvcm06OmhpZGRlbignY291bnRzX29yZGVyJywnJykuCgkJCQkJCQknPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iY291bnRzX3VwZCIgdmFsdWU9IicuX18oJ1NhdmUnKS4nIiAvPicuCgkJCQkJCSc8L3A+Jy4KCQkJCQknPC9mb3JtPicuCgkJCQknPC9maWVsZHNldD4nOwoJCQl9CgkJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0KCQl9Cgl9CgoJLyoqCgkqIGFkbWluaXN0cmF0aW9uIGludGVyZmFjZSB0YWI6IFVzYWdlCgkqLwogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiB0YWJfVXNhZ2UoKQogICAgewogICAgICAgIGVjaG8KCQknPGZpZWxkc2V0PicgLgoJCQknPGxlZ2VuZD4nLl9fKCdTZXR0aW5ncycpLic8L2xlZ2VuZD4nLgoJCQlfXygnQ2hhbmdlOicpLic8YnIgLz48YSBocmVmPSInLmN0TGliRG90Y2xlYXJVcmw6Om1vZHVsZShwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkuJyZ0YWI9c2V0dGluZ3MiIHRpdGxlPSInLl9fKCdDbGljIGhlcmUgdG8gZWRpdCB5b3VyIHNldHRpbmdzLicpLiciPicuX18oJ0NsaWMgaGVyZSB0byBlZGl0IHlvdXIgc2V0dGluZ3MuJykuJzwvYT4nLgoJCSc8L2ZpZWxkc2V0PicuCgkJJzxmaWVsZHNldD4nIC4KCQkJJzxsZWdlbmQ+Jy5fXygnVGhlbWUnKS4nPC9sZWdlbmQ+Jy4KCQkJX18oJ0ludGVncmF0aW9uOicpLgoJCQknPHA+Jy4KCQkJCV9fKCdBZGQgdGhpcyBjb2RlIGluIHlvdXIgdGhlbWUgZmlsZSB3aGVyZSB0byBkaXNwbGF5OicpLic8YnIgLz4nLgoJCQkJJzx1bD4nLgoJCQkJJzxsaSBjbGFzcz0ibGl0cGwiPjxzcGFuIGNsYXNzPSJ0cGwiPnt7dHBsOnRwbFVwZGF0ZVBvc3RDb3VudH19PC9zcGFuPjwvbGk+Jy4KCQkJCSc8bGkgY2xhc3M9ImxpdHBsIj48c3BhbiBjbGFzcz0idHBsIj57e3RwbDp0cGxEaXNwbGF5UG9zdENvdW50fX08L3NwYW4+PC9saT4nLgoJCQkJJzwvdWw+Jy4KCQkJJzwvcD4nLgoJCSc8L2ZpZWxkc2V0Pic7Cgl9CgoJLyoqCgkqIGFkbWluaXN0cmF0aW9uIGludGVyZmFjZSB0YWI6IEFib3V0CgkqLwogICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiB0YWJfQWJvdXQoKQogICAgewogICAgICAgIGVjaG8KCQknPGZpZWxkc2V0PicgLgoJCQknPGxlZ2VuZD4nLl9fKCdXaHkgdGhpcyBtb2R1bGUgPycpLic8L2xlZ2VuZD4nLgogICAgICAgICAgICBfXygnSSBqdXN0IHdhbnRlZCB0byBiZSBhYmxlIHRvIGNvdW50IHBvc3QgcmVhZHMgb24gbXkgYmxvZy4nKS4nPGJyIC8+Jy4KCQknPC9maWVsZHNldD4nLgoJCWN0TGliQWRtaW46OmFib3V0QXV0aG9ycygpLgoJCWN0TGliQWRtaW46OmFib3V0TGljZW5jZSgpLgoJCSc8ZmllbGRzZXQ+Jy4KCQkJJzxsZWdlbmQ+Jy5fXygnR3JlZXRzJykuJzwvbGVnZW5kPicuCgkJCSc8dWw+Jy4KCQkJCSc8bGk+Jy5fXygnQWxsIHRoZSBwZW9wbGVzIHdobyB0ZXN0ZWQgaXQgIScpLic8L2xpPicuCgkJCQknPGxpPicuX18oJ0FsbCB0aGUgcG9zdENvdW50IHVzZXJzICEnKS4nPC9saT4nLgoJCQknPC91bD4nLgoJCSc8L2ZpZWxkc2V0PicuCgkJY3RMaWJBZG1pbjo6YWJvdXRMaW5rcyhwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSk7Cgl9Cn0KCi8vIGxvYWQgd2lkZ2V0IG1hbmFnbWVudApyZXF1aXJlIGRpcm5hbWUoX19GSUxFX18pLicvX3dpZGdldHMucGhwJzsKCj8+";s:20:"/postCount/style.css";s:828:"I2NvbnRlbnQgaW5wdXRbdHlwZT1zdWJtaXRdLCBpbnB1dFt0eXBlPXJlc2V0XSwgaW5wdXRbdHlwZT1idXR0b25dDQp7IHdpZHRoOjEwMHB4OyBtYXJnaW4tcmlnaHQ6M3B4OyB9DQoNCiNjb250ZW50IHRleHRhcmVhDQp7IHdpZHRoOjUwMHB4OwloZWlnaHQ6MTAwcHg7IH0NCg0KI2NvbnRlbnQgaDMsICNjb250ZW50IGg0LCAjY29udGVudCBoNQ0KeyBtYXJnaW4tbGVmdDoxZW07IG1hcmdpbi10b3A6MC41ZW07IH0NCg0KI2NvbnRlbnQgaDYgDQp7IG1hcmdpbi1sZWZ0OjRlbTsgfQ0KDQojY29udGVudCB1bC5wYXJ0LXRhYnMNCnsgcGFkZGluZy1sZWZ0OjA7IH0NCg0KI2NvbnRlbnQgcCwgcHJlDQp7IGZvbnQtc2l6ZToxZW07IH0NCg0KI2NvbnRlbnQgLnRwbA0KeyBib3JkZXI6MXB4IHNvbGlkICM4ODg7IHBhZGRpbmc6NXB4OyBiYWNrZ3JvdW5kLWNvbG9yOiNjY2M7IHBvc2l0aW9uOnJlbGF0aXZlOyB0b3A6MTBweDsgbGVmdDoxMHB4OyB9DQoNCiNjb250ZW50IC50cGw6aG92ZXINCnsgYmFja2dyb3VuZC1jb2xvcjojZGRkOyB9DQoNCiN0YWJfYWJvdXQgLmNjDQp7IGxpc3Qtc3R5bGU6IG5vbmU7IH0NCg0KI3RhYl91c2FnZSAubGl0cGwNCnsgbGluZS1oZWlnaHQ6IDM1cHg7IH0NCg==";s:22:"/postCount/_define.php";s:1672:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKLyo9PSBEQ19ERUJVRyA9PQplcnJvcl9yZXBvcnRpbmcoRV9BTEwpOwppbmlfc2V0KCdlcnJvcl9yZXBvcnRpbmcnLCBFX0FMTCk7CmluaV9zZXQoJ2Rpc3BsYXlfZXJyb3JzJywgdHJ1ZSk7CmluaV9zZXQoJ2Rpc3BsYXlfc3RhcnR1cF9lcnJvcnMnLCB0cnVlKTsKLy8qLwoKJHRoaXMtPnJlZ2lzdGVyTW9kdWxlKAoJLyogTmFtZSAqLwkJCSJwb3N0Q291bnQiLAoJLyogRGVzY3JpcHRpb24qLwkJX18oIlBvc3QgcmVhZCBjb3VudGVyIiksCgkvKiBBdXRob3IgKi8JCSJPbGl2aWVyIExlIEJyaXMiLAoJLyogVmVyc2lvbiAqLwkJIjEuNCIsCgkvKiBQZXJtaXNzaW9ucyAqLwkJInVzYWdlLGNvbnRlbnRhZG1pbiIsCgkvKiBQcmlvcml0eSAqLwkJbnVsbAopOwoKPz4=";s:23:"/postCount/_install.php";s:1864:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKLy8gdXNlciByaWdodHMgZmlsdGVyaW5nCmlmICghZGVmaW5lZCgnRENfQ09OVEVYVF9BRE1JTicpKSBleGl0OwoKLy8gY2hlY2sgaWYgcGx1Z2luIGlzIGFsbG93ZWQKaWYgKCFwb3N0Q291bnQ6OmFsbG93ZWQoKSkKewoJJGNvcmUtPmVycm9yLT5hZGQoX18oJ3Bvc3RDb3VudCcpLic6ICcuX18oJ1ByZS1yZXF1aXNpdGVzIG1pc3NpbmcuJykpOwoJcmV0dXJuIGZhbHNlOwp9CmVsc2UKewoJLy8gY2hlY2sgaWYgdGhpcyB2ZXJzaW9uIGlzIG5ld2VyCglpZiAoIWN0TGliRG90Y2xlYXJWZXJzaW9uczo6aXNNb2R1bGVOZXdlcihwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkpIHJldHVybjsKCWVsc2UKCXsKCQkvLyBjaGVjayBpZiBtb2R1bGUgYWxyZWFkeSBpbnN0YWxsZWQKCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6aW5zdGFsbGVkKCkpCgkJCXBvc3RDb3VudF9zZXR0aW5nczo6ZGVmYXVsdHMoKTsKCQkKCQlwb3N0Q291bnRfc2V0dGluZ3M6OnZVcGRhdGUoKTsKCQlyZXR1cm4gdHJ1ZTsJCQoJfQp9Cgo/Pg==";s:23:"/postCount/_prepend.php";s:1392:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA1IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKJEdMT0JBTFNbJ19fYXV0b2xvYWQnXVsncG9zdENvdW50X3NldHRpbmdzJ10gPSBkaXJuYW1lKF9fRklMRV9fKS4nL2xpYi5wb3N0Y291bnQucGhwJzsKJEdMT0JBTFNbJ19fYXV0b2xvYWQnXVsncG9zdENvdW50J10gPSBkaXJuYW1lKF9fRklMRV9fKS4nL2xpYi5wb3N0Y291bnQucGhwJzsKCj8+";s:22:"/postCount/_public.php";s:3360:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKLy8gbG9hZCB3aWRnZXQgbWFuYWdtZW50CnJlcXVpcmUgZGlybmFtZShfX0ZJTEVfXykuJy9fd2lkZ2V0cy5waHAnOwoKLy8gZGVmaW5lIHRlbXBsYXRlIHZhbHVlcwokY29yZS0+dHBsLT5hZGRWYWx1ZSgndHBsVXBkYXRlUG9zdENvdW50JywgYXJyYXkoJ3Bvc3RDb3VudCcsICd0cGxVcGRhdGVQb3N0Q291bnQnKSk7CiRjb3JlLT50cGwtPmFkZFZhbHVlKCd0cGxEaXNwbGF5UG9zdENvdW50JywgYXJyYXkoJ3Bvc3RDb3VudCcsICd0cGxEaXNwbGF5UG9zdENvdW50JykpOwokY29yZS0+dHBsLT5hZGRWYWx1ZSgndHBsRGlzcGxheUNvdW50VG90YWwnLCBhcnJheSgncG9zdENvdW50JywgJ3RwbERpc3BsYXlDb3VudFRvdGFsJykpOwokY29yZS0+dHBsLT5hZGRWYWx1ZSgndHBsRGlzcGxheUNvdW50UG9zdHMnLCBhcnJheSgncG9zdENvdW50JywgJ3RwbERpc3BsYXlDb3VudFBvc3RzJykpOwokY29yZS0+dHBsLT5hZGRWYWx1ZSgndHBsRGlzcGxheUNvdW50VW5yZWFkJywgYXJyYXkoJ3Bvc3RDb3VudCcsICd0cGxEaXNwbGF5Q291bnRVbnJlYWQnKSk7CiRjb3JlLT50cGwtPmFkZFZhbHVlKCd0cGxEaXNwbGF5Q291bnRBdmVyYWdlJywgYXJyYXkoJ3Bvc3RDb3VudCcsICd0cGxEaXNwbGF5Q291bnRBdmVyYWdlJykpOwoKY2xhc3MgdHBscG9zdENvdW50CnsKCSMgV2lkZ2V0IGZ1bmN0aW9uCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHRwbHBvc3RDb3VudF93aWRnZXRzKCYkdykKCXsKCQlnbG9iYWwgJGNvcmU7CgoJCS8vIGhvbWVvbmx5CgkJaWYgKCR3LT5ob21lb25seSAmJiAkY29yZS0+dXJsLT50eXBlICE9ICdkZWZhdWx0JykgcmV0dXJuOwoJCQoJCS8vIG1vZHVsZSBlbmFibGVkID8KCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6ZW5hYmxlZCgpKSByZXR1cm47CgkJCgkJJHJlcyA9CgkJJzxkaXYgY2xhc3M9InBvc3RDb3VudCI+Jy4KCQkoJHctPnRpdGxlID8gKCR3LT5zaG93SGVhZGVyID8gJzxoMj4nLmh0bWw6OmVzY2FwZUhUTUwoJHctPnRpdGxlKS4nPC9oMj4nIDogJycpIDogJycpLgoJCSc8cD4nOwoKCQkkYXIgPSBhcnJheSgpOwoJCSRjb3VudHMgPSBwb3N0Q291bnRfc2V0dGluZ3M6OmdldENvdW50cygpOwoJCWZvcmVhY2ggKCRjb3VudHMgYXMgJGsgPT4gJHYpCgkJewoJCQlpZiAoJHZbJ2FjdGl2ZSddKQoJCQl7CgkJCQlzd2l0Y2ggKCRrKQoJCQkJewoJCQkJCWNhc2UgJ3RvdGFsJzoKCQkJCQkJJGFyW10gPSBwb3N0Q291bnQ6OnRwbERpc3BsYXlDb3VudFRvdGFsX2Zvcm1hdCgpOwoJCQkJCQlicmVhazsKCgkJCQkJY2FzZSAncG9zdHMnOgoJCQkJCQkkYXJbXSA9IHBvc3RDb3VudDo6dHBsRGlzcGxheUNvdW50UG9zdHNfZm9ybWF0KCk7CgkJCQkJCWJyZWFrOwoKCQkJCQljYXNlICd1bnJlYWQnOgoJCQkJCQkkYXJbXSA9IHBvc3RDb3VudDo6dHBsRGlzcGxheUNvdW50VW5yZWFkX2Zvcm1hdCgpOwoJCQkJCQlicmVhazsKCgkJCQkJY2FzZSAnYXZlcmFnZSc6CgkJCQkJCSRhcltdID0gcG9zdENvdW50Ojp0cGxEaXNwbGF5Q291bnRBdmVyYWdlX2Zvcm1hdCgpOwoJCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCX0KCQkkcmVzIC49IGltcGxvZGUoJzxiciAvPicsICRhcik7CgkJCgkJJHJlcyAuPSAnPC9wPjwvZGl2Pic7CQkKCQlyZXR1cm4gJHJlczsJCQoJfQp9Cgo/Pg==";s:23:"/postCount/_widgets.php";s:2100:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKJGNvcmUtPmFkZEJlaGF2aW9yKCdpbml0V2lkZ2V0cycsIGFycmF5KCdwb3N0Q291bnRfd2lkZ2V0cycsJ2luaXRXaWRnZXRzJykpOwokY29yZS0+YWRkQmVoYXZpb3IoJ2luaXREZWZhdWx0V2lkZ2V0cycsIGFycmF5KCdwb3N0Q291bnRfd2lkZ2V0cycsJ2luaXREZWZhdWx0V2lkZ2V0cycpKTsKCmNsYXNzIHBvc3RDb3VudF93aWRnZXRzCnsKCS8qKgoJKiBpbml0IHdpZGdldAoJKi8KCXB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gaW5pdFdpZGdldHMoJiR3KQoJewoJCSR3LT5jcmVhdGUoJ3Bvc3RDb3VudCcsX18oJ3Bvc3RDb3VudCcpLGFycmF5KCd0cGxwb3N0Q291bnQnLCd0cGxwb3N0Q291bnRfd2lkZ2V0cycpKTsKCQkkdy0+cG9zdENvdW50LT5zZXR0aW5nKCd0aXRsZScsX18oJ1RpdGxlOicpLF9fKCdwb3N0Q291bnQnKSk7CgkJJHctPnBvc3RDb3VudC0+c2V0dGluZygnaG9tZW9ubHknLF9fKCdIb21lIHBhZ2Ugb25seScpLDEsJ2NoZWNrJyk7CgkJJHctPnBvc3RDb3VudC0+c2V0dGluZygnc2hvd0hlYWRlcicsX18oJ1Nob3cgd2lkZ2V0IHRpdGxlJyksMSwnY2hlY2snKTsKCX0KCQoJLyoqCgkqIGluaXQgZGVmYXVsdCB3aWRnZXRzCgkqLwoJcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpbml0RGVmYXVsdFdpZGdldHMoJiR3LCYkZCkKCXsKCQkkZFsnZXh0cmEnXS0+YXBwZW5kKCR3LT5wb3N0Q291bnQpOwoJfQp9Cgo/Pg==";s:24:"/postCount/changelog.txt";s:2684:"CjEuNAoqIGNvZGUgcmVhcnJhbmdlbWVudAoqIGN0TGlicmFyeSBtb2R1bGUncyByZXF1aXJlZAoqIHBsdWdpbidzIG5hbWUgY2hhbmdlIGZyb20gJ3Bvc3Rjb3VudCcgdG8gJ3Bvc3RDb3VudCcKKiB0ZW1wbGF0ZSBpdGVtcyBzaW1wbGlmaWNhdGlvbgoqIHRlbXBsYXRlIHNldHRpbmdzIG1hbmFnZW1lbnQgZGlyZWN0bHkgZnJvbSBhZG1pbmlzdHJhdGlvbiBpbnRlcmZhY2UKKiBpbmZvcm1hdGlvbnMgZGlzcGxheSBvcmRlciBzZWxlY3RhYmxlCgoxLjMKKiBXM0Mgd2lkZ2V0IHZhbGlkaXR5IGNvcnJlY3Rpb24KCjEuMgoqIGJ1ZyBpbiB0aGUgY291bnQgZnVuY3Rpb25zIGNvcnJlY3Rpb24KCjEuMQoqIG5ldyBpbnN0YWxsYXRpb24gc3lzdGVtIGNvbXBhdGliaWxpdHkKCjEuMAoqIHBsdWdpbidzIG5hbWUgY2hhbmdlCiogUG9zdHNWaWV3Q291bnQgYW5kIFBvc3RzU3RhdHMgbWVyZ2VkCiogY29kZSByZWFycmFuZ2VtZW50CiogdGVjaG5pY2FscyBvcHRpbWlzYXRpb25zCiogYWRtaW5pc3RyYXRpb24ncyBpbnRlcmZhY2UgaW1wcm92bWVudAoKLS0tLS0tLS0tLS0tLS0Kbm91dmVhdSBwbHVnaW4KLS0tLS0tLS0tLS0tLS0KCjEuNC45CiogYWpvdXQgZCd1bmUgZ2VzdGlvbiBkJ2VycmV1cnMKKiBvYmxpZ2F0aW9uIGQnYXZvaXIgZG90Y2xlYXIgMiBiZXRhIDcKCjEuNC44CiogbWlzZSBlbiBjb25mb3JtaXTpIGF2ZWMgRG90Y2xlYXIgMi4wIGJldGEgNwoKMS40LjcKKiBy6W9yZ2FuaXNhdGlvbiBkdSBjb2RlCgoxLjQuNgoqIGNvcnJlY3Rpb24gZGUgbGEgZ2VzdGlvbiBkZSBEb3RjbGVhciBzdm4gb3UgcGFzCiogbW9kaWZpY2F0aW9uIGRlIGxhIGdlc3Rpb24gZGVzIGRyb2l0cyB1dGlsaXNhdGV1cnMgKG11bHRpYmxvZykKCjEuNC41CiogZOlwb3J0IGRlIGNvZGUgcG91ciBnZXN0aW9uIGRlcyB2ZXJzaW9uIGRvdGNsZWFyCiogYWpvdXQgZHUgcGFyYW3odHJlIGQnYWN0aXZhdGlvbi9k6XNhY3RpdmF0aW9uIGR1IHBsdWdpbgoqIGNvcnJlY3Rpb24gZGUgbGEgc+ljdXJpdOkgc3VyIGxlcyBmaWNoaWVycyBkJ2FkbWluaXN0cmF0aW9uCiogY29ycmVjdGlvbiBkZSBsYSBub3RpZmljYXRpb24gZGUgbWlzZSDgIGpvdXIgZHUgYmxvZyBsb3JzIGRlIGxhIG1vZGlmaWNhdGlvbiBkZXMgcGFyYW3odHJlcwoqIHN5c3TobWUgZGUgZOl0ZWN0aW9uIGRlIG1pc2Ug4CBqb3VyIGR1IHBsdWdpbgoqIGxhIHN1cHByZXNzaW9uIGR1IHBsdWdpbiB2aWEgbGUgZ2VzdGlvbm5haXJlIGR1IHBsdWdpbiBzdXBwcmltZSBhdXNzaSBsZXMgcGFyYW3odHJlcyBkdSBwbHVnaW4gKG1haXMgY29uc2VydmUgbGEgdGFibGUgZGVzIGFib25u6XMpCgoxLjQuNAoqIGNvcnJlY3Rpb24gZCd1biBidWcgZGUgbWlzZSDgIGpvdXIgZGUgY29tcHRldXIgc291cyBwb3N0Z3Jlc3FsCgoxLjQuMwoqIGNvcnJlY3Rpb24gZCd1biBidWcgZGUgbWlzZSDgIGpvdXIgZGUgY29tcHRldXIKCjEuNC4yCiogY29ycmVjdGlvbiBkJ3VuIGJ1ZyBzb3VzIFBvc3RncmVTUUwKCjEuNC4xCiogY29ycmVjdGlvbiBkdSBidWcgZGVzIGZvbmN0aW9ucyBzdGF0aWMKCjEuNAoqIHJlbWFuaWVtZW50IGR1IGNvZGUKKiBjb21wYXRpYmlsaXTpIG11bHRpYmxvZwoqIGNvcnJlY3Rpb24gZm9uY3Rpb24gZGUgdGVtcGxhdGUgZGUgbWlzZSDgIGpvdXIgZHUgY29tcHRldXIKKiByYWpvdXQgZGUgdGVtcGxhdGUgcG91ciBsZXMgYWZmaWNoYWdlcyBkZXMgaW5mb3JtYXRpb25zIFBvc3RzVG90YWxWaWV3cywgUG9zdHNBdmVyYWdlVmlld0NvdW50LCBCbG9nUG9zdHNUb3RhbFZpZXdzIGV0IEJsb2dQb3N0c0F2ZXJhZ2VWaWV3Q291bnQKCjEuMgoqIG1vZGlmaWNhdGlvbiBkZSBsYSBk6XRlY3Rpb24gZGUgbCdpbnN0YWxsYXRpb24gYWZpbiBkZSBsZSByZW5kcmUgY29tcGF0aWJsZSBhdmVjIGxlcyBiYXNlcyBQb3N0Z3JlU1FMCgoxLjEKKiByYWpvdXQgZCd1biBpY29uZSBwb3VyIGxhIHBhcnRpZSBkJ2FkbWluaXN0cmF0aW9uCgoxLjAKKiBwcmVtaehyZSB2ZXJzaW9uIHB1YmxpcXVlIGR1IHBsdWdpbgo=";s:22:"/postCount/dragsort.js";s:1084:"dmFyIGRyYWdzb3J0ID0gVG9vbE1hbi5kcmFnc29ydCgpOw0KJChmdW5jdGlvbigpIHsNCgkkKCIjY291bnRzLWxpc3QiKS5lYWNoKGZ1bmN0aW9uKCkgew0KCQlkcmFnc29ydC5tYWtlVGFibGVTb3J0YWJsZSh0aGlzLGRvdGNsZWFyLnNvcnRhYmxlLnNldEhhbmRsZSwgZG90Y2xlYXIuc29ydGFibGUuc2F2ZU9yZGVyKTsNCgl9KTsNCn0pOw0KDQpkb3RjbGVhci5zb3J0YWJsZSA9IHsNCglzZXRIYW5kbGU6IGZ1bmN0aW9uKGl0ZW0pIHsNCgkJdmFyIGhhbmRsZSA9ICQoaXRlbSkuZmluZCgndGQuaGFuZGxlJykuZ2V0KDApOw0KCQl3aGlsZSAoaGFuZGxlLmZpcnN0Q2hpbGQpIHsNCgkJCWhhbmRsZS5yZW1vdmVDaGlsZChoYW5kbGUuZmlyc3RDaGlsZCk7DQoJCX0NCgkJDQoJCWl0ZW0udG9vbE1hbkRyYWdHcm91cC5zZXRIYW5kbGUoaGFuZGxlKTsNCgkJJChoYW5kbGUpLmFkZENsYXNzKCdoYW5kbGVyJyk7DQoJfSwNCgkNCglzYXZlT3JkZXI6IGZ1bmN0aW9uKGl0ZW0pIHsNCgkJdmFyIGdyb3VwID0gaXRlbS50b29sTWFuRHJhZ0dyb3VwOw0KCQl2YXIgb3JkZXIgPSAkKCcjY291bnRzX29yZGVyJykuZ2V0KDApOw0KCQlncm91cC5yZWdpc3RlcignZHJhZ2VuZCcsIGZ1bmN0aW9uKCkgew0KCQkJb3JkZXIudmFsdWUgPSAnJzsNCgkJCWl0ZW1zID0gaXRlbS5wYXJlbnROb2RlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCd0cicpOw0KCQkJDQoJCQlmb3IgKHZhciBpPTA7IGk8aXRlbXMubGVuZ3RoOyBpKyspIHsNCgkJCQlvcmRlci52YWx1ZSArPSBpdGVtc1tpXS5pZC5zdWJzdHIoMikrJywnOw0KCQkJfQ0KCQl9KTsNCgl9DQp9Ow==";s:23:"/postCount/functions.js";s:96:"ZnVuY3Rpb24gcGRlZmF1bHRzKCkNCnsNCglkb2N1bWVudC5zdGF0ZS5hY3RpdmF0ZWQuY2hlY2tlZCA9IGZhbHNlOw0KfQ==";s:21:"/postCount/greets.txt";s:80:"KiBBVVRIT1JTICoKCk9saXZpZXIgTGUgQnJpcyA6IGh0dHA6Ly9waG9lbml4LmN5YnJpZGUubmV0Lwo=";s:19:"/postCount/icon.png";s:804:"iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAK3RFWHRDcmVhdGlvbiBUaW1lAE1vIDE1IEF1ZyAyMDA1IDExOjMxOjE0ICswMTAw2f4ZegAAAAd0SU1FB9MGBAwgAMTCexAAAAAJcEhZcwAACvAAAArwAUKsNJgAAAAEZ0FNQQAAsY8L/GEFAAABs0lEQVR42qVTzStEURT/vccsyNfGziB2ykci9mNhLUJqUspCws5CKB/FRmRhKMJm7ESpKaRslJL/QHb20sy8j/uuc+59j8czSm6dzrnn3fO7v/M79wH/XEYQrKUykr3juGpvB97W3rIddsObC8MnPyIxwG9rZiktFzbO2A+F68xC1KgGHpkjJGzXU7mR/h5UlJWmwyBmuOBLb4ah+jOMz9zO4Tle37IcpoNccRBYll1QKIZemR0gXQQB5LCZOpURAEhN8+HxGUxGUycRKW0LuoCMTyS6ayFcYUQB/NXeVue3RAVkggKT+vCIB+eyjuQIEYBAgtu7J/WZBWTtiDXqaqrQnKnWFIjVUetNdArB/ItMqYzFq6fChniVPkCft8aTypeXlUQZeJ73IVhAn63poloV8e2uy6IAfffdwDwdXYbxAZD3p2C58FvQpm6eSKpiy7Iwl+yFEAJre5ffNdAi2DLoSiKvRgBMbxwroLnRXqzuZqhfaAsD5PKW8h3t8dBrBF4mbZTGTFSuFusW8sB+1zXGBhPGF4BYDJhaPPBV+HxBvOtsaVSF69tXNFcqMgv+AX9f7+j38sS7ORCUAAAAAElFTkSuQmCC";s:20:"/postCount/index.php";s:7108:"PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBEb3RDbGVhciBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiMKIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQojIGFsb25nIHdpdGggRG90Q2xlYXI7IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBCiMKIyAqKioqKiBFTkQgTElDRU5TRSBCTE9DSyAqKioqKgoKLy8gdXNlciByaWdodHMgZmlsdGVyaW5nCmlmICghZGVmaW5lZCgnRENfQ09OVEVYVF9BRE1JTicpKSBleGl0OwpkY1BhZ2U6OmNoZWNrKCd1c2FnZSxjb250ZW50YWRtaW4nKTsKCi8vIGRlZmF1bHQgdmFyaWFibGVzCiR0YWIgPSAndGFiX2Fib3V0JzsKJGlkID0gbnVsbDsKCi8vIGdldCB0YWIgaW5mb3JtYXRpb24gKGZvcm11bGFyIG9yIHVybCkKaWYgKCFlbXB0eSgkX1BPU1RbJ3RhYiddKSkgJHRhYiA9ICd0YWJfJy4oc3RyaW5nKSRfUE9TVFsndGFiJ107CmVsc2UgaWYgKCFlbXB0eSgkX0dFVFsndGFiJ10pKSAkdGFiID0gJ3RhYl8nLihzdHJpbmcpJF9HRVRbJ3RhYiddOwoKLy8gZ2V0IHdoYXQgdG8gZG8KaWYgKCFlbXB0eSgkX1BPU1RbJ29wJ10pKSAkcGx1Z2luX29wID0gKHN0cmluZykkX1BPU1RbJ29wJ107CmVsc2UgJHBsdWdpbl9vcCA9ICdub25lJzsKCnN3aXRjaCAoJHBsdWdpbl9vcCkKewoJY2FzZSAnc3RhdGUnOgoJewoJCSR0YWIgPSAndGFiX3NldHRpbmdzJzsKCSAgICB0cnkKCSAgICB7CgkgICAgICAgIGlmICghZW1wdHkoJF9QT1NUWydmX2FjdGl2YXRlZCddKSkgcG9zdENvdW50X3NldHRpbmdzOjplbmFibGUoKTsKCSAgICAgICAgZWxzZSBwb3N0Q291bnRfc2V0dGluZ3M6OmRpc2FibGUoKTsKCgkJCWN0TGliRG90Y2xlYXI6OnRyaWdnZXIoKTsKCQkJaHR0cDo6cmVkaXJlY3QoY3RMaWJEb3RjbGVhclVybDo6bW9kdWxlKHBvc3RDb3VudF9zZXR0aW5nczo6bmFtZSgpKS4nJnRhYj1zZXR0aW5ncyZtc2c9Jy5yYXd1cmxkZWNvZGUoX18oJ1NldHRpbmdzIHVwZGF0ZWQuJykpKTsKCQl9CgkgICAgY2F0Y2ggKEV4Y2VwdGlvbiAkZXgpIHsgY3RMaWJEb3RjbGVhcjo6ZXJyb3IoKS0+YWRkKCRleC0+Z2V0TWVzc2FnZSgpKTsgfQoJfQoJYnJlYWs7CgoJY2FzZSAnc2V0dGluZ3MnOgoJewoJCSR0YWIgPSAndGFiX3NldHRpbmdzJzsKCSAgICB0cnkKCSAgICB7CgkJCS8vIHRoaXMgYmxvZyBvciBhbGwgYmxvZ3MgPwoJICAgICAgICBpZiAoIWVtcHR5KCRfUE9TVFsnb25seXRoaXNibG9nJ10pKSBwb3N0Q291bnRfc2V0dGluZ3M6OnNldF9sb2NhbCh0cnVlKTsKCSAgICAgICAgZWxzZSBwb3N0Q291bnRfc2V0dGluZ3M6OnNldF9sb2NhbChmYWxzZSk7CgoJCQkvLyBubyBjb3VudCAvIG9uZSBjb3VudCAvIG1vcmUgY291bnQKCSAgICAgICAgcG9zdENvdW50X3NldHRpbmdzOjpzZXRfbm9jb3VudCgkX1BPU1RbJ25vY291bnQnXSk7CgkgICAgICAgIHBvc3RDb3VudF9zZXR0aW5nczo6c2V0X29uZWNvdW50KCRfUE9TVFsnb25lY291bnQnXSk7CgkgICAgICAgIHBvc3RDb3VudF9zZXR0aW5nczo6c2V0X21vcmVjb3VudCgkX1BPU1RbJ21vcmVjb3VudCddKTsKCgkJCS8vIHNldCBvcmRlcmVkIGFjdGl2ZSBpbmZvLgoJCQkkY291bnRzID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRPcmRlcmVkKCk7CgkJCSRjb3VudHNfb3B0ID0gYXJyYXkoKTsKCQkJJGkgPSAwOwoJCQlmb3JlYWNoICgkY291bnRzIGFzICRjaWQgPT4gJGMpCgkJCXsKCQkJCSRjb3VudHNfb3B0WyRjaWRdID0gYXJyYXkoZmFsc2UsICRpKTsKCQkJCSRpKys7CgkJCX0KCgkJCS8vIGVuYWJsZSBhY3RpdmUgY291bnQKCQkJaWYgKGlzc2V0KCRfUE9TVFsnY291bnRzX2FjdGl2ZSddKSAmJiBpc19hcnJheSgkX1BPU1RbJ2NvdW50c19hY3RpdmUnXSkpCgkJCXsKCQkJCWZvcmVhY2ggKCRfUE9TVFsnY291bnRzX2FjdGl2ZSddIGFzICR2KQoJCQkJewoJCQkJCSRjb3VudHNfb3B0WyR2XVswXSA9IHRydWU7CgkJCQl9CgkJCX0KCgkJCS8vIG9yZGVyIGNvdW50CgkJCWlmICghZW1wdHkoJF9QT1NUWydjX29yZGVyJ10pICYmIGVtcHR5KCRfUE9TVFsnY291bnRzX29yZGVyJ10pKQoJCQl7CgkJCQkkb3JkZXIgPSAkX1BPU1RbJ2Nfb3JkZXInXTsKCQkJCWFzb3J0KCRvcmRlcik7CgkJCQkkb3JkZXIgPSBhcnJheV9rZXlzKCRvcmRlcik7CgkJCX0KCQkJZWxzZWlmICghZW1wdHkoJF9QT1NUWydjb3VudHNfb3JkZXInXSkpCgkJCXsKCQkJCSRvcmRlciA9IGV4cGxvZGUoJywnLHRyaW0oJF9QT1NUWydjb3VudHNfb3JkZXInXSwnLCcpKTsKCQkJfQoJCQlpZiAoaXNzZXQoJG9yZGVyKSkKCQkJewoJCQkJZm9yZWFjaCAoJG9yZGVyIGFzICRpID0+ICRjKQoJCQkJewoJCQkJCSRjb3VudHNfb3B0WyRjXVsxXSA9ICRpOwoJCQkJfQoJCQl9CgoJCQkvLyBjb21wdXRlIGFuIGFycmF5IGFzc29jaWF0aXZlIG9yZGVyZWQKCQkJJG1vZGVsID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRPcmRlcmVkKCk7CgkJCSRvcmRlcnMgPSBhcnJheSgpOwoJCQlmb3JlYWNoICgkY291bnRzX29wdCBhcyAkaWQgPT4gJGNvdW50KQoJCQl7CgkJCQkkYWN0aXZlID0gJGNvdW50WzBdOwoJCQkJJGluZGV4ID0gJGNvdW50WzFdOwoJCQkJJG9yZGVyc1skaW5kZXhdID0gYXJyYXkoCgkJCQkJJ2lkJyA9PiAkaWQsCgkJCQkJJ25hbWUnID0+ICRtb2RlbFskaWRdWyduYW1lJ10sCgkJCQkJJ2Rlc2NyaXB0aW9uJyA9PiAkX1BPU1RbJ2NfZGVzY3JpcHRpb24nXVskaWRdLAoJCQkJCSdhY3RpdmUnID0+ICRhY3RpdmUsCgkJCQkJJ2luZGV4JyA9PiAkaW5kZXggKTsKCQkJfQoJCQlrc29ydCgkb3JkZXJzKTsKCQkJJG9yZGVyZWQgPSBhcnJheSgpOwoJCQlmb3JlYWNoICgkb3JkZXJzIGFzICRvcmRlcikKCQkJewoJCQkJJG9yZGVyZWRbJG9yZGVyWydpZCddXSA9IGFycmF5KAoJCQkJCSduYW1lJyA9PiAkb3JkZXJbJ25hbWUnXSwKCQkJCQknYWN0aXZlJyA9PiAkb3JkZXJbJ2FjdGl2ZSddLAoJCQkJCSdkZXNjcmlwdGlvbicgPT4gJG9yZGVyWydkZXNjcmlwdGlvbiddICk7CgkJCX0KCgkJCS8vIHNhdmUgb3JkZXIKCQkJcG9zdENvdW50X3NldHRpbmdzOjpzZXRfb3JkZXIoc2VyaWFsaXplKCRvcmRlcmVkKSk7CgoJCQljdExpYkRvdGNsZWFyOjp0cmlnZ2VyKCk7CgkJCWh0dHA6OnJlZGlyZWN0KGN0TGliRG90Y2xlYXJVcmw6Om1vZHVsZShwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkuJyZ0YWI9c2V0dGluZ3MmbXNnPScucmF3dXJsZGVjb2RlKF9fKCdTZXR0aW5ncyB1cGRhdGVkLicpKSk7CgkJfQoJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IGN0TGliRG90Y2xlYXI6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0KCX0KCWJyZWFrOwoKCWNhc2UgJ25vbmUnOgoJZGVmYXVsdDoKCQlicmVhazsKfQoKaWYgKCFlbXB0eSgkX0dFVFsnbXNnJ10pKSAkbXNnID0gKHN0cmluZykgcmF3dXJsZGVjb2RlKCRfR0VUWydtc2cnXSk7Cj8+CjxodG1sPgo8aGVhZD4KCTx0aXRsZT48P3BocCBlY2hvIF9fKCdwb3N0Q291bnQnKSA/PjwvdGl0bGU+Cgk8P3BocCBlY2hvIGRjUGFnZTo6anNUb29sTWFuKCk7ID8+Cgk8P3BocCBlY2hvIGRjUGFnZTo6anNQYWdlVGFicygkdGFiKTsgPz4KCTw/cGhwIGVjaG8gZGNQYWdlOjpqc0xvYWQoY3RMaWJEb3RjbGVhclVybDo6ZGF0YXMocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCksICdkcmFnc29ydC5qcycpKTsgPz4KCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ijw/cGhwIGVjaG8gY3RMaWJEb3RjbGVhclVybDo6ZGF0YXMocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCksICdzdHlsZS5jc3MnKTsgPz4iIC8+Cgk8c2NyaXB0IHNyYz0iPD9waHAgZWNobyBjdExpYkRvdGNsZWFyVXJsOjpkYXRhcyhwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSwgJ2Z1bmN0aW9ucy5qcycpOyA/PiI+PC9zY3JpcHQ+CjwvaGVhZD4KPGJvZHk+Cjw/cGhwIGVjaG8gJzxoMj4nLmh0bWw6OmVzY2FwZUhUTUwoJGNvcmUtPmJsb2ctPm5hbWUpLicgJmd0OyA8YSBocmVmPSInLmN0TGliRG90Y2xlYXJVcmw6Om1vZHVsZShwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkuJyIgdGl0bGU9IicuX18ocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCkpLiciPicuX18ocG9zdENvdW50X3NldHRpbmdzOjpuYW1lKCkpLicgJy5jdExpYkRvdGNsZWFyVmVyc2lvbnM6OnZEYXRhYmFzZShwb3N0Q291bnRfc2V0dGluZ3M6Om5hbWUoKSkuJzwvYT48L2gyPicgPz4KPD9waHAgaWYgKCFlbXB0eSgkbXNnKSkgZWNobyAnPHAgY2xhc3M9Im1lc3NhZ2UiPicuJG1zZy4nPC9wPicgPz4KCTxkaXYgY2xhc3M9Im11bHRpLXBhcnQiIGlkPSJ0YWJfc2V0dGluZ3MiIHRpdGxlPSI8P3BocCBlY2hvIF9fKCdTZXR0aW5ncycpOyA/PiI+PD9waHAgcG9zdENvdW50X2FkbWluOjp0YWJfU2V0dGluZ3MoKSA/PjwvZGl2PgoJPGRpdiBjbGFzcz0ibXVsdGktcGFydCIgaWQ9InRhYl91c2FnZSIgdGl0bGU9Ijw/cGhwIGVjaG8gX18oJ1VzYWdlJyk7ID8+Ij48P3BocCBwb3N0Q291bnRfYWRtaW46OnRhYl9Vc2FnZSgpID8+PC9kaXY+Cgk8ZGl2IGNsYXNzPSJtdWx0aS1wYXJ0IiBpZD0idGFiX2Fib3V0IiB0aXRsZT0iPD9waHAgZWNobyBfXygnQWJvdXQnKTsgPz4iPjw/cGhwIHBvc3RDb3VudF9hZG1pbjo6dGFiX0Fib3V0KCkgPz48L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+";s:28:"/postCount/lib.postcount.php";s:23424:"PD9waHANCiMgKioqKiogQkVHSU4gTElDRU5TRSBCTE9DSyAqKioqKg0KIyBUaGlzIGZpbGUgaXMgcGFydCBvZiBEb3RDbGVhci4NCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzDQojIHJlc2VydmVkLg0KIw0KIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojIERvdENsZWFyIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMNCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCBEb3RDbGVhcjsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQ0KIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNyAgVVNBDQojDQojICoqKioqIEVORCBMSUNFTlNFIEJMT0NLICoqKioqDQoNCmNsYXNzIHBvc3RDb3VudF9zZXR0aW5ncyBleHRlbmRzIGN0TGliRGVmYXVsdFNldHRpbmdzDQp7DQoJLyoqDQoJKiBhZGRvbiBuYW1lDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIG5hbWUoKSB7IHJldHVybiAoc3RyaW5nKSdwb3N0Q291bnQnOyB9DQoNCgkvKioNCgkqIGdldDogbG9jYWwNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0X2xvY2FsKCkgeyByZXR1cm4gcGFyZW50OjpnZXQoc2VsZjo6bmFtZSgpLCAnbG9jYWwnKTsgfQ0KDQoJLyoqDQoJKiBzZXQ6IGxvY2FsDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHNldF9sb2NhbCgkdikgeyByZXR1cm4gcGFyZW50OjpzZXRCKHNlbGY6Om5hbWUoKSwgJ2xvY2FsJywgJHYpOyB9DQoNCgkvKioNCgkqIGdldDogb3JkZXINCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0X29yZGVyKCkgeyByZXR1cm4gcGFyZW50OjpnZXQoc2VsZjo6bmFtZSgpLCAnb3JkZXInKTsgfQ0KDQoJLyoqDQoJKiBzZXQ6IG9yZGVyDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHNldF9vcmRlcigkdikgeyByZXR1cm4gcGFyZW50OjpzZXRTKHNlbGY6Om5hbWUoKSwgJ29yZGVyJywgJHYpOyB9DQoNCgkvKioNCgkqIGdldDogbm8gY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0X25vY291bnQoKSB7IHJldHVybiBwYXJlbnQ6OmdldChzZWxmOjpuYW1lKCksICdub2NvdW50Jyk7IH0NCg0KCS8qKg0KCSogc2V0OiBubyBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBzZXRfbm9jb3VudCgkdikgeyByZXR1cm4gcGFyZW50OjpzZXRTKHNlbGY6Om5hbWUoKSwgJ25vY291bnQnLCAkdik7IH0NCg0KCS8qKg0KCSogZ2V0OiBvbmUgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0X29uZWNvdW50KCkgeyByZXR1cm4gcGFyZW50OjpnZXQoc2VsZjo6bmFtZSgpLCAnb25lY291bnQnKTsgfQ0KDQoJLyoqDQoJKiBzZXQ6IG9uZSBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBzZXRfb25lY291bnQoJHYpIHsgcmV0dXJuIHBhcmVudDo6c2V0UyhzZWxmOjpuYW1lKCksICdvbmVjb3VudCcsICR2KTsgfQ0KDQoJLyoqDQoJKiBnZXQ6IG1vcmUgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0X21vcmVjb3VudCgpIHsgcmV0dXJuIHBhcmVudDo6Z2V0KHNlbGY6Om5hbWUoKSwgJ21vcmVjb3VudCcpOyB9DQoNCgkvKioNCgkqIHNldDogbW9yZSBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBzZXRfbW9yZWNvdW50KCR2KSB7IHJldHVybiBwYXJlbnQ6OnNldFMoc2VsZjo6bmFtZSgpLCAnbW9yZWNvdW50JywgJHYpOyB9DQoNCgkvKioNCgkqIHNldCBkZWZhdWx0IHNldHRpbmdzDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGRlZmF1bHRzKCkNCgl7DQoJCXBhcmVudDo6X2RlZmF1bHRzKHNlbGY6Om5hbWUoKSk7DQoNCgkJc2VsZjo6c2V0X2xvY2FsKHRydWUpOw0KCQlzZWxmOjpzZXRfb3JkZXIoJycpOw0KCQlzZWxmOjpzZXRfbm9jb3VudChfXygnTm90IHJlYWQnKSk7DQoJCXNlbGY6OnNldF9vbmVjb3VudChfXygnT25lIHJlYWQnKSk7DQoJCXNlbGY6OnNldF9tb3JlY291bnQoX18oJyNjIHJlYWRzJykpOw0KCX0NCg0KCS8qKg0KCSogcmVtb3ZlIHNldHRpbmdzDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHJlbW92ZSgpDQoJew0KCQlwYXJlbnQ6OmRlbGV0ZShzZWxmOjpuYW1lKCksICdsb2NhbCcpOw0KCQlwYXJlbnQ6OmRlbGV0ZShzZWxmOjpuYW1lKCksICdvcmRlcicpOw0KCQlwYXJlbnQ6OmRlbGV0ZShzZWxmOjpuYW1lKCksICdub2NvdW50Jyk7DQoJCXBhcmVudDo6ZGVsZXRlKHNlbGY6Om5hbWUoKSwgJ29uZWNvdW50Jyk7DQoJCXBhcmVudDo6ZGVsZXRlKHNlbGY6Om5hbWUoKSwgJ21vcmVjb3VudCcpOw0KDQoJCXBhcmVudDo6X3JlbW92ZShzZWxmOjpuYW1lKCkpOw0KCX0NCg0KCS8qKg0KCSogbW9kdWxlJ3MgaW5zdGFsbGF0aW9uIGZsYWcNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gaW5zdGFsbGVkKCkgeyByZXR1cm4gcGFyZW50Ojppc0luc3RhbGxlZChzZWxmOjpuYW1lKCkpOyB9DQoNCgkvKioNCgkqIG1vZHVsZSdzIGluc3RhbGxhdGlvbiBmbGFnDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGVuYWJsZWQoKSB7IHJldHVybiAoc2VsZjo6aW5zdGFsbGVkKCkgJiYgcGFyZW50Ojppc0FjdGl2YXRlZChzZWxmOjpuYW1lKCkpKTsgfQ0KDQoJLyoqDQoJKiBtb2R1bGUncyBpbnN0YWxsYXRpb24gZmxhZw0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB2VXBkYXRlKCkgeyByZXR1cm4gY3RMaWJEb3RjbGVhclZlcnNpb25zOjp1cGRhdGVWZXJzaW9uKHNlbGY6Om5hbWUoKSk7IH0NCg0KCS8qKg0KCSogbW9kdWxlIGVuYWJsZQ0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBlbmFibGUoKSB7IHBhcmVudDo6X2VuYWJsZShzZWxmOjpuYW1lKCkpOyB9DQoNCgkvKioNCgkqIG1vZHVsZSBkaXNhYmxlDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGRpc2FibGUoKSB7IHBhcmVudDo6X2Rpc2FibGUoc2VsZjo6bmFtZSgpKTsgfQ0KDQoNCgkvKioNCgkqIGdldCBkZWZhdWx0IGluZm9ybWF0aW9ucyBvcmRlcmVkDQoJKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldE9yZGVyZWQoKQ0KCXsNCgkJcmV0dXJuIGFycmF5KA0KCQkJJ3RvdGFsJyA9PiBhcnJheSgnYWN0aXZlJyA9PiBmYWxzZSwgJ25hbWUnID0+IF9fKCJUb3RhbCIpLCAnZGVzY3JpcHRpb24nID0+IF9fKCIjYyB0b3RhbCBwb3N0cyBjb3VudCIpKSwNCgkJCSdwb3N0cycgPT4gYXJyYXkoJ2FjdGl2ZScgPT4gZmFsc2UsICJuYW1lIiA9PiBfXygiUG9zdHMiKSwgJ2Rlc2NyaXB0aW9uJyA9PiBfXygiI2MgcG9zdHMgcmVhZCBjb3VudCIpKSwNCgkJCSd1bnJlYWQnID0+IGFycmF5KCdhY3RpdmUnID0+IGZhbHNlLCAibmFtZSIgPT4gX18oIlVucmVhZCIpLCAnZGVzY3JpcHRpb24nID0+IF9fKCIjYyB1bnJlYWQgcG9zdHMgY291bnQiKSksDQoJCQknYXZlcmFnZScgPT4gYXJyYXkoJ2FjdGl2ZScgPT4gZmFsc2UsICJuYW1lIiA9PiBfXygiQXZlcmFnZSIpLCAnZGVzY3JpcHRpb24nID0+IF9fKCIjYyBhdmVyYWdlIHBvc3RzIHJlYWQgY291bnQiKSksDQoJCSk7DQoJfQ0KDQoJLyoqDQoJKiBnZXQgY291bnRzIGFycmF5DQoJKi8NCglwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIGdldENvdW50cygpDQoJew0KCQkkb3JkZXIgPSBzZWxmOjpnZXRfb3JkZXIoKTsNCgkJaWYgKCRvcmRlciAhPSAnJykgcmV0dXJuIEB1bnNlcmlhbGl6ZSgkb3JkZXIpOw0KCQllbHNlIHJldHVybiBzZWxmOjpnZXRPcmRlcmVkKCk7DQoJfQ0KfQ0KDQpjbGFzcyBwb3N0Q291bnRXb3JrZXIgZXh0ZW5kcyBjdExpYkRvdGNsZWFyDQp7DQoJLy8gY29tcHV0ZWQgZGF0YXMgY2FjaGUNCglzdGF0aWMgcHJpdmF0ZSAkZGF0YXMgPSBudWxsOw0KDQoJLyoqDQoJKiBnZXQgY3VycmVudCBwb3N0IGlkDQoJKi8NCiAgICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldEN1cnJlbnRQb3N0SWQoKQ0KICAgIHsNCiAgICAgICAgZ2xvYmFsICRfY3R4Ow0KCQlpZiAoaXNzZXQoJF9jdHgpICYmIGlzX29iamVjdCgkX2N0eC0+cG9zdHMpICYmICRfY3R4LT5wb3N0cy0+ZXhpc3RzKCdwb3N0X2lkJykpIHJldHVybiAoaW50ZWdlcikkX2N0eC0+cG9zdHMtPnBvc3RfaWQ7DQoJCWVsc2UgcmV0dXJuIC0xOw0KICAgIH0NCg0KCS8qKg0KCSogZ2V0IGNvdW50IGZvciBzcGVjaWZpZWQgcG9zdA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBnZXRDb3VudCgkaWQpDQoJew0KCQlpZiAoJGlkIDwgMCB8fCAhaXNfbnVtZXJpYygkaWQpIHx8ICFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuIC0xOw0KCQllbHNlDQoJCXsNCgkJCXRyeQ0KCQkJew0KCSAgICAgICAgICAgICRyZXEgPQ0KCQkJCSdTRUxFQ1QgTS5tZXRhX2lkJy4NCgkJCQknIEZST00gJy5zZWxmOjpwcmVmaXgoKS4nbWV0YSBNJy4NCgkJCQknIFdIRVJFIE0ubWV0YV90eXBlPVwnY291bnRcJyBBTkQgTS5wb3N0X2lkPScuJGlkOw0KDQoJICAgICAgICAgICAgJHJzID0gc2VsZjo6Y29uKCktPnNlbGVjdCgkcmVxKTsNCgkgICAgICAgICAgICBpZiAoJHJzLT5pc0VtcHR5KCkpIHJldHVybiAoaW50ZWdlcikwOw0KCQkJCWVsc2UgcmV0dXJuICgoaW50ZWdlcikkcnMtPmYoMCkgPCAwKSA/IChpbnRlZ2VyKTAgOiAoaW50ZWdlcikkcnMtPmYoMCk7DQoJCQl9DQoJCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJCX0NCgl9DQoNCgkvKioNCgkqIGdldCBjb3VudCBmb3IgY3VycmVudCBwb3N0DQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldEN1cnJlbnRQb3N0Q291bnQoKSB7IHJldHVybiBzZWxmOjpnZXRDb3VudChzZWxmOjpnZXRDdXJyZW50UG9zdElkKCkpOyB9DQoNCgkvKioNCgkqIHVwZGF0ZSBwb3N0IHJlYWQgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdXBkYXRlQ291bnQoJGlkKQ0KCXsNCgkJaWYgKCRpZCA8IDAgfHwgIWlzX251bWVyaWMoJGlkKSB8fCAhcG9zdENvdW50X3NldHRpbmdzOjplbmFibGVkKCkpIHJldHVybjsNCgkJZWxzZQ0KCQl7DQoJCQl0cnkNCgkJCXsNCgkJCQkvLyBnZXQgY3VycmVudCBwb3N0IGNvdW50DQoJCQkJJGNvdW50ID0gc2VsZjo6Z2V0Q291bnQoJGlkKTsNCg0KCQkJCS8vIG9wZW4gYSBjdXJzb3INCgkJCQkkY3VyID0gc2VsZjo6Y29uKCktPm9wZW5DdXJzb3Ioc2VsZjo6Y29yZSgpLT5wcmVmaXguJ21ldGEnKTsNCgkJCQlpZiAoJGNvdW50IDw9IDApDQoJCQkJew0KCQkJCQkvLyBpbnNlcnQgcmVjb3JkDQoJCQkJCSRjdXItPm1ldGFfdHlwZSA9ICdjb3VudCc7DQoJCQkJCSRjdXItPnBvc3RfaWQgPSAoaW50ZWdlcikkaWQ7DQoJCQkJCSRjdXItPm1ldGFfaWQgPSAoaW50ZWdlcikxOw0KCQkJCQkkY3VyLT5pbnNlcnQoKTsNCgkJCQkJDQoJCQkJCXNlbGY6OnRyaWdnZXIoKTsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJLy8gdWRwYXRlIHJlY29yZA0KCQkJCQkkY3VyLT5tZXRhX2lkID0gKGludGVnZXIpKCRjb3VudCArMSk7DQoJCQkJCSRjdXItPnVwZGF0ZSgnV0hFUkUgcG9zdF9pZD1cJycuc2VsZjo6Y29uKCktPmVzY2FwZSgkaWQpLidcJyBBTkQgbWV0YV90eXBlPVwnY291bnRcJycpOw0KCQkJCQkNCgkJCQkJc2VsZjo6dHJpZ2dlcigpOw0KCQkJCX0NCgkJCX0NCgkJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0NCgkJfQ0KCX0NCg0KCS8qKg0KCSogdXBkYXRlIHBvc3QgcmVhZCBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB1cGRhdGVDdXJyZW50UG9zdENvdW50KCkgeyByZXR1cm4gc2VsZjo6dXBkYXRlQ291bnQoc2VsZjo6Z2V0Q3VycmVudFBvc3RJZCgpKTsgfQ0KDQoJLyoqDQoJKiBwcm9jZXNzIGEgY291bnQgb24gcG9zdHMNCgkqLw0KICAgIHN0YXRpYyBwcml2YXRlIGZ1bmN0aW9uIHByb2Nlc3NDb3VudE9uUG9zdHMoJGxvY2FsPXRydWUsICR0YWJsZXM9bnVsbCwgJHdoZXJlPW51bGwpDQogICAgew0KCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6ZW5hYmxlZCgpKSByZXR1cm4gKGludGVnZXIpMDsNCgkJZWxzZQ0KCQl7DQoJICAgICAgICB0cnkNCgkgICAgICAgIHsNCgkJICAgICAgICAkcmVxID0NCgkJCQknU0VMRUNUIENPVU5UKFAucG9zdF9pZCknLg0KCQkJCScgRlJPTSAnLnNlbGY6OmNvcmUoKS0+cHJlZml4Lidwb3N0IFAnOw0KDQoJCSAgICAgICAgaWYgKGlzc2V0KCR0YWJsZXMpICYmICFlbXB0eSgkdGFibGVzKSAmJiAkdGFibGVzICE9IG51bGwpICRyZXEgIC49ICcsICcuJHRhYmxlczsNCgkJICAgICAgICAkcmVxICAuPSAnIFdIRVJFJzsNCg0KCQkgICAgICAgIGlmICgkbG9jYWwpICRyZXEgIC49ICcgUC5ibG9nX2lkPVwnJy4kY29uLT5lc2NhcGUoc2VsZjo6YmxvZ0lkKCkpLidcJyBBTkQnOw0KDQoJCSAgICAgICAgJHJlcSAuPSAnIFAucG9zdF9zdGF0dXM9MSBBTkQgUC5wb3N0X3Bhc3N3b3JkIElTIE5VTEwnOw0KCQkgICAgICAgIGlmIChpc3NldCgkd2hlcmUpICYmICFlbXB0eSgkd2hlcmUpICYmICR3aGVyZSAhPSBudWxsKSAkcmVxICAuPSAnICcuJHdoZXJlOw0KDQoJCQkJJHJlcSAuPSAnIEdST1VQIEJZIFAuYmxvZ19pZCc7DQoJCSAgICAgICAgJHJzID0gc2VsZjo6Y29uKCktPnNlbGVjdCgkcmVxKTsNCgkJICAgICAgICBpZiAoJHJzLT5pc0VtcHR5KCkpIHJldHVybiAoaW50ZWdlcikwOw0KCQkJCWVsc2UgcmV0dXJuIChpbnRlZ2VyKSRycy0+ZigwKTsNCgkJCX0NCgkJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0NCgkJfQ0KICAgIH0NCg0KCS8qKg0KCSogY291bnQgcG9zdHMNCgkqLw0KICAgIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gY291bnRQb3N0cygkbG9jYWw9dHJ1ZSkgeyByZXR1cm4gc2VsZjo6cHJvY2Vzc0NvdW50T25Qb3N0cygkbG9jYWwpOyB9DQoNCgkvKioNCgkqIGNvdW50IGNvbW1lbnRzDQoJKi8NCiAgICBzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGNvdW50Q29tbWVudHMoJGxvY2FsPXRydWUpIHsgcmV0dXJuIHNlbGY6OnByb2Nlc3NDb3VudE9uUG9zdHMoJGxvY2FsLCBzZWxmOjpjb3JlKCktPnByZWZpeCAuICdjb21tZW50IEMnLCAnQU5EIEMucG9zdF9pZCA9IFAucG9zdF9pZCBBTkQgQy5jb21tZW50X3N0YXR1cz0xIEFORCBDLmNvbW1lbnRfdHJhY2tiYWNrPTAnKTsgfQ0KDQoJLyoqDQoJKiBjb3VudCAgdHJhY2tiYWNrcw0KCSovDQogICAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBjb3VudFRyYWNrYmFja3MoJGxvY2FsPXRydWUpIHsgcmV0dXJuIHNlbGY6OnByb2Nlc3NDb3VudE9uUG9zdHMoJGxvY2FsLCBzZWxmOjpjb3JlKCktPnByZWZpeCAuICdjb21tZW50IEMnLCAnQU5EIEMucG9zdF9pZCA9IFAucG9zdF9pZCBBTkQgQy5jb21tZW50X3N0YXR1cz0xIEFORCBDLmNvbW1lbnRfdHJhY2tiYWNrPTEnKTsgfQ0KDQoJLyoqDQoJKiBnZXQgcG9zdCBjb3VudCBmb3IgY3VycmVudCBibG9nIG9yIHRvdGFsIGNvdW50DQoJKi8NCglzdGF0aWMgcHJpdmF0ZSBmdW5jdGlvbiBwcm9jZXNzTWV0YUNvdW50KCRsb2NhbD10cnVlKQ0KCXsNCgkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuIG51bGw7DQoJCWVsc2UNCgkJew0KCQkJdHJ5DQoJCQl7DQoJCQkJJHJlcSA9DQoJCQkJJ1NFTEVDVCBNLm1ldGFfaWQsIE0ucG9zdF9pZCcuDQoJCQkJJyBGUk9NICcuc2VsZjo6Y29yZSgpLT5wcmVmaXguJ21ldGEgTSc7DQoNCgkJCQlpZiAoJGxvY2FsKQ0KCQkJCQkkcmVxIC49DQoJCQkJCScgTEVGVCBKT0lOICcuc2VsZjo6Y29yZSgpLT5wcmVmaXguJ3Bvc3QgUCBPTiBNLnBvc3RfaWQ9UC5wb3N0X2lkJy4NCgkJCQkJJyBXSEVSRSAnLg0KCQkJCQknIFAuYmxvZ19pZD1cJycuc2VsZjo6Y29uKCktPmVzY2FwZShzZWxmOjpibG9nSWQoKSkuJ1wnIEFORCAnOw0KCQkJCWVsc2UgJHJlcSAuPSAnIFdIRVJFICc7DQoNCgkJCQkkcmVxIC49DQoJCQkJJyBNLm1ldGFfdHlwZT1cJ2NvdW50XCcnLg0KCQkJCScgR1JPVVAgQlkgTS5tZXRhX3R5cGUsIE0ucG9zdF9pZCwgTS5tZXRhX2lkJzsNCg0KCQkJCWlmICgkbG9jYWwpICRyZXEgLj0gJywgUC5ibG9nX2lkJzsNCgkJCQkkcmVxIC49ICcgT1JERVIgQlkgTS5wb3N0X2lkIEFTQyc7DQoNCgkgICAgICAgICAgICAkcnMgPSBzZWxmOjpjb24oKS0+c2VsZWN0KCRyZXEpOw0KCSAgICAgICAgICAgIGlmICgkcnMtPmlzRW1wdHkoKSkgcmV0dXJuIG51bGw7DQoJCQkJZWxzZSByZXR1cm4gJHJzLT5yb3dzKCk7DQoJCQl9DQoJCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJCX0NCgl9DQoNCgkvKioNCgkqIGFuYWx5c2UgcmVzdWx0cyBmcm9tIHByb2Nlc3NNZXRhQ291bnQNCgkqLw0KCXN0YXRpYyBwcml2YXRlIGZ1bmN0aW9uIGNvbXB1dGVNZXRhQ291bnQoJGxvY2FsPXRydWUpDQoJew0KCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6ZW5hYmxlZCgpKSByZXR1cm4gMDsNCgkJZWxzZQ0KCQl7DQoJCQlpZiAoc2VsZjo6JGRhdGFzICE9IG51bGwpIHJldHVybiAwOw0KCQkJZWxzZQ0KCQkJew0KCQkJCXNlbGY6OiRkYXRhcyA9IGFycmF5KCd0b3RhbCcgPT4gMCwgJ3Bvc3RzJyA9PiAwLCAndW5yZWFkJyA9PiAwLCAnYXZlcmFnZScgPT4gMC4wKTsNCgkJCQkkdmlld3MgPSBzZWxmOjpwcm9jZXNzTWV0YUNvdW50KCRsb2NhbCk7DQoJCQkJaWYgKCR2aWV3cyA9PSBudWxsIHx8ICR2aWV3cyA8IDAgKSByZXR1cm4gLTE7DQoJCQkJZWxzZQ0KCQkJCXsNCgkJCQkJc2VsZjo6JGRhdGFzWydwb3N0cyddID0gKGludGVnZXIpY291bnQoJHZpZXdzKTsNCgkJCQkJZm9yZWFjaCAoJHZpZXdzIGFzICRrID0+ICR2aWV3KSB7IHNlbGY6OiRkYXRhc1sndG90YWwnXSArPSAoaW50ZWdlcikkdmlld1snbWV0YV9pZCddOyB9DQoJCQkJCWlmIChzZWxmOjokZGF0YXNbJ3Bvc3RzJ10gPiAwKSBzZWxmOjokZGF0YXNbJ2F2ZXJhZ2UnXSA9IChmbG9hdClzZWxmOjokZGF0YXNbJ3RvdGFsJ10gLyAoZmxvYXQpc2VsZjo6JGRhdGFzWydwb3N0cyddOw0KCQkJCX0NCgkJCX0NCgkJfQ0KCX0NCg0KCS8qKg0KCSogcmV0dXJuIHBvc3QgdG90YWwgY291bnQgKGFuZCBzdW0gdGhlbiBpZiBuZWVkZWQpDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldENvdW50VG90YWwoJGxvY2FsPXRydWUpDQoJew0KCQlpZiAoc2VsZjo6JGRhdGFzID09IG51bGwpDQoJCQlpZiAoc2VsZjo6Y29tcHV0ZU1ldGFDb3VudCgkbG9jYWwpIDwgMCkgcmV0dXJuIDA7DQoJCXJldHVybiBzZWxmOjokZGF0YXNbJ3RvdGFsJ107DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gcG9zdCByZWFkIGNvdW50DQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldENvdW50UG9zdHMoJGxvY2FsPXRydWUpDQoJew0KCQlpZiAoc2VsZjo6JGRhdGFzID09IG51bGwpDQoJCQlpZiAoc2VsZjo6Y29tcHV0ZU1ldGFDb3VudCgkbG9jYWwpIDwgMCkgcmV0dXJuIDA7DQoJCXJldHVybiBzZWxmOjokZGF0YXNbJ3Bvc3RzJ107DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gcG9zdCB1bnJlYWQgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0Q291bnRVbnJlYWQoJGxvY2FsPXRydWUpDQoJew0KCQlpZiAoc2VsZjo6JGRhdGFzID09IG51bGwpDQoJCQlpZiAoc2VsZjo6Y29tcHV0ZU1ldGFDb3VudCgkbG9jYWwpIDwgMCkgcmV0dXJuIDA7DQoJCXJldHVybiBzZWxmOjokZGF0YXNbJ3VucmVhZCddOw0KCX0NCg0KCS8qKg0KCSogcmV0dXJuIGF2ZXJhZ2UgdG90YWwgcmVhZCBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBnZXRDb3VudEF2ZXJhZ2UoJGxvY2FsPXRydWUpDQoJew0KCQlpZiAoc2VsZjo6JGRhdGFzID09IG51bGwpDQoJCQlpZiAoc2VsZjo6Y29tcHV0ZU1ldGFDb3VudCgkbG9jYWwpIDwgMCkgcmV0dXJuIDA7DQoJCXJldHVybiBzcHJpbnRmKCIlMi4xZiIsIHNlbGY6OiRkYXRhc1snYXZlcmFnZSddKTsNCgl9DQoNCn0NCg0KY2xhc3MgcG9zdENvdW50IGV4dGVuZHMgcG9zdENvdW50V29ya2VyDQp7DQoJLyoqDQoJKiBpcyBtb2R1bGUgYWxsb3dlZA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiBhbGxvd2VkKCkNCgl7DQogICAgICAgIHRyeQ0KICAgICAgICB7DQoJCQlnbG9iYWwgJGNvcmU7DQogICAgICAgICAgICAkdmVyc2lvbiA9IChzdHJpbmcpJGNvcmUtPmdldFZlcnNpb24oJ2N0TGlicmFyeScpOw0KCQkJaWYgKHN0cmxlbigkdmVyc2lvbikgPiAwKQ0KCQkJew0KCQkJCWlmIChjdExpYkRvdGNsZWFyVmVyc2lvbnM6OmlzUkMxKCkpIHJldHVybiB0cnVlOw0KCQkJCWVsc2UgcmV0dXJuIGZhbHNlOw0KCQkJfQ0KCQkJZWxzZSByZXR1cm4gZmFsc2U7DQogICAgICAgIH0NCgkgICAgY2F0Y2ggKEV4Y2VwdGlvbiAkZXgpIHsgc2VsZjo6ZXJyb3IoKS0+YWRkKCRleC0+Z2V0TWVzc2FnZSgpKTsgfQ0KCX0NCg0KCS8qKg0KCSogcmV0dXJuIGh0bWwgZm9ybWF0dGVkIGNvZGU6IHBvc3RzIHRvdGFsIGNvdW50DQoJKi8NCglzdGF0aWMgcHJpdmF0ZSBmdW5jdGlvbiB0cmFuc2xhdGVDb3VudCgkY291bnQsJG1lc3NhZ2UpIHsgcmV0dXJuIHN0cl9yZXBsYWNlKCIjYyIsICRjb3VudCwgJG1lc3NhZ2UpOyB9DQoNCgkvKioNCgkqIHJldHVybiBodG1sIGZvcm1hdHRlZCBjb2RlOiBwb3N0IHJlYWQgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0RGlzcGxheVBvc3RDb3VudCgpDQoJew0KICAgICAgICB0cnkNCiAgICAgICAgew0KCQkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuOw0KCQkJZWxzZQ0KCQkJew0KCQkJCSRjb3VudCA9IHNlbGY6OmdldEN1cnJlbnRQb3N0Q291bnQoKTsNCgkJCQlpZiAoJGNvdW50IDw9IDApICR0ZXh0ID0gc3RyX3JlcGxhY2UoIiNjIiwgJGNvdW50LCBwb3N0Q291bnRfc2V0dGluZ3M6OmdldF9ub2NvdW50KCkpOw0KCQkJCWVsc2UgaWYgKCRjb3VudCA9PSAxKSAkdGV4dCA9IHN0cl9yZXBsYWNlKCIjYyIsICRjb3VudCwgcG9zdENvdW50X3NldHRpbmdzOjpnZXRfb25lY291bnQoKSk7DQoJCQkJZWxzZSAkdGV4dCA9IHN0cl9yZXBsYWNlKCIjYyIsICRjb3VudCwgcG9zdENvdW50X3NldHRpbmdzOjpnZXRfbW9yZWNvdW50KCkpOw0KCQkJCXJldHVybiAkdGV4dDsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogcG9zdHMgdG90YWwgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gZ2V0RGlzcGxheUNvdW50VG90YWwoKQ0KCXsNCiAgICAgICAgdHJ5DQogICAgICAgIHsNCgkJCWlmICghcG9zdENvdW50X3NldHRpbmdzOjplbmFibGVkKCkpIHJldHVybjsNCgkJCWVsc2UNCgkJCXsNCgkJCQkkY291bnRzID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRDb3VudHMoKTsNCgkJCQkkY291bnQgPSBzZWxmOjpnZXRDb3VudFRvdGFsKHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0X2xvY2FsKCkpOw0KCQkJCXJldHVybiBzZWxmOjp0cmFuc2xhdGVDb3VudCgkY291bnQsICRjb3VudHNbJ3RvdGFsJ11bJ2Rlc2NyaXB0aW9uJ10pOw0KCQkJfQ0KCQl9DQoJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0NCgl9DQoNCgkvKioNCgkqIHJldHVybiBodG1sIGZvcm1hdHRlZCBjb2RlOiBwb3N0cyByZWFkIGNvdW50DQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldERpc3BsYXlDb3VudFBvc3RzKCkNCgl7DQogICAgICAgIHRyeQ0KICAgICAgICB7DQoJCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6ZW5hYmxlZCgpKSByZXR1cm47DQoJCQllbHNlDQoJCQl7DQoJCQkJJGNvdW50cyA9IHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0Q291bnRzKCk7DQoJCQkJJGNvdW50ID0gc2VsZjo6Z2V0Q291bnRQb3N0cyhwb3N0Q291bnRfc2V0dGluZ3M6OmdldF9sb2NhbCgpKTsNCgkJCQlyZXR1cm4gc2VsZjo6dHJhbnNsYXRlQ291bnQoJGNvdW50LCAkY291bnRzWydwb3N0cyddWydkZXNjcmlwdGlvbiddKTsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogcG9zdHMgdW5yZWFkIGNvdW50DQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldERpc3BsYXlDb3VudFVucmVhZCgpDQoJew0KICAgICAgICB0cnkNCiAgICAgICAgew0KCQkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuOw0KCQkJZWxzZQ0KCQkJew0KCQkJCSRjb3VudHMgPSBwb3N0Q291bnRfc2V0dGluZ3M6OmdldENvdW50cygpOw0KCQkJCSRjb3VudCA9IHNlbGY6OmdldENvdW50VW5yZWFkKHBvc3RDb3VudF9zZXR0aW5nczo6Z2V0X2xvY2FsKCkpOw0KCQkJCXJldHVybiBzZWxmOjp0cmFuc2xhdGVDb3VudCgkY291bnQsICRjb3VudHNbJ3VucmVhZCddWydkZXNjcmlwdGlvbiddKTsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogcG9zdHMgYXZlcmFnZSByZWFkIGNvdW50DQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIGdldERpc3BsYXlDb3VudEF2ZXJhZ2UoKQ0KCXsNCiAgICAgICAgdHJ5DQogICAgICAgIHsNCgkJCWlmICghcG9zdENvdW50X3NldHRpbmdzOjplbmFibGVkKCkpIHJldHVybjsNCgkJCWVsc2UNCgkJCXsNCgkJCQkkY291bnRzID0gcG9zdENvdW50X3NldHRpbmdzOjpnZXRDb3VudHMoKTsNCgkJCQkkY291bnQgPSBzZWxmOjpnZXRDb3VudEF2ZXJhZ2UocG9zdENvdW50X3NldHRpbmdzOjpnZXRfbG9jYWwoKSk7DQoJCQkJcmV0dXJuIHNlbGY6OnRyYW5zbGF0ZUNvdW50KCRjb3VudCwgJGNvdW50c1snYXZlcmFnZSddWydkZXNjcmlwdGlvbiddKTsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogdXBkYXRlIGN1cnJlbnQgcG9zdCBjb3VudGVyDQoJKi8NCglzdGF0aWMgcHVibGljIGZ1bmN0aW9uIHRwbFVwZGF0ZVBvc3RDb3VudF9mb3JtYXQoKQ0KCXsNCiAgICAgICAgdHJ5DQogICAgICAgIHsNCgkJCWlmICghcG9zdENvdW50X3NldHRpbmdzOjplbmFibGVkKCkpIHJldHVybjsNCgkJCWVsc2UNCgkJCXsNCgkJCQlzZWxmOjp1cGRhdGVDdXJyZW50UG9zdENvdW50KCk7DQoJCQl9DQoJCX0NCgkgICAgY2F0Y2ggKEV4Y2VwdGlvbiAkZXgpIHsgc2VsZjo6ZXJyb3IoKS0+YWRkKCRleC0+Z2V0TWVzc2FnZSgpKTsgfQ0KCX0NCg0KCS8qKg0KCSogcmV0dXJuIGh0bWwgZm9ybWF0dGVkIGNvZGU6IGdldCBjdXJyZW50IHBvc3QgY291bnRlcg0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB0cGxEaXNwbGF5UG9zdENvdW50X2Zvcm1hdCgpDQoJew0KICAgICAgICB0cnkNCiAgICAgICAgew0KCQkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuICcnOw0KCQkJZWxzZQ0KCQkJew0KCQkJCSRkYXRhcyA9IHNlbGY6OmdldERpc3BsYXlQb3N0Q291bnQoKTsNCgkJCQlpZiAoJGRhdGFzICE9ICcnKSByZXR1cm4gJzxzcGFuIGNsYXNzPSJwb3N0Q291bnQiPicuJGRhdGFzLic8L3NwYW4+JzsNCgkJCQllbHNlIHJldHVybiAnJzsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogcG9zdHMgdG90YWwgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsRGlzcGxheUNvdW50VG90YWxfZm9ybWF0KCkNCgl7DQogICAgICAgIHRyeQ0KICAgICAgICB7DQoJCQlpZiAoIXBvc3RDb3VudF9zZXR0aW5nczo6ZW5hYmxlZCgpKSByZXR1cm4gJyc7DQoJCQllbHNlDQoJCQl7DQoJCQkJJGRhdGFzID0gc2VsZjo6Z2V0RGlzcGxheUNvdW50VG90YWwoKTsNCi8vCQkJCWlmICgkZGF0YXMgIT0gJycpIHJldHVybiAnPHAgY2xhc3M9InBvc3RDb3VudFRvdGFsIj4nLiRkYXRhcy4nPC9wPic7DQoJCQkJaWYgKCRkYXRhcyAhPSAnJykgcmV0dXJuICcnLiRkYXRhcy4nJzsNCgkJCQllbHNlIHJldHVybiAnJzsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KDQoJLyoqDQoJKiByZXR1cm4gaHRtbCBmb3JtYXR0ZWQgY29kZTogcG9zdHMgcmVhZCBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB0cGxEaXNwbGF5Q291bnRQb3N0c19mb3JtYXQoKQ0KCXsNCiAgICAgICAgdHJ5DQogICAgICAgIHsNCgkJCWlmICghcG9zdENvdW50X3NldHRpbmdzOjplbmFibGVkKCkpIHJldHVybiAnJzsNCgkJCWVsc2UNCgkJCXsNCgkJCQkkZGF0YXMgPSBzZWxmOjpnZXREaXNwbGF5Q291bnRQb3N0cygpOw0KLy8JCQkJaWYgKCRkYXRhcyAhPSAnJykgcmV0dXJuICc8cCBjbGFzcz0icG9zdENvdW50UG9zdHMiPicuJGRhdGFzLic8L3A+JzsNCgkJCQlpZiAoJGRhdGFzICE9ICcnKSByZXR1cm4gJycuJGRhdGFzLicnOw0KCQkJCWVsc2UgcmV0dXJuICcnOw0KCQkJfQ0KCQl9DQoJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0NCgl9DQoNCgkvKioNCgkqIHJldHVybiBodG1sIGZvcm1hdHRlZCBjb2RlOiBwb3N0cyB1bnJlYWQgY291bnQNCgkqLw0KCXN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsRGlzcGxheUNvdW50VW5yZWFkX2Zvcm1hdCgpDQoJew0KICAgICAgICB0cnkNCiAgICAgICAgew0KCQkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuICcnOw0KCQkJZWxzZQ0KCQkJew0KCQkJCSRkYXRhcyA9IHNlbGY6OmdldERpc3BsYXlDb3VudFVucmVhZCgpOw0KLy8JCQkJaWYgKCRkYXRhcyAhPSAnJykgcmV0dXJuICc8cCBjbGFzcz0icG9zdENvdW50VW5yZWFkIj4nLiRkYXRhcy4nPC9wPic7DQoJCQkJaWYgKCRkYXRhcyAhPSAnJykgcmV0dXJuICcnLiRkYXRhcy4nJzsNCgkJCQllbHNlIHJldHVybiAnJzsNCgkJCX0NCgkJfQ0KCSAgICBjYXRjaCAoRXhjZXB0aW9uICRleCkgeyBzZWxmOjplcnJvcigpLT5hZGQoJGV4LT5nZXRNZXNzYWdlKCkpOyB9DQoJfQ0KCQ0KCS8qKg0KCSogcmV0dXJuIGh0bWwgZm9ybWF0dGVkIGNvZGU6IHBvc3RzIGF2ZXJhZ2UgcmVhZCBjb3VudA0KCSovDQoJc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB0cGxEaXNwbGF5Q291bnRBdmVyYWdlX2Zvcm1hdCgpDQoJew0KICAgICAgICB0cnkNCiAgICAgICAgew0KCQkJaWYgKCFwb3N0Q291bnRfc2V0dGluZ3M6OmVuYWJsZWQoKSkgcmV0dXJuICcnOw0KCQkJZWxzZQ0KCQkJew0KCQkJCSRkYXRhcyA9IHNlbGY6OmdldERpc3BsYXlDb3VudEF2ZXJhZ2UoKTsNCi8vCQkJCWlmICgkZGF0YXMgIT0gJycpIHJldHVybiAnPHAgY2xhc3M9InBvc3RDb3VudEF2ZXJhZ2UiPicuJGRhdGFzLic8L3A+JzsNCgkJCQlpZiAoJGRhdGFzICE9ICcnKSByZXR1cm4gJycuJGRhdGFzLicnOw0KCQkJCWVsc2UgcmV0dXJuICcnOw0KCQkJfQ0KCQl9DQoJICAgIGNhdGNoIChFeGNlcHRpb24gJGV4KSB7IHNlbGY6OmVycm9yKCktPmFkZCgkZXgtPmdldE1lc3NhZ2UoKSk7IH0NCgl9DQoNCgkvKioNCgkqIGRpc3BsYXkgaHRtbCBjb2RlOiB1cGRhdGUgY3VycmVudCBwb3N0IGNvdW50ZXINCgkqLw0KICAgIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsVXBkYXRlUG9zdENvdW50KCkgeyByZXR1cm4gJzw/cGhwIGVjaG8gcG9zdENvdW50Ojp0cGxVcGRhdGVQb3N0Q291bnRfZm9ybWF0KCk7ID8+JzsgfQ0KDQoJLyoqDQoJKiBkaXNwbGF5IGh0bWwgY29kZTogZGlzcGxheSBjdXJyZW50IHBvc3QgY291bnRlcg0KCSovDQogICAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB0cGxEaXNwbGF5UG9zdENvdW50KCkgeyByZXR1cm4gJzw/cGhwIGVjaG8gcG9zdENvdW50Ojp0cGxEaXNwbGF5UG9zdENvdW50X2Zvcm1hdCgpOyA/Pic7IH0NCg0KCS8qKg0KCSogZGlzcGxheSBodG1sIGNvZGU6IGRpc3BsYXkgcG9zdHMgdG90YWwgY291bnQNCgkqLw0KICAgIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsRGlzcGxheUNvdW50VG90YWwoKSB7IHJldHVybiAnPD9waHAgZWNobyBwb3N0Q291bnQ6OnRwbERpc3BsYXlDb3VudFRvdGFsX2Zvcm1hdCgpOyA/Pic7IH0NCg0KCS8qKg0KCSogZGlzcGxheSBodG1sIGNvZGU6IGRpc3BsYXkgcG9zdHMgcmVhZCBjb3VudA0KCSovDQogICAgc3RhdGljIHB1YmxpYyBmdW5jdGlvbiB0cGxEaXNwbGF5Q291bnRQb3N0cygpIHsgcmV0dXJuICc8P3BocCBlY2hvIHBvc3RDb3VudDo6dHBsRGlzcGxheUNvdW50UG9zdHNfZm9ybWF0KCk7ID8+JzsgfQ0KDQoJLyoqDQoJKiBkaXNwbGF5IGh0bWwgY29kZTogZGlzcGxheSBwb3N0cyB1bnJlYWQgY291bnQNCgkqLw0KICAgIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsRGlzcGxheUNvdW50VW5yZWFkKCkgeyByZXR1cm4gJzw/cGhwIGVjaG8gcG9zdENvdW50Ojp0cGxEaXNwbGF5Q291bnRVbnJlYWRfZm9ybWF0KCk7ID8+JzsgfQ0KDQoJLyoqDQoJKiBkaXNwbGF5IGh0bWwgY29kZTogZGlzcGxheSBwb3N0cyBhdmVyYWdlIHJlYWQgY291bnQNCgkqLw0KICAgIHN0YXRpYyBwdWJsaWMgZnVuY3Rpb24gdHBsRGlzcGxheUNvdW50QXZlcmFnZSgpIHsgcmV0dXJuICc8P3BocCBlY2hvIHBvc3RDb3VudDo6dHBsRGlzcGxheUNvdW50QXZlcmFnZV9mb3JtYXQoKTsgPz4nOyB9DQp9DQoNCj8+";s:22:"/postCount/licence.txt";s:1152:"VGhpcyBwbHVnaW4gaXMgbGljZW5jZWQgQ3JlYXRpdmUgQ29tbW9ucyBieS1uYy1zYSA6DQoNCglodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1uYy1zYS8zLjAvZGVlZC5mcl9DQQ0KCUF0dHJpYnV0aW9uLU5vbmNvbW1lcmNpYWwtU2hhcmUgQWxpa2UgMy4wIFVucG9ydGVkDQoNCgkNCglZb3UgYXJlIGZyZWU6DQoJCSogdG8gU2hhcmUglyB0byBjb3B5LCBkaXN0cmlidXRlIGFuZCB0cmFuc21pdCB0aGUgd29yaw0KCQkqIHRvIFJlbWl4IJcgdG8gYWRhcHQgdGhlIHdvcmsNCgkJDQoJVW5kZXIgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOg0KCQkqIEF0dHJpYnV0aW9uLg0KCQkJWW91IG11c3QgYXR0cmlidXRlIHRoZSB3b3JrIGluIHRoZSBtYW5uZXIgc3BlY2lmaWVkIGJ5IHRoZSBhdXRob3Igb3IgbGljZW5zb3INCgkJCShidXQgbm90IGluIGFueSB3YXkgdGhhdCBzdWdnZXN0cyB0aGF0IHRoZXkgZW5kb3JzZSB5b3Ugb3IgeW91ciB1c2Ugb2YgdGhlIHdvcmspLg0KCQkJDQoJCSogTm9uY29tbWVyY2lhbC4NCgkJCVlvdSBtYXkgbm90IHVzZSB0aGlzIHdvcmsgZm9yIGNvbW1lcmNpYWwgcHVycG9zZXMuDQoJCQkNCgkJKiBTaGFyZSBBbGlrZS4NCgkJCUlmIHlvdSBhbHRlciwgdHJhbnNmb3JtLCBvciBidWlsZCB1cG9uIHRoaXMgd29yaywgeW91IG1heSBkaXN0cmlidXRlIHRoZSByZXN1bHRpbmcgd29yaw0KCQkJb25seSB1bmRlciB0aGUgc2FtZSBvciBzaW1pbGFyIGxpY2Vuc2UgdG8gdGhpcyBvbmUuDQoNCgkNCgkNCkFsbCBjb250ZW50IGJlbG9uZ3MgdG8gRG90Y2xlYXIga2VlcCB0aGVyZSBwcm9wZXJ0eS4NCkFsbCBvdGhlciBjb250ZW50IGJlbG9uZ3MgdG8gdGhlaXIgYXV0aG9ycy4=";s:35:"/postCount/locales/fr/main.lang.php";s:4604:"77u/PD9waHAKIyAqKioqKiBCRUdJTiBMSUNFTlNFIEJMT0NLICoqKioqCiMgVGhpcyBmaWxlIGlzIHBhcnQgb2YgRG90Q2xlYXIuCiMgQ29weXJpZ2h0IChjKSAyMDA4IE9saXZpZXIgTWV1bmllciBhbmQgY29udHJpYnV0b3JzLiBBbGwgcmlnaHRzCiMgcmVzZXJ2ZWQuCiMKIyBEb3RDbGVhciBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMgCiMgRG90Q2xlYXIgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIAojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCBEb3RDbGVhcjsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKIwojICoqKioqIEVORCBMSUNFTlNFIEJMT0NLICoqKioqCgokR0xPQkFMU1snX19sMTBuJ11bJ1doeSB0aGlzIG1vZHVsZSA/J10gPSAiUG91cnF1b2kgY2UgbW9kdWxlID8iOwokR0xPQkFMU1snX19sMTBuJ11bJ0dyZWV0cyddID0gIlJlbWVyY2llbWVudHMiOwokR0xPQkFMU1snX19sMTBuJ11bJ1NldHRpbmdzJ10gPSAiUGFyYW3DqHRyZXMiOwokR0xPQkFMU1snX19sMTBuJ11bJ0NoYW5nZTonXSA9ICJNb2RpZmljYXRpb246IjsKJEdMT0JBTFNbJ19fbDEwbiddWydDbGljIGhlcmUgdG8gZWRpdCB5b3VyIHNldHRpbmdzLiddID0gIkNsaXF1ZXogaWNpIHBvdXIgbW9kaWZpZXIgdm9zIHBhcmFtw6h0cmVzLiI7CiRHTE9CQUxTWydfX2wxMG4nXVsnVGhlbWUnXSA9ICJUaMOqbWUiOwokR0xPQkFMU1snX19sMTBuJ11bJ0ludGVncmF0aW9uOiddID0gIkludMOpZ3JhdGlvbjoiOwokR0xPQkFMU1snX19sMTBuJ11bJ1NhdmUnXSA9ICJWYWxpZGVyIjsKJEdMT0JBTFNbJ19fbDEwbiddWydDYW5jZWwnXSA9ICJBbm51bGVyIjsKJEdMT0JBTFNbJ19fbDEwbiddWydEZWZhdWx0cyddID0gIkTDqWZhdXRzIjsKJEdMT0JBTFNbJ19fbDEwbiddWydNb2R1bGUgbm90IGluc3RhbGxlZCAhJ10gPSAiTW9kdWxlIHBhcyBpbnN0YWxsw6kgISI7CiRHTE9CQUxTWydfX2wxMG4nXVsnU2V0dGluZ3MnXSA9ICJQYXJhbcOodHJlcyI7CiRHTE9CQUxTWydfX2wxMG4nXVsnVXNhZ2UnXSA9ICJVdGlsaXNhdGlvbiI7CiRHTE9CQUxTWydfX2wxMG4nXVsnQWJvdXQnXSA9ICJBIHByb3BvcyI7CiRHTE9CQUxTWydfX2wxMG4nXVsnQWxsIHRoZSBwZW9wbGVzIHdobyB0ZXN0ZWQgaXQgISddID0gIlRvdXRlcyBsZXMgcGVyc29ubmVzIHF1aSBsJ29uIHRlc3TDqSI7CiRHTE9CQUxTWydfX2wxMG4nXVsnU2V0dGluZ3MgdXBkYXRlZC4nXSA9ICJQYXJhbcOodHJlcyBtaXMgw6Agam91ci4iOwokR0xPQkFMU1snX19sMTBuJ11bJ1Nob3cgd2lkZ2V0IHRpdGxlJ10gPSAiQWZmaWNoZXIgbGUgdGl0cmUgZHUgd2lkZ2V0IjsKCiRHTE9CQUxTWydfX2wxMG4nXVsncG9zdENvdW50J10gPSAicG9zdENvdW50IjsKJEdMT0JBTFNbJ19fbDEwbiddWydOb3QgcmVhZCddID0gIkF1Y3VuZSBsZWN0dXJlIjsKJEdMT0JBTFNbJ19fbDEwbiddWydPbmUgcmVhZCddID0gIlVuZSBsZWN0dXJlIjsKJEdMT0JBTFNbJ19fbDEwbiddWycjYyByZWFkcyddID0gIiNjIGxlY3R1cmUocykiOwokR0xPQkFMU1snX19sMTBuJ11bJyNjIHRvdGFsIHBvc3RzIGNvdW50J10gPSAiI2MgYmlsbGV0cyBjb21wdMOpcyI7CiRHTE9CQUxTWydfX2wxMG4nXVsnI2MgcG9zdHMgcmVhZCBjb3VudCddID0gIiNjIGJpbGxldHMgbHVzIjsKJEdMT0JBTFNbJ19fbDEwbiddWycjYyB1bnJlYWQgcG9zdHMgY291bnQnXSA9ICIjYyBiaWxsZXRzIG5vbi1sdXMiOwokR0xPQkFMU1snX19sMTBuJ11bJyNjIGF2ZXJhZ2UgcG9zdHMgcmVhZCBjb3VudCddID0gIiNjIGRlIG1veWVubmUgZGUgbGVjdHVyZSI7CiRHTE9CQUxTWydfX2wxMG4nXVsnT25seSB0aGlzIGJsb2cnXSA9ICJTZXVsZW1lbnQgY2UgYmxvZyI7CiRHTE9CQUxTWydfX2wxMG4nXVsnTm8gY291bnQgKGJsYW5rIHRvIGhpZGUpOiddID0gIkF1Y3VuZSBsZWN0dXJlIChsYWlzc2V6IGJsYW5jIHBvdXIgbmUgcmllbiBhZmZpY2hlcikiOwokR0xPQkFMU1snX19sMTBuJ11bJ09uZSBjb3VudCAoYmxhbmsgdG8gaGlkZSk6J10gPSAiVW5lIGxlY3R1cmUgKGxhaXNzZXogYmxhbmMgcG91ciBuZSByaWVuIGFmZmljaGVyKSI7CiRHTE9CQUxTWydfX2wxMG4nXVsnTW9yZSBjb3VudCAoYmxhbmsgdG8gaGlkZSk6J10gPSAiUGx1c2lldXJzIGxlY3R1cmVzIChsYWlzc2V6IGJsYW5jIHBvdXIgbmUgcmllbiBhZmZpY2hlcikiOwokR0xPQkFMU1snX19sMTBuJ11bJyAoI2MgYXMgY291bnQgdmFsdWUpJ10gPSAiICgjYyBwb3VyIGxlIGNvbXB0ZXVyIGRlIGxlY3R1cmVzKSI7CiRHTE9CQUxTWydfX2wxMG4nXVsnQ2hvb3NlIHdoYXQgdG8gZGlzcGxheSBhbmQgb3JkZXIgdGhlbTonXSA9ICJTw6lsZWN0aW9ubmV6IGNlIHF1aSBkb2l0IMOqdHJlIGFmZmljaMOpIGV0IGwnb3JkcmUgZCdhZmZpY2hhZ2U6IjsKJEdMT0JBTFNbJ19fbDEwbiddWydBZGQgdGhpcyBjb2RlIGluIHlvdXIgdGhlbWUgZmlsZSB3aGVyZSB0byBkaXNwbGF5OiddID0gIkFqb3V0ZXogbGVzIGNvZGVzIHN1aXZhbnRzIGRhbnMgdW4gZmljaGllciBkZSB0aMOobWUgcG91ciBhZmZpY2hlcjoiOwokR0xPQkFMU1snX19sMTBuJ11bJ0kganVzdCB3YW50ZWQgdG8gYmUgYWJsZSB0byBjb3VudCBwb3N0IHJlYWRzIG9uIG15IGJsb2cuJ10gPSAiSmUgdm91bGFpcyBqdXN0ZSDDqnRyZSBjYXBhYmxlIGRlIGNvbXB0YWJpbGlzZXIgbGVzIGxlY3R1cmVzIGRlIGJpbGxldHMgc3VyIG1vbiBibG9nLiI7CiRHTE9CQUxTWydfX2wxMG4nXVsnQWxsIHRoZSBwb3N0Q291bnQgdXNlcnMgISddID0gIlRvdXMgbGVzIHV0aWxpc2F0ZXVycyBkZSBwb3N0Q291bnQgISI7CiRHTE9CQUxTWydfX2wxMG4nXVsnUG9zdCByZWFkIGNvdW50ZXInXSA9ICJDb21wdGV1ciBkZSBsZWN0dXJlIGRlIGJpbGxldHMiOwoKLy8kR0xPQkFMU1snX19sMTBuJ11bJyddID0gIiI7Cgo/Pg==";}}