# Name: smd_pagicle v0.1 # Type: Client side plugin # Automatic client-side pagination of articles using jQuery # Author: Stef Dawson # URL: http://stefdawson.com/ # Recommended load order: 5 # ..................................................................... # This is a plugin for Textpattern - http://textpattern.com/ # To install: textpattern > admin > plugins # Paste the following text into the 'Install plugin' box: # ..................................................................... YToxMTp7czo0OiJuYW1lIjtzOjExOiJzbWRfcGFnaWNsZSI7czo2OiJhdXRob3IiO3M6MTE6 IlN0ZWYgRGF3c29uIjtzOjEwOiJhdXRob3JfdXJpIjtzOjIyOiJodHRwOi8vc3RlZmRhd3Nv bi5jb20vIjtzOjc6InZlcnNpb24iO3M6MzoiMC4xIjtzOjExOiJkZXNjcmlwdGlvbiI7czo1 NzoiQXV0b21hdGljIGNsaWVudC1zaWRlIHBhZ2luYXRpb24gb2YgYXJ0aWNsZXMgdXNpbmcg alF1ZXJ5IjtzOjQ6ImNvZGUiO3M6NjY2NDoiZnVuY3Rpb24gc21kX3BhZ2ljbGUoJGF0dHMs ICR0aGluZz0nJykgew0KCS8vIFBsdWdpbiBvcHRpb25zDQoJZXh0cmFjdChsQXR0cyhhcnJh eSgNCgkJJ2NvbnRhaW5lcicgPT4gJyNjb250ZW50JywNCgkJJ3NwbGl0YXQnID0+ICcnLA0K CQknc3BsaXR3cmFwdGFnJyA9PiAnaDInLA0KCQknaGVhZGVyJyA9PiAnaDEnLA0KCQknZm9v dGVyJyA9PiAnJywNCgkJJ2RlbGV0ZScgPT4gJ1NNRF9BVVRPJywNCgkJJ3dyYXB0YWcnID0+ ICdkaXYnLA0KCQknd3JhcGlkJyA9PiAnc21kX3BhZ18nLA0KCQknd3JhcGNsYXNzJyA9PiAn c21kX3BhZycsDQoJCSdvdXRlcndyYXB0YWcnID0+ICdkaXYnLA0KCQknb3V0ZXJ3cmFwaWQn ID0+ICdzbWRfcGFnaWNsZScsDQoJCSdmb2N1cycgPT4gJ2JvZHk6NDAwJywNCgkJJ2FuaW1h dGUnID0+ICdvcGFjaXR5OnNob3cnLA0KCQknYWRkbmF2dG8nID0+ICcjc21kX3BhZ25hdics DQoJCSduYXZjbGFzcycgPT4gJ3NtZF9wYWdlcycsDQoJCSduYXZhY3RpdmUnID0+ICdzbWRf Y3VycnBhZ2UnLA0KCQknbmF2ZGlzYWJsZWQnID0+ICdzbWRfZGlzYWJsZWQnLA0KCQknbmF2 ZGlzcGxheScgPT4gJ2YgcCAjIG4gbCcsDQoJKSwgJGF0dHMpKTsNCg0KCS8vIFNhbml0aXpl IHRoZSBvcHRpb25zIHNvIHdlIGNhbiBndWFyYW50ZWUgdGhhdCBqUXVlcnkgYXQgbGVhc3Qg aGFzIF9zb21ldGhpbmdfIHRvIHN3aW5nIG9mZg0KCS8vIFRoaXMgcGFydCBzaW1wbHkgcmVh ZmZpcm1zIHRoZSBkZWZhdWx0cyBhYm92ZQ0KCWlmICgkc3BsaXR3cmFwdGFnICYmICRzcGxp dGF0ID09ICIiKSB7DQoJCSRzcGxpdGF0ID0gIi4qIjsNCgl9DQoJJHdyYXB0YWcgPSAoJHdy YXB0YWcpID8gJHdyYXB0YWcgOiAnZGl2JzsNCgkkd3JhcGlkID0gKCR3cmFwaWQpID8gJHdy YXBpZCA6ICdzbWRfcGFnXyc7DQoJJHdyYXBjbGFzcyA9ICgkd3JhcGNsYXNzKSA/ICR3cmFw Y2xhc3MgOiAnc21kX3BhZyc7DQoJJGFuaW1hdGUgPSAoJGFuaW1hdGUpID8gJGFuaW1hdGUg OiAnb3BhY2l0eTpzaG93JzsNCgkkYWRkbmF2dG8gPSAoJGFkZG5hdnRvKSA/ICRhZGRuYXZ0 byA6ICcjc21kX3BhZ25hdic7DQoJJG5hdmNsYXNzID0gKCRuYXZjbGFzcykgPyAkbmF2Y2xh c3MgOiAnc21kX3BhZ2VzJzsNCgkkbmF2YWN0aXZlID0gKCRuYXZhY3RpdmUpID8gJG5hdmFj dGl2ZSA6ICdzbWRfY3VycnBhZ2UnOw0KCSRuYXZkaXNhYmxlZCA9ICgkbmF2ZGlzYWJsZWQp ID8gJG5hdmRpc2FibGVkIDogJ3NtZF9kaXNhYmxlZCc7DQoNCgkvLyBSZW1vdmUgc3BhY2Vz IGJldHdlZW4gaXRlbXMgaW4gYWRkbmF2dG8gYW5kIG1ha2UgYSBjb21tYS1zZXBhcmF0ZWQg bGlzdA0KCSRhZGRuYXZ0byA9IGltcGxvZGUoIiwiLCBkb19saXN0KCRhZGRuYXZ0bykpOw0K DQoJLy8gT3B0aW9uYWwgaXRlbXMNCgkkdGhlY2xhc3MgPSAoJG5hdmNsYXNzKSA/ICcgY2xh c3M9IicuJG5hdmNsYXNzLiciJyA6ICcgY2xhc3M9InNtZF9wYWdlcyInOw0KCSR0aGVhY3Rp dmUgPSAoJG5hdmNsYXNzICYmICRuYXZhY3RpdmUpID8gJyBjbGFzcz0iJy4kbmF2Y2xhc3Mu JyAnLiRuYXZhY3RpdmUuJyInIDogKCgkbmF2YWN0aXZlKSA/ICcgY2xhc3M9IicuJG5hdmFj dGl2ZS4nIicgOiAnJyk7DQoJJG93cmFwX2JlZyA9ICgkb3V0ZXJ3cmFwdGFnKSA/ICc8Jy4k b3V0ZXJ3cmFwdGFnLigoJG91dGVyd3JhcGlkKSA/ICcgaWQ9IicuJG91dGVyd3JhcGlkLici JyA6ICcnKS4nPicgOiAnJzsNCgkkb3dyYXBfZW5kID0gKCRvdXRlcndyYXB0YWcpID8gJzwv Jy4kb3V0ZXJ3cmFwdGFnLic+JyA6ICcnOw0KCSRzd3JhcF9iZWcgPSAoJHNwbGl0d3JhcHRh ZykgPyAnPCcuJHNwbGl0d3JhcHRhZy4nPicgOiAnJzsNCgkkc3dyYXBfZW5kID0gKCRzcGxp dHdyYXB0YWcpID8gJzwvJy4kc3BsaXR3cmFwdGFnLic+JyA6ICcnOw0KDQoJLy8gTmljaWZ5 IGRlZmF1bHQNCglpZiAoJGRlbGV0ZSA9PSAiU01EX0FVVE8iKSB7DQoJCSRkZWxldGUgPSAo JHNwbGl0d3JhcHRhZykgPyAwIDogMTsNCgl9DQoNCgkvLyBzcGxpdCB0aGUgbmF2ZGlzcGxh eSBpbnRvIGl0cyBjaGFyYWN0ZXJzIGZvciBtYWtpbmcgYSBqcyBhcnJheQ0KCSRuYXZpdGVt cyA9IGltcGxvZGUoIiwiLCBkb0FycmF5KHByZWdfc3BsaXQoJy8vJywgJG5hdmRpc3BsYXks IC0xLCBQUkVHX1NQTElUX05PX0VNUFRZKSwgJ2RvUXVvdGUnKSk7DQoNCgkvLyBIYW5kbGUg dGhlIGZvY3VzIGVsZW1lbnQNCgkkamZvY3VzID0gJyc7DQoJaWYgKCRmb2N1cykgew0KCQkk Zm9jdXNJdGVtcyA9IGRvX2xpc3QoJGZvY3VzLCAnOicpOw0KCQkkamZvY3VzID0gKGlzc2V0 KCRmb2N1c0l0ZW1zWzBdKSkgPyAkZm9jdXNJdGVtc1swXSA6ICdib2R5JzsNCgkJJGpmb2N1 c3RpbWUgPSAoaXNzZXQoJGZvY3VzSXRlbXNbMV0pKSA/ICRmb2N1c0l0ZW1zWzFdIDogJzQw MCc7DQoJCWlmICgkamZvY3VzKSB7DQoJCQkkamZvY3VzID0gJ3ZhciBwb3MgPSBqUXVlcnko IicgLiRqZm9jdXMuICciKS5vZmZzZXQoKTsnOw0KCQkJJGpmb2N1cyAuPSAnalF1ZXJ5KCJo dG1sIikuYW5pbWF0ZSh7IHNjcm9sbFRvcDogcG9zLnRvcCArICJweCIgfSwgeyBkdXJhdGlv bjogJyAuKCgkamZvY3VzdGltZSkgPyAkamZvY3VzdGltZSA6IDQwMCkuJyB9KTsnOw0KCQl9 DQoJfQ0KDQoJLy8gSGFuZGxlIHRoZSBhbmltYXRpb24gZWxlbWVudA0KCSRqYW5pbWF0ZSA9 IGRvX2xpc3QoJGFuaW1hdGUpOw0KCSRlbGVtID0gYXJyYXkoKTsNCglmb3JlYWNoICgkamFu aW1hdGUgYXMgJGFuaW1vcHQpIHsNCgkJaWYgKHRyaW0oJGFuaW1vcHQpID09ICcnKSBjb250 aW51ZTsNCgkJbGlzdCgkam9iaiwgJGp2YWwpID0gZG9fbGlzdCgkYW5pbW9wdCwgIjoiKTsN CgkJJGVsZW1bXSA9IGRvQXJyYXkoJGpvYmosICdkb1F1b3RlJykuICc6Jy4gZG9BcnJheSgk anZhbCwgJ2RvUXVvdGUnKTsNCgl9DQoJJGphbmltYXRlID0gKCRlbGVtKSA/ICJ7IiAuIGlt cGxvZGUoIiwiLCAkZWxlbSkgLiAifSIgOiAnJzsNCg0KCS8vIFNpbmNlIHRoZSByZWdleCAn Y2FwdHVyZXMnIHRoZSBkZWxpbWl0ZXIsIHRoZSBtYXRjaGVzIGFsdGVybmF0ZSBiZXR3ZWVu DQoJLy8gYSBibG9jayBvZiBjb250ZW50IChldmVucykgYW5kIHRoZSBkZWxpbWl0ZXIgaXRz ZWxmIChvZGRzKQ0KJG91dCA9IDw8PEVPSlMNCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2Ny aXB0Ij4NCnZhciBzbWRfcGFnX251bSA9IDE7DQp2YXIgc21kX3BhZ19tYXggPSAxOw0KDQpm dW5jdGlvbiBzbWRfcGFnaWNsZSgpIHsNCgl2YXIgcGFnZWQgPSAnJzsNCgl2YXIgbmF2ID0g Jyc7DQoJdmFyIGhlYWRlciA9ICcnOw0KCXZhciBmb290ZXIgPSAnJzsNCgl2YXIgaWR4ID0g MDsNCgl2YXIgY3RyID0gMTsNCgl2YXIgbmF2aXRlbXMgPSBbeyRuYXZpdGVtc31dOw0KDQoJ aWYgKCd7JGhlYWRlcn0nICE9ICcnKSB7DQoJCWhlYWRlciA9IGpRdWVyeSgieyRoZWFkZXJ9 Iik7DQoJfQ0KCWlmICgneyRmb290ZXJ9JyAhPSAnJykgew0KCQlmb290ZXIgPSBqUXVlcnko InskZm9vdGVyfSIpOw0KCX0NCgl2YXIgcmVnID0gbmV3IFJlZ0V4cCgiKHskc3dyYXBfYmVn fXskc3BsaXRhdH17JHN3cmFwX2VuZH0pIik7DQoJalF1ZXJ5KCJ7JGNvbnRhaW5lcn0iKS5l YWNoKGZ1bmN0aW9uKGNvbnRlbnQpIHsNCgkJc21kX3BhZ2VwYXJ0cyA9IGpRdWVyeSh0aGlz KS5odG1sKCkuc3BsaXQocmVnKTsNCgkJdmFyIGNhcHR1cmUgPSAnJzsNCgkJJChzbWRfcGFn ZXBhcnRzKS5lYWNoKGZ1bmN0aW9uKHBhcnQpIHsNCgkJCWlmIChpZHglMiA9PSAxICYmIHsk ZGVsZXRlfT09MCkgeyAvLyBGb3Igb2RkIHBhcnRzIHRoYXQgYXJlIG5vdCB0byBiZSByZW1v dmVkDQoJCQkJY2FwdHVyZSA9IHRoaXM7DQoJCQl9DQoJCQlpZiAoaWR4JTIgPT0gMCkgew0K CQkJCXBhZ2VkICs9ICc8eyR3cmFwdGFnfSBpZD0ieyR3cmFwaWR9JyArY3RyKyAnIiBjbGFz cz0ieyR3cmFwY2xhc3N9Ij4nICsgY2FwdHVyZSArIHRoaXMgKyAnPC97JHdyYXB0YWd9Pic7 DQoJCQkJY3RyKys7DQoJCQl9DQoJCQlpZHgrKzsNCgkJfSk7DQoJfSk7DQoNCglzbWRfcGFn X21heCA9IGN0ci0xOw0KCXBhZ2VkID0gJ3skb3dyYXBfYmVnfScgK3BhZ2VkKyAneyRvd3Jh cF9lbmR9JzsNCglqUXVlcnkoInskY29udGFpbmVyfSIpLnJlcGxhY2VXaXRoKHBhZ2VkKTsN CglpZiAoaGVhZGVyKSB7DQoJCWpRdWVyeSgiLnskd3JhcGNsYXNzfTpndCgwKSIpLnByZXBl bmQoaGVhZGVyKTsNCgl9DQoJaWYgKGZvb3Rlcikgew0KCQlqUXVlcnkoIi57JHdyYXBjbGFz c306bHQoIisoc21kX3BhZ19tYXgtMSkrIikiKS5hcHBlbmQoZm9vdGVyKTsNCgl9DQoNCgkv LyBOb3cgYWRkIHRoZSBwYWdpbmcgb3B0aW9ucw0KCWpRdWVyeS5lYWNoKG5hdml0ZW1zLCBm dW5jdGlvbigpIHsNCgkJc3dpdGNoKHRoaXMudG9TdHJpbmcoKSkgew0KCQkJY2FzZSAnZic6 DQoJCQkJbmF2ICs9ICc8YSBpZD0ic21kX2ZzdCIgaHJlZj0iIyJ7JHRoZWNsYXNzfSBvbmNs aWNrPSJzbWRfcGFnX3Nob3coXCcxXCcpO3JldHVybihmYWxzZSk7Ij4mbGFxdW87PC9hPic7 DQoJCQkJYnJlYWs7DQoJCQljYXNlICdsJzoNCgkJCQluYXYgKz0gJzxhIGlkPSJzbWRfbHN0 IiBocmVmPSIjInskdGhlY2xhc3N9IG9uY2xpY2s9InNtZF9wYWdfc2hvdyhcJycgK3NtZF9w YWdfbWF4KyAnXCcpO3JldHVybihmYWxzZSk7Ij4mcmFxdW87PC9hPic7DQoJCQkJYnJlYWs7 DQoJCQljYXNlICdwJzoNCgkJCQluYXYgKz0gJzxhIGlkPSJzbWRfcHJ2IiBocmVmPSIjInsk dGhlY2xhc3N9IG9uY2xpY2s9InNtZF9wYWdfc2hvdyhcJy0xXCcpO3JldHVybihmYWxzZSk7 Ij4mbHQ7PC9hPic7DQoJCQkJYnJlYWs7DQoJCQljYXNlICduJzoNCgkJCQluYXYgKz0gJzxh IGlkPSJzbWRfbnh0IiBocmVmPSIjInskdGhlY2xhc3N9IG9uY2xpY2s9InNtZF9wYWdfc2hv dyhcJysxXCcpO3JldHVybihmYWxzZSk7Ij4mZ3Q7PC9hPic7DQoJCQkJYnJlYWs7DQoJCQlj YXNlICcjJzoNCgkJCQlmb3IgKGpkeCA9IDE7IGpkeCA8IGN0cjsgamR4KyspIHsNCgkJCQkJ bmF2ICs9ICcgPGEgaHJlZj0iIyInICsoKHNtZF9wYWdfbnVtPT1qZHgpID8gJ3skdGhlYWN0 aXZlfScgOiAneyR0aGVjbGFzc30nKSsgJyIgb25jbGljaz0ic21kX3BhZ19zaG93KFwnJyAr amR4KyAnXCcpO3JldHVybihmYWxzZSk7Ij4nICtqZHgrICc8L2E+JzsNCgkJCQl9DQoJCQkJ YnJlYWs7DQoJCQlkZWZhdWx0Og0KCQkJCW5hdiArPSAnICc7DQoJCQkJYnJlYWs7DQoJCX0N Cgl9KTsNCg0KCWpRdWVyeSgieyRhZGRuYXZ0b30iKS5lYWNoKGZ1bmN0aW9uKCkgew0KCQlq UXVlcnkodGhpcykuYXBwZW5kKG5hdik7DQoJfSk7DQoNCn0NCg0KLy8gRGlzcGxheSBhIHBh cnRpY3VhbHIgcGFnZQ0KZnVuY3Rpb24gc21kX3BhZ19zaG93KGRpcikgew0KCXJlID0gLyhc K3xcLSk/KFxkKykvOw0KCW1hdGNoZXMgPSByZS5leGVjKGRpcik7DQoJaWYgKG1hdGNoZXNb MV0gPT0gIisiICYmIHNtZF9wYWdfbnVtIDwgc21kX3BhZ19tYXgpIHsNCgkJc21kX3BhZ19u dW0rKzsNCgl9DQoJaWYgKG1hdGNoZXNbMV0gPT0gIi0iICYmIHNtZF9wYWdfbnVtID4gMSkg ew0KCQlzbWRfcGFnX251bS0tOw0KCX0NCglpZiAobWF0Y2hlc1sxXSA9PSBudWxsKSB7DQoJ CXNtZF9wYWdfbnVtID0gbWF0Y2hlc1syXTsNCgl9DQoJLy8gU2hvdyB0aGUgcGFnZQ0KCXRo aXNwYWdlID0gIiN7JHdyYXBpZH0iK3NtZF9wYWdfbnVtOw0KCWpRdWVyeSgiLnskd3JhcGNs YXNzfSIpLmhpZGUoKTsNCglpZiAoInskamFuaW1hdGV9IiAhPSAiIikgew0KCQlqUXVlcnko dGhpc3BhZ2UpLmFuaW1hdGUoeyRqYW5pbWF0ZX0pOw0KCX0NCg0KCWlmIChzbWRfcGFnX251 bT09MSkgew0KCQlqUXVlcnkoIiNzbWRfZnN0IikuYWRkQ2xhc3MoInskbmF2ZGlzYWJsZWR9 Iik7DQoJCWpRdWVyeSgiI3NtZF9wcnYiKS5hZGRDbGFzcygieyRuYXZkaXNhYmxlZH0iKTsN Cgl9IGVsc2Ugew0KCQlqUXVlcnkoIiNzbWRfZnN0IikucmVtb3ZlQ2xhc3MoInskbmF2ZGlz YWJsZWR9Iik7DQoJCWpRdWVyeSgiI3NtZF9wcnYiKS5yZW1vdmVDbGFzcygieyRuYXZkaXNh YmxlZH0iKTsNCgl9DQoJaWYgKHNtZF9wYWdfbnVtPT1zbWRfcGFnX21heCkgew0KCQlqUXVl cnkoIiNzbWRfbHN0IikuYWRkQ2xhc3MoInskbmF2ZGlzYWJsZWR9Iik7DQoJCWpRdWVyeSgi I3NtZF9ueHQiKS5hZGRDbGFzcygieyRuYXZkaXNhYmxlZH0iKTsNCgl9IGVsc2Ugew0KCQlq UXVlcnkoIiNzbWRfbHN0IikucmVtb3ZlQ2xhc3MoInskbmF2ZGlzYWJsZWR9Iik7DQoJCWpR dWVyeSgiI3NtZF9ueHQiKS5yZW1vdmVDbGFzcygieyRuYXZkaXNhYmxlZH0iKTsNCgl9DQoN CgkvLyBTZXQgdGhlIGN1cnJlbnQgY2xhc3MNCglqUXVlcnkoImEueyRuYXZjbGFzc30iKS5l YWNoKGZ1bmN0aW9uKCkgew0KCQlqUXVlcnkodGhpcykucmVtb3ZlQ2xhc3MoInskbmF2YWN0 aXZlfSIpOw0KCQlpZiAoalF1ZXJ5KHRoaXMpLnRleHQoKSA9PSBzbWRfcGFnX251bSkgew0K CQkJalF1ZXJ5KHRoaXMpLmFkZENsYXNzKCJ7JG5hdmFjdGl2ZX0iKTsNCgkJfQ0KCX0pOw0K DQoJLy8gQW5kIHNjcm9sbCB0byB0aGUgdG9wDQoJeyRqZm9jdXN9DQoJcmV0dXJuIGZhbHNl Ow0KfQ0KDQpqUXVlcnkoZnVuY3Rpb24oKSB7DQoJc21kX3BhZ2ljbGUoKTsNCglzbWRfcGFn X3Nob3coMSkNCn0pOw0KPC9zY3JpcHQ+DQpFT0pTOw0KCXJldHVybiAkb3V0Ow0KfSI7czo0 OiJ0eXBlIjtzOjE6IjAiO3M6NToib3JkZXIiO3M6MToiNSI7czo1OiJmbGFncyI7czoxOiIw IjtzOjQ6ImhlbHAiO3M6MTE3MjM6IjxkaXYgaWQ9InNtZF9oZWxwIj4KCgk8aDE+c21kX3Bh Z2ljbGU8L2gxPgoKCTxwPkF1dG9tYXRpY2FsbHkgc3BsaXQgbG9uZyBhcnRpY2xlcyBpbnRv IGJpdGUtc2l6ZSBodW5rcyB3aGljaCB2aXNpdG9ycyBjYW4gbmF2aWdhdGUgYmV0d2VlbiB1 c2luZyB0aGUgaGFuZHkgcGFnZXIuIFRoZSB3aG9sZSBhcnRpY2xlIGlzIGxvYWRlZCBpbiBv bmUgZ287IHRoZSB2YXJpb3VzIHBhZ2VzIGFyZSBzaW1wbHkgaGlkZGVuIGZyb20gdmlldyB2 aWEgalF1ZXJ5LjwvcD4KCgk8aDIgaWQ9ImZlYXR1cmVzIj5GZWF0dXJlczwvaDI+CgoJPHVs PgoJCTxsaT5DaG9vc2Ugd2hlcmUgeW91IHNwbGl0IHRoZSBwYWdlOyBlaXRoZXIgdmlhIHNv bWUgZml4ZWQgY29kZSB5b3VyIGF1dGhvcnMgY2FuIGVudGVyIGF0IGNob3NlbiBicmVhayBw b2ludHMsIG9yIGF0IHBhcnRpY3VsYXIgZWxlbWVudHMgb24gdGhlIHBhZ2UgKGUuZy4gYXQg ZWFjaCA8Y29kZT4mbHQ7aDImZ3Q7PC9jb2RlPik8L2xpPgoJCTxsaT5DaG9vc2UgdGhlIGpR dWVyeSBhbmltYXRpb24gZWZmZWN0IHlvdSB3aXNoIHRvIGFwcGx5IGJldHdlZW4gcGFnZXM8 L2xpPgoJCTxsaT5BdXRvLWZvY3VzIChzY3JvbGwpIGJhY2sgdG8gdGhlIHRvcCBvZiB0aGUg ZG9jdW1lbnQgYXQgdGhlIHN0YXJ0IG9mIGVhY2ggdmlydHVhbCBwYWdlPC9saT4KCQk8bGk+ TWFrZSBoZWFkZXIgYW5kIGZvb3RlciBlbGVtZW50cyAod2hpY2ggYXJlIHVzdWFsbHkgb25s eSBzaG93biBvbiB0aGUgdG9wL2JvdHRvbSBvZiB0aGUgYXJ0aWNsZSwgcmVzcGVjdGl2ZWx5 KSBhcHBlYXIgb24gZXZlcnkgdmlydHVhbCBwYWdlPC9saT4KCTwvdWw+CgoJPGgyIGlkPSJh dXRob3IiPkF1dGhvciAvIGNyZWRpdHM8L2gyPgoKCTxwPjxhIGhyZWY9Imh0dHA6Ly9zdGVm ZGF3c29uLmNvbS9jb250YWN0Ij5TdGVmIERhd3NvbjwvYT4uPC9wPgoKCTxoMiBpZD0iaW5z dGFsbCI+SW5zdGFsbGF0aW9uIC8gVW5pbnN0YWxsYXRpb248L2gyPgoKCTxwPkRvd25sb2Fk IHRoZSBwbHVnaW4gZnJvbSBlaXRoZXIgPGEgaHJlZj0iaHR0cDovL3RleHRwYXR0ZXJuLm9y Zy9wbHVnaW5zLzExMDEvc21kX3BhZ2ljbGUiPnRleHRwYXR0ZXJuLm9yZzwvYT4sIG9yIHRo ZSA8YSBocmVmPSJodHRwOi8vc3RlZmRhd3Nvbi5jb20vc3ciPnNvZnR3YXJlIHBhZ2U8L2E+ LCBwYXN0ZSB0aGUgY29kZSBpbnRvIHRoZSA8c3BhbiBjbGFzcz0iY2FwcyI+VFhQPC9zcGFu PiBBZG1pbiAtJmd0OyBQbHVnaW5zIHBhbmUsIGluc3RhbGwgYW5kIGVuYWJsZSB0aGUgcGx1 Z2luLiBWaXNpdCB0aGUgPGEgaHJlZj0iaHR0cDovL2ZvcnVtLnRleHRwYXR0ZXJuLmNvbS92 aWV3dG9waWMucGhwP2lkPTMxMDg0Ij5mb3J1bSB0aHJlYWQ8L2E+IGZvciBtb3JlIGluZm8g b3IgdG8gcmVwb3J0IG9uIHRoZSBzdWNjZXNzIG9yIG90aGVyd2lzZSBvZiB0aGUgcGx1Z2lu LjwvcD4KCgk8cD5UbyB1bmluc3RhbGwsIHNpbXBseSBkZWxldGUgZnJvbSB0aGUgQWRtaW4g LSZndDsgUGx1Z2lucyBwYWdlLjwvcD4KCgk8aDIgaWQ9InVzYWdlIj5Vc2FnZTwvaDI+CgoJ PHA+U29tZXdoZXJlIG9uIGFuIGluZGl2aWR1YWwgYXJ0aWNsZSBQYWdlIHB1dCBhIGNhbGwg dG8gPGNvZGU+Jmx0O3R4cDpzbWRfcGFnaWNsZSAvJmd0OzwvY29kZT4uIENvbmZpZ3VyZSB0 aGUgcGx1Z2luIHVzaW5nIHRoZSBmb2xsb3dpbmcgYXR0cmlidXRlczsgaXRlbXMgd2l0aCBh IGJvcmRlciByb3VuZCB0aGVtIGFyZSBtYW5kYXRvcnksIGFsdGhvdWdoIHRoZSBkZWZhdWx0 cyB1c3VhbGx5IHN1ZmZpY2U6PC9wPgoKCTx1bD4KCQk8bGk+PHNwYW4gY2xhc3M9ImF0bm0g bWFuZCI+Y29udGFpbmVyPC9zcGFuPiA6IElEIG9mIHRoZSA8c3BhbiBjbGFzcz0iY2FwcyI+ RE9NPC9zcGFuPiB3cmFwcGVyIGVsZW1lbnQgdGhhdCBob2xkcyB5b3VyIGFydGljbGUgY29u dGVudC4gRGVmYXVsdDogPGNvZGU+I2NvbnRlbnQ8L2NvZGU+PC9saT4KCQk8bGk+PHNwYW4g Y2xhc3M9ImF0bm0iPnNwbGl0YXQ8L3NwYW4+IDogd2hhdCB5b3Ugd291bGQgbGlrZSB0byBz ZWFyY2ggZm9yIGluIHlvdXIgYXJ0aWNsZS4gRWFjaCB0aW1lIHRoZSBwbHVnaW4gZmluZHMg b25lIG9mIHRoZXNlIGl0ZW1zLCBhIG5ldyBwYWdlIHdpbGwgYmVnaW4uIEl0IGNhbiBlaXRo ZXIgYmUgc29tZSB0ZXh0IHRoYXQgeW91IGVtYmVkIHdpdGhpbiB5b3VyIGFydGljbGUgYm9k eSAoZS5nLiA8Y29kZT57UGFnZUhlcmV9PC9jb2RlPikgb3Igc29tZSBvdGhlciBjb250ZW50 IHRoYXQgbWlnaHQgYXBwZWFyIGluc2lkZSBhbiA8c3BhbiBjbGFzcz0iY2FwcyI+SFRNTDwv c3Bhbj4gdGFnIHBhaXIuIE5vdGUgdGhhdCBpZiB0aGlzIGlzIHVzZWQgaW4gdGFuZGVtIHdp dGggPGNvZGU+c3BsaXR3cmFwdGFnPC9jb2RlPiB0aGVuIHlvdSBzaG91bGQgZWl0aGVyIHNw ZWNpZnkgdGhlIGVudGlyZSBjb250ZW50IGluc2lkZSB0aGUgdGFnIE9SIHVzZSByZWd1bGFy IGV4cHJlc3Npb24gbm90YXRpb24gdG8gbWF0Y2ggcGFydCBvZiBpdC4gU2VlIGV4YW1wbGVz IDxhIGhyZWY9IiNlZzMiPjM8L2E+IGFuZCA8YSBocmVmPSIjZWc0Ij40PC9hPiBmb3IgbW9y ZS4gRGVmYXVsdDogdW5zZXQ8c3VwIGNsYXNzPSJmb290bm90ZSI+PGEgaHJlZj0iI2ZuMjY3 NjU0NDYwNGE0MGNkYmViNDA1NCI+MTwvYT48L3N1cD48L2xpPgoJCTxsaT48c3BhbiBjbGFz cz0iYXRubSI+c3BsaXR3cmFwdGFnPC9zcGFuPiA6IGFuIChYKUhUTUwgdGFnIHdpdGhvdXQg YnJhY2tldHMgdG8gc2VhcmNoIGZvci4gQ2FuIHdvcmsgdG9nZXRoZXIgd2l0aCA8Y29kZT5z cGxpdGF0PC9jb2RlPiBvciBvbiBpdHMgb3duIHRvIHNlYXJjaCBmb3IgYW55IHBhcnRpY3Vs YXIgc2V0IG9mIGVsZW1lbnRzIGluc2lkZSB5b3VyIDxjb2RlPmNvbnRhaW5lcjwvY29kZT4u IERlZmF1bHQ6IDxjb2RlPmgyPC9jb2RlPjxzdXAgY2xhc3M9ImZvb3Rub3RlIj48YSBocmVm PSIjZm4yNjc2NTQ0NjA0YTQwY2RiZWI0MDU0Ij4xPC9hPjwvc3VwPjwvbGk+CgkJPGxpPjxz cGFuIGNsYXNzPSJhdG5tIj5kZWxldGU8L3NwYW4+IDogd2hldGhlciB5b3Ugd2lzaCB0byBy ZW1vdmUgdGhlIGVsZW1lbnQgYXQgd2hpY2ggeW91IGNob3NlIHRvIDxjb2RlPnNwbGl0YXQ8 L2NvZGU+IC8gPGNvZGU+c3BsaXR3cmFwdGFnPC9jb2RlPi4gVGhlIGRlZmF1bHQgaXMgYXV0 b21hdGljOiBmb3IgPGNvZGU+c3BsaXRhdDwvY29kZT4gKHVzZWQgb24gaXRzIG93bikgaXQg aXMgc2V0IHRvIDEsIGFuZCBmb3IgPGNvZGU+c3BsaXR3cmFwdGFnPC9jb2RlPiBpdCBpcyBz ZXQgdG8gMCB0byBwcmVzZXJ2ZSB0aGUgdGFnIGFuZCBpdHMgY29udGVudHM8L2xpPgoJCTxs aT48c3BhbiBjbGFzcz0iYXRubSI+aGVhZGVyPC9zcGFuPiA6IGEgcmVmZXJlbmNlIHRvIHRo ZSA8c3BhbiBjbGFzcz0iY2FwcyI+RE9NPC9zcGFuPiBlbGVtZW50IHRoYXQgY29udGFpbnMg eW91ciBhcnRpY2xlIHRpdGxlLiBUaGlzIGlzIHNvIGl0IGNhbiBiZSByZXBlYXRlZCBhdCB0 aGUgdG9wIG9mIGVhY2ggdmlydHVhbCBwYWdlLiBEZWZhdWx0OiA8Y29kZT5oMTwvY29kZT48 L2xpPgoJCTxsaT48c3BhbiBjbGFzcz0iYXRubSI+Zm9vdGVyPC9zcGFuPiA6IGEgcmVmZXJl bmNlIHRvIHRoZSA8c3BhbiBjbGFzcz0iY2FwcyI+RE9NPC9zcGFuPiBlbGVtZW50IHRoYXQg Y29udGFpbnMgeW91ciBhcnRpY2xlIGZvb3Rlci4gTm9ybWFsbHkgdGhpcyB3b3VsZCBjb250 YWluIHRoZSBhcnRpY2xlIGNvbW1lbnRzLCBvciBzb21lIHJlbGF0ZWQgYXJ0aWNsZXMgdGhh dCB3b3VsZCBvbmx5IGJlIGRpc3BsYXllZCBhdCB0aGUgdmVyeSBlbmQgb2YgdGhlIGFydGlj bGUuIElmIHlvdSB3aXNoIHRvIGNvcHkgdGhlIGZvb3RlciBjb250ZW50IGludG8gdGhlIGJv dHRvbSBvZiBldmVyeSB2aXJ0dWFsIHBhZ2UsIHNwZWNpZnkgaXRzIDxzcGFuIGNsYXNzPSJj YXBzIj5ET008L3NwYW4+IHJlZmVyZW5jZSBoZXJlLiBEZWZhdWx0OiB1bnNldDwvbGk+CgkJ PGxpPjxzcGFuIGNsYXNzPSJhdG5tIj53cmFwdGFnPC9zcGFuPiA6IHRoZSAoWClIVE1MIHRh Zywgd2l0aG91dCBicmFja2V0cywgdGhhdCB5b3Ugd2lzaCB0byB3cmFwIGVhY2ggcGFnZSB3 aXRoLiBFYWNoIGVsZW1lbnQgd2lsbCBiZSBjcmVhdGVkIGZvciB5b3UuIERlZmF1bHQ6IDxj b2RlPmRpdjwvY29kZT48c3VwIGNsYXNzPSJmb290bm90ZSI+PGEgaHJlZj0iI2ZuMTYyNjU2 MzY0MDRhNDBjZGJlYjQ0M2QiPjI8L2E+PC9zdXA+PC9saT4KCQk8bGk+PHNwYW4gY2xhc3M9 ImF0bm0iPndyYXBpZDwvc3Bhbj4gOiB0aGUgSUQgcHJlZml4IG9mIHRoZSB3cmFwdGFnLiBF YWNoIDxjb2RlPndyYXBpZDwvY29kZT4gaGFzIHRoZSBwYWdlIG51bWJlciBhZGRlZCB0byBp dC4gRGVmYXVsdDogPGNvZGU+c21kX3BhZ188L2NvZGU+IChpLmUuIHBhZ2VzIGJlY29tZSA8 Y29kZT5pZD0mcXVvdDtzbWRfcGFnXzEmcXVvdDs8L2NvZGU+LCA8Y29kZT5pZD0mcXVvdDtz bWRfcGFnXzImcXVvdDs8L2NvZGU+IGFuZCBzbyBvbik8c3VwIGNsYXNzPSJmb290bm90ZSI+ PGEgaHJlZj0iI2ZuMTYyNjU2MzY0MDRhNDBjZGJlYjQ0M2QiPjI8L2E+PC9zdXA+PC9saT4K CQk8bGk+PHNwYW4gY2xhc3M9ImF0bm0iPndyYXBjbGFzczwvc3Bhbj4gOiBjbGFzcyB0byBh cHBseSB0byB0aGUgd3JhcHRhZy4gRGVmYXVsdDogPGNvZGU+c21kX3BhZzwvY29kZT48c3Vw IGNsYXNzPSJmb290bm90ZSI+PGEgaHJlZj0iI2ZuMTYyNjU2MzY0MDRhNDBjZGJlYjQ0M2Qi PjI8L2E+PC9zdXA+PC9saT4KCQk8bGk+PHNwYW4gY2xhc3M9ImF0bm0iPm91dGVyd3JhcHRh Zzwvc3Bhbj4gOiB0aGUgKFgpSFRNTCB0YWcsIHdpdGhvdXQgYnJhY2tldHMsIGluIHdoaWNo IHlvdSB3aXNoIHRvIHdyYXAgdGhlIGVudGlyZSBzZXQgb2YgcGFnZXMuIFRoaXMgZWxlbWVu dCB3aWxsIGJlIGNyZWF0ZWQgZm9yIHlvdS4gRGVmYXVsdDogPGNvZGU+ZGl2PC9jb2RlPjwv bGk+CgkJPGxpPjxzcGFuIGNsYXNzPSJhdG5tIj5vdXRlcndyYXBpZDwvc3Bhbj4gOiB0aGUg SUQgdG8gYXBwbHkgdG8gdGhlIDxjb2RlPm91dGVyd3JhcHRhZzwvY29kZT4uIERlZmF1bHQ6 IDxjb2RlPnNtZF9wYWdpY2xlPC9jb2RlPjwvbGk+CgkJPGxpPjxzcGFuIGNsYXNzPSJhdG5t Ij5hbmltYXRlPC9zcGFuPiA6IGxpc3Qgb2YgalF1ZXJ5IG5hbWU6dmFsdWUgcGFpcnMgdG8g cGFzcyB0byB0aGUgPGEgaHJlZj0iaHR0cDovL2RvY3MuanF1ZXJ5LmNvbS9FZmZlY3RzL2Fu aW1hdGUiPmFuaW1hdGUoKTwvYT4gZnVuY3Rpb24uIEVhY2ggdGltZSB5b3UgY2xpY2sgYSBw YWdlIG51bWJlciwgdGhpcyBhbmltYXRpb24gZWZmZWN0IGlzIHBsYXllZC4gRGVmYXVsdDog PGNvZGU+b3BhY2l0eTpzaG93PC9jb2RlPjxzdXAgY2xhc3M9ImZvb3Rub3RlIj48YSBocmVm PSIjZm4xNjI2NTYzNjQwNGE0MGNkYmViNDQzZCI+MjwvYT48L3N1cD48L2xpPgoJCTxsaT48 c3BhbiBjbGFzcz0iYXRubSI+Zm9jdXM8L3NwYW4+IDogYSA8c3BhbiBjbGFzcz0iY2FwcyI+ RE9NPC9zcGFuPiBlbGVtZW50IHJlZmVyZW5jZSB0byBzY3JvbGwgYmFjayB0bywgd2hlbmV2 ZXIgYSBwYWdlIG51bWJlciBpcyBjbGlja2VkIGZyb20gdGhlIG5hdi4gQ2FuIHRha2UgYW4g b3B0aW9uYWwgc2Nyb2xsIHNwZWVkIGluIG1pbGxpc2Vjb25kcyBieSBzcGVjaWZ5aW5nIHRo ZSBzcGVlZCB2YWx1ZSBhZnRlciBhIGNvbG9uLiBEZWZhdWx0OiA8Y29kZT5ib2R5OjQwMDwv Y29kZT48L2xpPgoJCTxsaT48c3BhbiBjbGFzcz0iYXRubSI+YWRkbmF2dG88L3NwYW4+IDog PHNwYW4gY2xhc3M9ImNhcHMiPkRPTTwvc3Bhbj4gZWxlbWVudCB0byB3aGljaCB0byBhZGQg dGhlIHBhZ2UgbnVtYmVycyBuYXZpZ2F0aW9uIHdpZGdldC4gVGhlIGVsZW1lbnQgeW91IG5h bWUgaGVyZSAmIzgyMTI7IGl0IG1heSBiZSBhIHNpbmdsZSBlbGVtZW50IElEIG9yIGEgY2xh c3Mgc28geW91IGNhbiBhZGQgdGhlIHdpZGdldCB0byBtb3JlIHRoYW4gb25lIGVsZW1lbnQg JiM4MjEyOyBtdXN0IGFscmVhZHkgYmUgZGVmaW5lZCBvbiB5b3VyIHBhZ2UuIERlZmF1bHQ6 IDxjb2RlPiNzbWRfcGFnbmF2PC9jb2RlPjxzdXAgY2xhc3M9ImZvb3Rub3RlIj48YSBocmVm PSIjZm4xNjI2NTYzNjQwNGE0MGNkYmViNDQzZCI+MjwvYT48L3N1cD48L2xpPgoJCTxsaT48 c3BhbiBjbGFzcz0iYXRubSI+bmF2Y2xhc3M8L3NwYW4+IDogY2xhc3MgdG8gYXBwbHkgdG8g dGhlIG5hdmlnYXRpb24gY29udGFpbmVyLiBEZWZhdWx0OiA8Y29kZT5zbWRfcGFnZXM8L2Nv ZGU+PHN1cCBjbGFzcz0iZm9vdG5vdGUiPjxhIGhyZWY9IiNmbjE2MjY1NjM2NDA0YTQwY2Ri ZWI0NDNkIj4yPC9hPjwvc3VwPjwvbGk+CgkJPGxpPjxzcGFuIGNsYXNzPSJhdG5tIj5uYXZh Y3RpdmU8L3NwYW4+IDogY2xhc3MgdG8gaW5kaWNhdGUgdGhlIGN1cnJlbnRseSBzZWxlY3Rl ZCBwYWdlLiBEZWZhdWx0OiA8Y29kZT5zbWRfY3VycnBhZ2U8L2NvZGU+PHN1cCBjbGFzcz0i Zm9vdG5vdGUiPjxhIGhyZWY9IiNmbjE2MjY1NjM2NDA0YTQwY2RiZWI0NDNkIj4yPC9hPjwv c3VwPjwvbGk+CgkJPGxpPjxzcGFuIGNsYXNzPSJhdG5tIj5uYXZkaXNhYmxlZDwvc3Bhbj4g OiBkdXJpbmcgdGhlIGNvdXJzZSBvZiBuYXZpZ2F0aW5nIHBhZ2VzLCB0aGUgbmV4dC9wcmV2 IGxpbmtzIGFyZSBzb21ldGltZXMgbm90IHJlcXVpcmVkLiBTaW5jZSBpdCBpcyBub3QgcG9z c2liZSBpbiA8c3BhbiBjbGFzcz0iY2FwcyI+SFRNTDwvc3Bhbj4gdG8gJiM4MjE2O2Rpc2Fi bGUmIzgyMTc7IGFuIGFuY2hvciwgdGhpcyBjbGFzcyBpcyBhcHBsaWVkIHRvIHRoZSBhcnJv d3Mgc28geW91IG1heSBjaG9vc2UgdG8gc3R5bGUgdGhlbSBkaWZmZXJlbnRseS4gRGVmYXVs dDogPGNvZGU+c21kX2Rpc2FibGVkPC9jb2RlPjxzdXAgY2xhc3M9ImZvb3Rub3RlIj48YSBo cmVmPSIjZm4xNjI2NTYzNjQwNGE0MGNkYmViNDQzZCI+MjwvYT48L3N1cD48L2xpPgoJCTxs aT48c3BhbiBjbGFzcz0iYXRubSI+bmF2ZGlzcGxheTwvc3Bhbj4gOiB3aGljaCBuYXZpZ2F0 aW9uIGVsZW1lbnRzIHRvIHNob3cuIERlZmF1bHQ6IDxjb2RlPmYgcCAjIG4gbDwvY29kZT4g Q2hvb3NlIGZyb206Cgk8dWw+CgkJPGxpPjxzdHJvbmc+Zjwvc3Ryb25nPjogZmlyc3QgcGFn ZSAoPGNvZGU+JmFtcDtsYXF1bzs8L2NvZGU+KTwvbGk+CgkJPGxpPjxzdHJvbmc+cDwvc3Ry b25nPjogcHJldmlvdXMgcGFnZSAoPGNvZGU+JmFtcDtsdDs8L2NvZGU+KTwvbGk+CgkJPGxp PjxzdHJvbmc+Izwvc3Ryb25nPjogdGhlIHBhZ2UgbnVtYmVyczwvbGk+CgkJPGxpPjxzdHJv bmc+bjwvc3Ryb25nPjogbmV4dCBwYWdlICg8Y29kZT4mYW1wO2d0OzwvY29kZT4pPC9saT4K CQk8bGk+PHN0cm9uZz5sPC9zdHJvbmc+OiBsYXN0IHBhZ2UgKDxjb2RlPiZhbXA7cmFxdW87 PC9jb2RlPik8L2xpPgoJPC91bD48L2xpPgoJPC91bD4KCgk8cCBpZD0iZm4yNjc2NTQ0NjA0 YTQwY2RiZWI0MDU0IiBjbGFzcz0iZm9vdG5vdGUiPjxzdXA+MTwvc3VwPiBhdCBsZWFzdCBv bmUgb2YgZWl0aGVyIDxjb2RlPnNwbGl0PC9jb2RlPiBvciA8Y29kZT5zcGxpdHdyYXB0YWc8 L2NvZGU+IGFyZSByZXF1aXJlZC48L3A+CgoJPHAgaWQ9ImZuMTYyNjU2MzY0MDRhNDBjZGJl YjQ0M2QiIGNsYXNzPSJmb290bm90ZSI+PHN1cD4yPC9zdXA+IGlmIGFueSBvZiB0aGVzZSBh dHRyaWJ1dGVzIGFyZSB1bnNldCAoPGNvZGU+PSZxdW90OyZxdW90OzwvY29kZT4pIGluIHRo ZSB0YWcsIHRoZXkgd2lsbCBiZSByZXNldCB0byB0aGVpciBkZWZhdWx0cyBhZ2Fpbi48L3A+ CgoJPGgyIGlkPSJleGFtcGxlcyI+RXhhbXBsZXM8L2gyPgoKCTxoMyBpZD0iZWcxIj5FeGFt cGxlIDE8L2gzPgoKPHByZSBjbGFzcz0iYmxvY2siPjxjb2RlIGNsYXNzPSJibG9jayI+Jmx0 O2RpdiBpZD0mcXVvdDtzbWRfcGFnbmF2JnF1b3Q7Jmd0OyZsdDsvZGl2Jmd0OwombHQ7dHhw OnNtZF9wYWdpY2xlIGNvbnRhaW5lcj0mcXVvdDsjcGFnZW1haW4mcXVvdDsKICAgICBmb290 ZXI9JnF1b3Q7I25hdmxvY2FsJnF1b3Q7IC8mZ3Q7CjwvY29kZT48L3ByZT4KCgk8cD5UaGlz IGV4YW1wbGUgd2lsbDo8L3A+CgoJPHVsPgoJCTxsaT5zcGxpdCB0aGUgZG9jdW1lbnQgYXQg PGNvZGU+Jmx0O2gyJmd0OzwvY29kZT4gdGFncyBpbnNpZGUgdGhlIDxjb2RlPnBhZ2VtYWlu PC9jb2RlPiBjb250YWluZXIgZGl2PC9saT4KCQk8bGk+YWRkIHRoZSBwYWdlIG5hdmlnYXRp b24gdG8gdGhlIDxjb2RlPnNtZF9wYWduYXY8L2NvZGU+IGRpdjwvbGk+CgkJPGxpPmNvcHkg dGhlIDxjb2RlPiNuYXZsb2NhbDwvY29kZT4gZWxlbWVudCB0byB0aGUgYm90dG9tIG9mIGVh Y2ggcGFnZTwvbGk+Cgk8L3VsPgoKCTxoMyBpZD0iZWcyIj5FeGFtcGxlIDI8L2gzPgoKPHBy ZSBjbGFzcz0iYmxvY2siPjxjb2RlIGNsYXNzPSJibG9jayI+Jmx0O2RpdiBjbGFzcz0mcXVv dDtzbWRfcGFnaW5hdGlvbiZxdW90OyZndDsmbHQ7L2RpdiZndDsKJmx0O3R4cDphcnRpY2xl IC8mZ3Q7CiZsdDtkaXYgY2xhc3M9JnF1b3Q7c21kX3BhZ2luYXRpb24mcXVvdDsmZ3Q7Jmx0 Oy9kaXYmZ3Q7CiZsdDt0eHA6c21kX3BhZ2ljbGUgY29udGFpbmVyPSZxdW90OyNwYWdlbWFp biZxdW90OwogICAgIHNwbGl0YXQ9JnF1b3Q7e25ld3BhZ2V9JnF1b3Q7IHNwbGl0d3JhcHRh Zz0mcXVvdDsmcXVvdDsKICAgICBhZGRuYXZ0bz0mcXVvdDsuc21kX3BhZ2luYXRpb24mcXVv dDsgLyZndDsKPC9jb2RlPjwvcHJlPgoKCTxwPlRoaXMgZXhhbXBsZTo8L3A+CgoJPHVsPgoJ CTxsaT5zdGFydHMgYSBuZXcgcGFnZSBldmVyeSB0aW1lIHRoZSBib2R5IGhhcyB0aGUgcGhy YXNlIDxjb2RlPntuZXdwYWdlfTwvY29kZT4gaW4gaXQ8L2xpPgoJCTxsaT5hZGRzIHRoZSBu YXYgYWJvdmUgYW5kIGJlbG93IHRoZSBhcnRpY2xlIGJ5IHVzaW5nIGEgY2xhc3MgbmFtZSAo bm90ZSB0aGUgPGNvZGU+LjwvY29kZT4gaW4gPGNvZGU+LnNtZF9wYWdpbmF0aW9uPC9jb2Rl PiB0byBpbmRpY2F0ZSBpdCBpcyBhIGNsYXNzIG5vdCBhbiBJRCB3ZSBhcmUgcmVmZXJyaW5n IHRvPC9saT4KCTwvdWw+CgoJPHA+Tm90ZSB0aGF0IDxjb2RlPnNwbGl0d3JhcHRhZzwvY29k ZT4gaXMgdW5zZXQuPC9wPgoKCTxoMyBpZD0iZWczIj5FeGFtcGxlIDM8L2gzPgoKPHByZSBj bGFzcz0iYmxvY2siPjxjb2RlIGNsYXNzPSJibG9jayI+Jmx0O2RpdiBpZD0mcXVvdDtzbWRf cGFnbmF2JnF1b3Q7Jmd0OyZsdDsvZGl2Jmd0OwombHQ7dHhwOnNtZF9wYWdpY2xlIGNvbnRh aW5lcj0mcXVvdDsjd3JhcHBlciZxdW90OwogICAgIHNwbGl0YXQ9JnF1b3Q7Q29tbWVudGFy eSZxdW90OyBzcGxpdHdyYXB0YWc9JnF1b3Q7aDMmcXVvdDsKICAgICBmb2N1cz0mcXVvdDto MToxMDAwJnF1b3Q7IC8mZ3Q7CjwvY29kZT48L3ByZT4KCgk8cD5UaGlzIGV4YW1wbGUgd2ls bDo8L3A+CgoJPHVsPgoJCTxsaT5Pbmx5IHNwbGl0IHRoZSBkb2N1bWVudCB3aGVyZXZlciBp dCBmaW5kcyA8Y29kZT4mbHQ7aDMmZ3Q7Q29tbWVudGFyeSZsdDsvaDMmZ3Q7PC9jb2RlPiBp bnNpZGUgdGhlIDxjb2RlPndyYXBwZXI8L2NvZGU+IGRpdjwvbGk+CgkJPGxpPlNjcm9sbCB1 cCB0byB0aGUgPGNvZGU+Jmx0O2gxJmd0OzwvY29kZT4gdGFnIGFuZCB0YWtlIG9uZSBzZWNv bmQgKDEwMDAgbWlsbGlzZWNvbmRzKSB0byBkbyBzbyBlYWNoIHRpbWUgYSBwYWdlIG51bWJl ciBpcyBjbGlja2VkPC9saT4KCTwvdWw+CgoJPGgzIGlkPSJlZzQiPkV4YW1wbGUgNDwvaDM+ Cgo8cHJlIGNsYXNzPSJibG9jayI+PGNvZGUgY2xhc3M9ImJsb2NrIj4mbHQ7ZGl2IGlkPSZx dW90O3NtZF9wYWduYXYmcXVvdDsmZ3Q7Jmx0Oy9kaXYmZ3Q7CiZsdDt0eHA6c21kX3BhZ2lj bGUgY29udGFpbmVyPSZxdW90OyN3cmFwcGVyJnF1b3Q7CiAgICAgc3BsaXRhdD0mcXVvdDsu KnJlZC4qJnF1b3Q7IHNwbGl0d3JhcHRhZz0mcXVvdDtoMyZxdW90OyAvJmd0Owo8L2NvZGU+ PC9wcmU+CgoJPHA+VGhpcyBleGFtcGxlIHdpbGwgc3BsaXQgdGhlIGRvY3VtZW50IHdoZXJl dmVyIGl0IGZpbmRzIGFuIDxjb2RlPiZsdDtoMyZndDs8L2NvZGU+IHRhZyB0aGF0IGhhcyB0 aGUgY2hhcmFjdGVycyA8Y29kZT5yZWQ8L2NvZGU+IGluc2lkZSB0aGVtLiBUaGUgPGNvZGU+ Lio8L2NvZGU+IGlzIGEgPGEgaHJlZj0iaHR0cDovL3d3dy5yZWd1bGFyLWV4cHJlc3Npb25z LmluZm8vIj5yZWd1bGFyIGV4cHJlc3Npb248L2E+IHdpbGRjYXJkIHRoYXQgbWF0Y2hlcyBh bnkgY2hhcmFjdGVycyBiZWZvcmUgYW5kIGFmdGVyICYjODIxNjtyZWQmIzgyMTc7LjwvcD4K Cgk8cD5Gb3IgZXhhbXBsZSwgPGNvZGU+Jmx0O2gzJmd0O0JsaW5rZXJlZCB2aXNpb24mbHQ7 L2gzJmd0OzwvY29kZT4gYW5kIDxjb2RlPiZsdDtoMyZndDtEcmVkZXJpY2sgVGF0dW0mbHQ7 L2gzJmd0OzwvY29kZT4gd2lsbCBtYXRjaCwgYnV0IDxjb2RlPiZsdDtoMyZndDtIZXJlIGRv Z2d5Jmx0Oy9oMyZndDs8L2NvZGU+IHdpbGwgbm90LjwvcD4KCjwvZGl2Pgo8IS0tICoqKiBC RUdJTiBQTFVHSU4gQ1NTICoqKiAtLT4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KI3NtZF9o ZWxwIHsgbGluZS1oZWlnaHQ6MS41IDt9CiNzbWRfaGVscCBjb2RlIHsgZm9udC13ZWlnaHQ6 Ym9sZDsgZm9udDogMTA1JS8xMzAlICJDb3VyaWVyIE5ldyIsIGNvdXJpZXIsIG1vbm9zcGFj ZTsgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZDQzt9CiNzbWRfaGVscCBjb2RlLmJsb2NrIHsg Zm9udC13ZWlnaHQ6bm9ybWFsOyBib3JkZXI6MXB4IGRvdHRlZCAjOTk5OyBiYWNrZ3JvdW5k LWNvbG9yOiAjZjBlNjhjOyBkaXNwbGF5OmJsb2NrOyBtYXJnaW46MTBweCAxMHB4IDIwcHg7 IHBhZGRpbmc6MTBweDsgfQojc21kX2hlbHAgaDEgeyBjb2xvcjogIzM2OTsgZm9udDogMjBw eCBHZW9yZ2lhLCBzYW5zLXNlcmlmOyBtYXJnaW46IDA7IHRleHQtYWxpZ246IGNlbnRlcjsg fQojc21kX2hlbHAgaDIgeyBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7IHBhZGRp bmc6MTBweCAwIDA7IGNvbG9yOiAjMzY5OyBmb250OiAxN3B4IEdlb3JnaWEsIHNhbnMtc2Vy aWY7IH0KI3NtZF9oZWxwIGgzIHsgY29sb3I6ICMyNzU2ODU7IGZvbnQ6IGJvbGQgMTJweCBB cmlhbCwgc2Fucy1zZXJpZjsgbGV0dGVyLXNwYWNpbmc6IDFweDsgbWFyZ2luOiAxMHB4IDAg MDt0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5l O30KI3NtZF9oZWxwIGg0IHsgZm9udDogYm9sZCAxMXB4IEFyaWFsLCBzYW5zLXNlcmlmOyBs ZXR0ZXItc3BhY2luZzogMXB4OyBtYXJnaW46IDEwcHggMCAwIDt0ZXh0LXRyYW5zZm9ybTog dXBwZXJjYXNlOyB9CiNzbWRfaGVscCAuYXRubSB7IGZvbnQtd2VpZ2h0OmJvbGQ7IGNvbG9y OiMzM2Q7IH0KI3NtZF9oZWxwIC5tYW5kIHsgYmFja2dyb3VuZDojZWVlOyBib3JkZXI6MXB4 IGRvdHRlZCAjOTk5OyB9CiNzbWRfaGVscCB0YWJsZSB7d2lkdGg6OTAlOyB0ZXh0LWFsaWdu OmNlbnRlcjsgcGFkZGluZy1ib3R0b206MWVtO30KI3NtZF9oZWxwIHRkLCAjc21kX2hlbHAg dGgge2JvcmRlcjoxcHggc29saWQgIzk5OTsgcGFkZGluZzouNWVtIDA7fQojc21kX2hlbHAg dWwgeyBsaXN0LXN0eWxlLXR5cGU6c3F1YXJlOyB9CiNzbWRfaGVscCAucmVxdWlyZWQge2Nv bG9yOnJlZDt9CiNzbWRfaGVscCBsaSB7IG1hcmdpbjo1cHggMjBweCA1cHggMzBweDsgfQoj c21kX2hlbHAgLmJyZWFrIHsgbWFyZ2luLXRvcDo1cHg7IH0KPC9zCjwvc3R5bGU+CjwhLS0g KioqIEVORCBQTFVHSU4gQ1NTICoqKiAtLT4KIjtzOjM6Im1kNSI7czozMjoiZTM1MDFhOWVh MjAzYmIxYjgzZDJmZDFmNjc5ODgwZTMiO30=