PHP Classes

eKatab PHP ePub Reader: Display ebooks in the epub format on Web pages

Recommend this page to a friend!
     
  Info   Example   View files Files   Install with Composer Install with Composer   Download Download   Reputation   Support forum   Blog    
Ratings Unique User Downloads Download Rankings
StarStarStarStar 74%Total: 742 This week: 1All time: 4,518 This week: 39Up
Version License PHP version Categories
ekatab 1.0.3Custom (specified...5.6HTML, XML, PHP 5, Content management, P...
Description 

Author

This package can display eBooks in the epub format.

It can retrieve a given ebook from a local file or a remote URL.

The class can extract its contents and display the ebook on a Web page.

The ebook can be accessed via Web requests to the extracted ebook pages.

Innovation Award
PHP Programming Innovation award nominee
August 2016
Number 7


Prize: One downloadable copy of PhpED Professional
ePub is a common format of eBooks supported by many eBook reader devices.

Basically ePub files are ZIP archives with files of the contents of the ebook.

This class can extract the contents of a ebook in the ePub format and parse it, so the ebook pages can be viewed on Web pages.

Manuel Lemos
Picture of Karl Holz
  Performance   Level  
Name: Karl Holz <contact>
Classes: 14 packages by
Country: Canada Canada
Age: 44
All time rank: 44918 in Canada Canada
Week rank: 43 Up2 in Canada Canada Up
Innovation award
Innovation award
Nominee: 9x

Example

<?php
// launcher script for zip:///home/rock64/php/eKatab/Books/RESTful_Web_Services.epub
require_once 'eKatab/eKatab.class.php';
$book = new eKatab();
$book->urlmap = unserialize(base64_decode('YTo1Njp7czoxNDoiL09FQlBTL3RvYy5uY3giO3M6MzoibmN4IjtzOjIyOiIvT0VCUFMvRGVqYVZ1U2VyaWYub3RmIjtzOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuMSI7czoyNjoiL09FQlBTL0RlamFWdVNhbnMtQm9sZC5vdGYiO3M6MjA6ImVwdWIuZW1iZWRkZWQuZm9udC4yIjtzOjI5OiIvT0VCUFMvVWJ1bnR1TW9uby1SZWd1bGFyLm90ZiI7czoyMDoiZXB1Yi5lbWJlZGRlZC5mb250LjMiO3M6MjY6Ii9PRUJQUy9VYnVudHVNb25vLUJvbGQub3RmIjtzOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuNCI7czozMjoiL09FQlBTL1VidW50dU1vbm8tQm9sZEl0YWxpYy5vdGYiO3M6MjA6ImVwdWIuZW1iZWRkZWQuZm9udC41IjtzOjI4OiIvT0VCUFMvVWJ1bnR1TW9uby1JdGFsaWMub3RmIjtzOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuNiI7czoyMDoiL09FQlBTL2JrMDEtdG9jLmh0bWwiO3M6NzoiaHRtbHRvYyI7czoxNToiL09FQlBTL2NvcmUuY3NzIjtzOjg6Imh0bWwtY3NzIjtzOjE3OiIvT0VCUFMvY292ZXIuaHRtbCI7czo1OiJjb3ZlciI7czoyNjoiL09FQlBTL29ybV9mcm9udF9jb3Zlci5qcGciO3M6MTE6ImNvdmVyLWltYWdlIjtzOjE3OiIvT0VCUFMvaW5kZXguaHRtbCI7czoxMToiaWQtaWQyNDM1MTEiO3M6MjI6Ii9PRUJQUy9kZWRpY2F0aW9uLmh0bWwiO3M6MTE6ImlkLWlkMzU0NjA1IjtzOjMxOiIvT0VCUFMvdXBncmFkZV9vZmZlcl9mcm9udC5odG1sIjtzOjExOiJpZC1pZDQwOTI4OCI7czoyNToiL09FQlBTL2V4YW1wbGVzX3BhZ2UuaHRtbCI7czoxMToiaWQtaWQ0MDkzMTkiO3M6MTY6Ii9PRUJQUy9wcjA0Lmh0bWwiO3M6MTE6ImlkLWlkNDA5Mzc0IjtzOjE2OiIvT0VCUFMvcHIwNS5odG1sIjtzOjExOiJpZC1pZDQwOTI2MyI7czoxNjoiL09FQlBTL2NoMDEuaHRtbCI7czoxMToiaWQtaWQzNzA5MzQiO3M6MTY6Ii9PRUJQUy9jaDAyLmh0bWwiO3M6MTE6ImlkLWlkNDMzOTcxIjtzOjE2OiIvT0VCUFMvY2gwMy5odG1sIjtzOjExOiJpZC1pZDM3OTk3MCI7czoxNjoiL09FQlBTL2NoMDQuaHRtbCI7czoxMToiaWQtaWQzODAxNTMiO3M6MTY6Ii9PRUJQUy9jaDA1Lmh0bWwiO3M6MTE6ImlkLWlkMzgwNDEyIjtzOjE2OiIvT0VCUFMvY2gwNi5odG1sIjtzOjExOiJpZC1pZDM3Nzg3OCI7czoxNjoiL09FQlBTL2NoMDcuaHRtbCI7czoxMToiaWQtaWQzNTUxOTEiO3M6MTY6Ii9PRUJQUy9jaDA4Lmh0bWwiO3M6MTE6ImlkLWlkMzc5NDg3IjtzOjE2OiIvT0VCUFMvY2gwOS5odG1sIjtzOjExOiJpZC1pZDM3OTQ0NCI7czoxNjoiL09FQlBTL2NoMTAuaHRtbCI7czoxMToiaWQtaWQ0MjAwMDMiO3M6MTY6Ii9PRUJQUy9jaDExLmh0bWwiO3M6MTE6ImlkLWlkNDIzMTgzIjtzOjE2OiIvT0VCUFMvY2gxMi5odG1sIjtzOjExOiJpZC1pZDM3MzY5MCI7czoxNToiL09FQlBTL2FwYS5odG1sIjtzOjExOiJpZC1pZDQxMTc0OCI7czoxNToiL09FQlBTL2FwYi5odG1sIjtzOjExOiJpZC1pZDM4NjAzNiI7czoxNToiL09FQlBTL2FwYy5odG1sIjtzOjExOiJpZC1pZDM4NTY5OSI7czoxNjoiL09FQlBTL2l4MDEuaHRtbCI7czoxMToiaWQtaWQ0MjQ4MDQiO3M6MjM6Ii9PRUJQUy9hdXRob3JfYmlvcy5odG1sIjtzOjExOiJpZC1pZDM5NTA4OCI7czoxNjoiL09FQlBTL2NvMDIuaHRtbCI7czoxMToiaWQtaWQzOTUxMzciO3M6MzA6Ii9PRUJQUy91cGdyYWRlX29mZmVyX2JhY2suaHRtbCI7czoxMToiaWQtaWQzOTUxNDgiO3M6MjE6Ii9PRUJQUy9jb3B5cmlnaHQuaHRtbCI7czoxMToiaWQtaWQzOTUxNTciO3M6Mjg6Ii9PRUJQUy9vcmVpbGx5X2xhcmdlLnBuZy5qcGciO3M6OToiaWQxMTkyNzMzIjtzOjU3OiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTU2LnBuZy5qcGciO3M6OToiaWQxMTUwMTMwIjtzOjUzOiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTU4LnBuZyI7czo5OiJpZDExNDQ2ODIiO3M6NTM6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjAucG5nIjtzOjk6ImlkMTE0ODcyNSI7czo1MzoiL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2Mi5wbmciO3M6OToiaWQxMjIxODE2IjtzOjUzOiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTY0LnBuZyI7czo5OiJpZDExNDUxNjgiO3M6NTM6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjYucG5nIjtzOjk6ImlkMTE0Nzk0NiI7czo1MzoiL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2OC5wbmciO3M6OToiaWQxMTU0NzA3IjtzOjU3OiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTcwLnBuZy5qcGciO3M6OToiaWQxMTkyNTQ1IjtzOjUzOiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTcyLnBuZyI7czo5OiJpZDEyMTY0MzAiO3M6NTM6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzQucG5nIjtzOjk6ImlkMTE0ODAyMSI7czo1MzoiL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3Ni5wbmciO3M6OToiaWQxMjIxNzk5IjtzOjUzOiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTc4LnBuZyI7czo5OiJpZDExNDU0NTAiO3M6NTc6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODAucG5nLmpwZyI7czo5OiJpZDExOTIzMzQiO3M6NTM6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODIucG5nIjtzOjk6ImlkMTE1MTc1MiI7czo1MzoiL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4NC5wbmciO3M6OToiaWQxMTQ4OTUzIjtzOjU3OiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTg2LnBuZy5qcGciO3M6OToiaWQxMjE4MTgwIjtzOjUzOiIvT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTg4LnBuZyI7czo5OiJpZDEyMTgxNzkiO3M6NTM6Ii9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1OTAucG5nIjtzOjk6ImlkMTIxNzczMyI7fQ=='));
$book->book_info = unserialize(base64_decode('YToxMTp7czo1OiJjb3ZlciI7czo4NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9vcm1fZnJvbnRfY292ZXIuanBnIjtzOjk6Im1pbWVfdHlwZSI7czoyMDoiYXBwbGljYXRpb24vZXB1Yit6aXAiO3M6MjoiaWQiO2E6MTp7aTowO3M6MjI6InVybjppc2JuOjk3ODA1OTYxNTgzNTQiO31zOjU6InRpdGxlIjtzOjIwOiJSRVNUZnVsIFdlYiBTZXJ2aWNlcyI7czo4OiJsYW5ndWFnZSI7czoyOiJlbiI7czo2OiJyaWdodHMiO3M6NDk6IkNvcHlyaWdodCDCqSAyMDA4IExlb25hcmQgUmljaGFyZHNvbiBhbmQgU2FtIFJ1YnkiO3M6OToicHVibGlzaGVyIjtzOjE2OiJP4oCZUmVpbGx5IE1lZGlhIjtzOjc6InN1YmplY3QiO2E6MTp7aTowO3M6NDI6IkNPTVBVVEVSUyAvIFN5c3RlbXMgQXJjaGl0ZWN0dXJlIC8gR2VuZXJhbCI7fXM6NDoiZGF0ZSI7czoxNToiV2VkIERlYyAxNyAyMDA4IjtzOjExOiJkZXNjcmlwdGlvbiI7czo0MjQ6IjxwPllvdeKAmXZlIGJ1aWx0IHdlYiBzaXRlcyB0aGF0IGNhbiBiZSB1c2VkIGJ5IGh1bWFucy4gQnV0IGNhbiB5b3UgYWxzbyBidWlsZCB3ZWIgc2l0ZXMgdGhhdCBhcmUgdXNhYmxlIGJ5IG1hY2hpbmVzPyBUaGF04oCZcyB3aGVyZSB0aGUgZnV0dXJlIGxpZXMsIGFuZCB0aGF04oCZcyB3aGF0IHRoaXMgYm9vayBzaG93cyB5b3UgaG93IHRvIGRvLiBUb2RheeKAmXMgd2ViIHNlcnZpY2UgdGVjaG5vbG9naWVzIGhhdmUgbG9zdCBzaWdodCBvZiB0aGUgc2ltcGxpY2l0eSB0aGF0IG1hZGUgdGhlIFdlYiBzdWNjZXNzZnVsLiBUaGlzIGJvb2sgZXhwbGFpbnMgaG93IHRvIHB1dCB0aGUg4oCcV2Vi4oCdIGJhY2sgaW50byB3ZWIgc2VydmljZXMgd2l0aCBSRVNULCB0aGUgYXJjaGl0ZWN0dXJhbCBzdHlsZSB0aGF0IGRyaXZlcyB0aGUgV2ViLjwvcD4iO3M6NzoiY3JlYXRvciI7czozMToiTGVvbmFyZCBSaWNoYXJkc29uIGFuZCBTYW0gUnVieSI7fQ=='));
$book->manifest = unserialize(base64_decode('YTo1Njp7czo1OiJjb3ZlciI7YTo5OntzOjI6ImlkIjtzOjU6ImNvdmVyIjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MTY6Ik9FQlBTL2NvdmVyLmh0bWwiO3M6MzoiemlwIjtzOjc4OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NvdmVyLmh0bWwiO3M6NDoiaHJlZiI7czoxMDoiY292ZXIuaHRtbCI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjQyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NvdmVyLmh0bWwiO3M6NDoibmV4dCI7czo0MjoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9pbmRleC5odG1sIjtzOjU6InRpdGxlIjtzOjE3OiJUaGUgV2ViIElzIFNpbXBsZSI7fXM6MTE6ImlkLWlkMjQzNTExIjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDI0MzUxMSI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE2OiJPRUJQUy9pbmRleC5odG1sIjtzOjM6InppcCI7czo3ODoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9pbmRleC5odG1sIjtzOjQ6ImhyZWYiO3M6MTA6ImluZGV4Lmh0bWwiO3M6NDoicHJldiI7czo0MjoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jb3Zlci5odG1sIjtzOjQ6InJlc3QiO3M6NDI6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvaW5kZXguaHRtbCI7czo0OiJuZXh0IjtzOjQ3OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2RlZGljYXRpb24uaHRtbCI7czo1OiJvcmRlciI7aToxO3M6NToidGl0bGUiO3M6MjA6IlJFU1RmdWwgV2ViIFNlcnZpY2VzIjt9czoxMToiaWQtaWQzNTQ2MDUiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkMzU0NjA1IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MjE6Ik9FQlBTL2RlZGljYXRpb24uaHRtbCI7czozOiJ6aXAiO3M6ODM6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvZGVkaWNhdGlvbi5odG1sIjtzOjQ6ImhyZWYiO3M6MTU6ImRlZGljYXRpb24uaHRtbCI7czo0OiJwcmV2IjtzOjQyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2luZGV4Lmh0bWwiO3M6NDoicmVzdCI7czo0NzoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9kZWRpY2F0aW9uLmh0bWwiO3M6NDoibmV4dCI7czo1NjoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy91cGdyYWRlX29mZmVyX2Zyb250Lmh0bWwiO3M6NToib3JkZXIiO2k6MjtzOjU6InRpdGxlIjtzOjEwOiJEZWRpY2F0aW9uIjt9czoxMToiaWQtaWQ0MDkyODgiO2E6ODp7czoyOiJpZCI7czoxMToiaWQtaWQ0MDkyODgiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czozMDoiT0VCUFMvdXBncmFkZV9vZmZlcl9mcm9udC5odG1sIjtzOjM6InppcCI7czo5MjoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy91cGdyYWRlX29mZmVyX2Zyb250Lmh0bWwiO3M6NDoiaHJlZiI7czoyNDoidXBncmFkZV9vZmZlcl9mcm9udC5odG1sIjtzOjQ6InByZXYiO3M6NDc6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvZGVkaWNhdGlvbi5odG1sIjtzOjQ6InJlc3QiO3M6NTY6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvdXBncmFkZV9vZmZlcl9mcm9udC5odG1sIjtzOjQ6Im5leHQiO3M6NTA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvZXhhbXBsZXNfcGFnZS5odG1sIjt9czoxMToiaWQtaWQ0MDkzMTkiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkNDA5MzE5IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MjQ6Ik9FQlBTL2V4YW1wbGVzX3BhZ2UuaHRtbCI7czozOiJ6aXAiO3M6ODY6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvZXhhbXBsZXNfcGFnZS5odG1sIjtzOjQ6ImhyZWYiO3M6MTg6ImV4YW1wbGVzX3BhZ2UuaHRtbCI7czo0OiJwcmV2IjtzOjU2OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3VwZ3JhZGVfb2ZmZXJfZnJvbnQuaHRtbCI7czo0OiJyZXN0IjtzOjUwOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2V4YW1wbGVzX3BhZ2UuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3ByMDQuaHRtbCI7czo1OiJvcmRlciI7aTozO3M6NToidGl0bGUiO3M6MzU6IkEgTm90ZSBSZWdhcmRpbmcgU3VwcGxlbWVudGFsIEZpbGVzIjt9czoxMToiaWQtaWQ0MDkzNzQiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkNDA5Mzc0IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MTU6Ik9FQlBTL3ByMDQuaHRtbCI7czozOiJ6aXAiO3M6Nzc6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvcHIwNC5odG1sIjtzOjQ6ImhyZWYiO3M6OToicHIwNC5odG1sIjtzOjQ6InByZXYiO3M6NTA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvZXhhbXBsZXNfcGFnZS5odG1sIjtzOjQ6InJlc3QiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvcHIwNC5odG1sIjtzOjQ6Im5leHQiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvcHIwNS5odG1sIjtzOjU6Im9yZGVyIjtpOjQ7czo1OiJ0aXRsZSI7czo4OiJGb3Jld29yZCI7fXM6MTE6ImlkLWlkNDA5MjYzIjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDQwOTI2MyI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9wcjA1Lmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL3ByMDUuaHRtbCI7czo0OiJocmVmIjtzOjk6InByMDUuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3ByMDQuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3ByMDUuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDEuaHRtbCI7czo1OiJvcmRlciI7aTo1O3M6NToidGl0bGUiO3M6NzoiUHJlZmFjZSI7fXM6MTE6ImlkLWlkMzcwOTM0IjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM3MDkzNCI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9jaDAxLmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NoMDEuaHRtbCI7czo0OiJocmVmIjtzOjk6ImNoMDEuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3ByMDUuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDEuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDIuaHRtbCI7czo1OiJvcmRlciI7aTo2O3M6NToidGl0bGUiO3M6NDM6IjEuIFRoZSBQcm9ncmFtbWFibGUgV2ViIGFuZCBJdHMgSW5oYWJpdGFudHMiO31zOjExOiJpZC1pZDQzMzk3MSI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQ0MzM5NzEiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gwMi5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDAyLmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDAyLmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDAxLmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDAyLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDAzLmh0bWwiO3M6NToib3JkZXIiO2k6NztzOjU6InRpdGxlIjtzOjMwOiIyLiBXcml0aW5nIFdlYiBTZXJ2aWNlIENsaWVudHMiO31zOjExOiJpZC1pZDM3OTk3MCI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQzNzk5NzAiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gwMy5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDAzLmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDAzLmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDAyLmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDAzLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA0Lmh0bWwiO3M6NToib3JkZXIiO2k6ODtzOjU6InRpdGxlIjtzOjQxOiIzLiBXaGF0IE1ha2VzIFJFU1RmdWwgU2VydmljZXMgRGlmZmVyZW50PyI7fXM6MTE6ImlkLWlkMzgwMTUzIjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM4MDE1MyI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9jaDA0Lmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NoMDQuaHRtbCI7czo0OiJocmVmIjtzOjk6ImNoMDQuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDMuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDQuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDUuaHRtbCI7czo1OiJvcmRlciI7aTo5O3M6NToidGl0bGUiO3M6Mzc6IjQuIFRoZSBSZXNvdXJjZS1PcmllbnRlZCBBcmNoaXRlY3R1cmUiO31zOjExOiJpZC1pZDM4MDQxMiI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQzODA0MTIiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gwNS5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDA1Lmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDA1Lmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA0Lmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA1Lmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA2Lmh0bWwiO3M6NToib3JkZXIiO2k6MTA7czo1OiJ0aXRsZSI7czo0OToiNS4gRGVzaWduaW5nIFJlYWQtT25seSBSZXNvdXJjZS1PcmllbnRlZCBTZXJ2aWNlcyI7fXM6MTE6ImlkLWlkMzc3ODc4IjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM3Nzg3OCI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9jaDA2Lmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NoMDYuaHRtbCI7czo0OiJocmVmIjtzOjk6ImNoMDYuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDUuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDYuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDcuaHRtbCI7czo1OiJvcmRlciI7aToxMTtzOjU6InRpdGxlIjtzOjUwOiI2LiBEZXNpZ25pbmcgUmVhZC9Xcml0ZSBSZXNvdXJjZS1PcmllbnRlZCBTZXJ2aWNlcyI7fXM6MTE6ImlkLWlkMzU1MTkxIjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM1NTE5MSI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9jaDA3Lmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NoMDcuaHRtbCI7czo0OiJocmVmIjtzOjk6ImNoMDcuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDYuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDcuaHRtbCI7czo0OiJuZXh0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMDguaHRtbCI7czo1OiJvcmRlciI7aToxMjtzOjU6InRpdGxlIjtzOjI3OiI3LiBBIFNlcnZpY2UgSW1wbGVtZW50YXRpb24iO31zOjExOiJpZC1pZDM3OTQ4NyI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQzNzk0ODciO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gwOC5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDA4Lmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDA4Lmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA3Lmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA4Lmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA5Lmh0bWwiO3M6NToib3JkZXIiO2k6MTM7czo1OiJ0aXRsZSI7czozMDoiOC4gUkVTVCBhbmQgUk9BIEJlc3QgUHJhY3RpY2VzIjt9czoxMToiaWQtaWQzNzk0NDQiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkMzc5NDQ0IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MTU6Ik9FQlBTL2NoMDkuaHRtbCI7czozOiJ6aXAiO3M6Nzc6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvY2gwOS5odG1sIjtzOjQ6ImhyZWYiO3M6OToiY2gwOS5odG1sIjtzOjQ6InByZXYiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY2gwOC5odG1sIjtzOjQ6InJlc3QiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY2gwOS5odG1sIjtzOjQ6Im5leHQiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY2gxMC5odG1sIjtzOjU6Im9yZGVyIjtpOjE0O3M6NToidGl0bGUiO3M6MzQ6IjkuIFRoZSBCdWlsZGluZyBCbG9ja3Mgb2YgU2VydmljZXMiO31zOjExOiJpZC1pZDQyMDAwMyI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQ0MjAwMDMiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gxMC5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDEwLmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDEwLmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDA5Lmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDEwLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDExLmh0bWwiO3M6NToib3JkZXIiO2k6MTU7czo1OiJ0aXRsZSI7czo2MjoiMTAuIFRoZSBSZXNvdXJjZS1PcmllbnRlZCBBcmNoaXRlY3R1cmUgVmVyc3VzIEJpZyBXZWIgU2VydmljZXMiO31zOjExOiJpZC1pZDQyMzE4MyI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQ0MjMxODMiO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY2gxMS5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jaDExLmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjaDExLmh0bWwiO3M6NDoicHJldiI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDEwLmh0bWwiO3M6NDoicmVzdCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDExLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jaDEyLmh0bWwiO3M6NToib3JkZXIiO2k6MTY7czo1OiJ0aXRsZSI7czozNzoiMTEuIEFqYXggQXBwbGljYXRpb25zIGFzIFJFU1QgQ2xpZW50cyI7fXM6MTE6ImlkLWlkMzczNjkwIjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM3MzY5MCI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9jaDEyLmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NoMTIuaHRtbCI7czo0OiJocmVmIjtzOjk6ImNoMTIuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMTEuaHRtbCI7czo0OiJyZXN0IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NoMTIuaHRtbCI7czo0OiJuZXh0IjtzOjQwOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2FwYS5odG1sIjtzOjU6Im9yZGVyIjtpOjE3O3M6NToidGl0bGUiO3M6MzU6IjEyLiBGcmFtZXdvcmtzIGZvciBSRVNUZnVsIFNlcnZpY2VzIjt9czoxMToiaWQtaWQ0MTE3NDgiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkNDExNzQ4IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MTQ6Ik9FQlBTL2FwYS5odG1sIjtzOjM6InppcCI7czo3NjoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9hcGEuaHRtbCI7czo0OiJocmVmIjtzOjg6ImFwYS5odG1sIjtzOjQ6InByZXYiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY2gxMi5odG1sIjtzOjQ6InJlc3QiO3M6NDA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvYXBhLmh0bWwiO3M6NDoibmV4dCI7czo0MDoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9hcGIuaHRtbCI7czo1OiJvcmRlciI7aToxODtzOjU6InRpdGxlIjtzOjUzOiJBLiBTb21lIFJlc291cmNlcyBmb3IgUkVTVCBhbmQgU29tZSBSRVNUZnVsIFJlc291cmNlcyI7fXM6MTE6ImlkLWlkMzg2MDM2IjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM4NjAzNiI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE0OiJPRUJQUy9hcGIuaHRtbCI7czozOiJ6aXAiO3M6NzY6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvYXBiLmh0bWwiO3M6NDoiaHJlZiI7czo4OiJhcGIuaHRtbCI7czo0OiJwcmV2IjtzOjQwOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2FwYS5odG1sIjtzOjQ6InJlc3QiO3M6NDA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvYXBiLmh0bWwiO3M6NDoibmV4dCI7czo0MDoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9hcGMuaHRtbCI7czo1OiJvcmRlciI7aToxOTtzOjU6InRpdGxlIjtzOjMyOiJCLiBUaGUgSFRUUCBSZXNwb25zZSBDb2RlIFRvcCA0MiI7fXM6MTE6ImlkLWlkMzg1Njk5IjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDM4NTY5OSI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE0OiJPRUJQUy9hcGMuaHRtbCI7czozOiJ6aXAiO3M6NzY6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvYXBjLmh0bWwiO3M6NDoiaHJlZiI7czo4OiJhcGMuaHRtbCI7czo0OiJwcmV2IjtzOjQwOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2FwYi5odG1sIjtzOjQ6InJlc3QiO3M6NDA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvYXBjLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9peDAxLmh0bWwiO3M6NToib3JkZXIiO2k6MjA7czo1OiJ0aXRsZSI7czozMToiQy4gVGhlIEhUVFAgSGVhZGVyIFRvcCBJbmZpbml0eSI7fXM6MTE6ImlkLWlkNDI0ODA0IjthOjEwOntzOjI6ImlkIjtzOjExOiJpZC1pZDQyNDgwNCI7czo0OiJ0eXBlIjtzOjIxOiJhcHBsaWNhdGlvbi94aHRtbCt4bWwiO3M6MzoidXJsIjtzOjE1OiJPRUJQUy9peDAxLmh0bWwiO3M6MzoiemlwIjtzOjc3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2l4MDEuaHRtbCI7czo0OiJocmVmIjtzOjk6Iml4MDEuaHRtbCI7czo0OiJwcmV2IjtzOjQwOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2FwYy5odG1sIjtzOjQ6InJlc3QiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvaXgwMS5odG1sIjtzOjQ6Im5leHQiO3M6NDg6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvYXV0aG9yX2Jpb3MuaHRtbCI7czo1OiJvcmRlciI7aToyMTtzOjU6InRpdGxlIjtzOjU6IkluZGV4Ijt9czoxMToiaWQtaWQzOTUwODgiO2E6MTA6e3M6MjoiaWQiO3M6MTE6ImlkLWlkMzk1MDg4IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MjI6Ik9FQlBTL2F1dGhvcl9iaW9zLmh0bWwiO3M6MzoiemlwIjtzOjg0OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2F1dGhvcl9iaW9zLmh0bWwiO3M6NDoiaHJlZiI7czoxNjoiYXV0aG9yX2Jpb3MuaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2l4MDEuaHRtbCI7czo0OiJyZXN0IjtzOjQ4OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2F1dGhvcl9iaW9zLmh0bWwiO3M6NDoibmV4dCI7czo0MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jbzAyLmh0bWwiO3M6NToib3JkZXIiO2k6MjI7czo1OiJ0aXRsZSI7czoxNzoiQWJvdXQgdGhlIEF1dGhvcnMiO31zOjExOiJpZC1pZDM5NTEzNyI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQzOTUxMzciO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoxNToiT0VCUFMvY28wMi5odG1sIjtzOjM6InppcCI7czo3NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jbzAyLmh0bWwiO3M6NDoiaHJlZiI7czo5OiJjbzAyLmh0bWwiO3M6NDoicHJldiI7czo0ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9hdXRob3JfYmlvcy5odG1sIjtzOjQ6InJlc3QiO3M6NDE6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY28wMi5odG1sIjtzOjQ6Im5leHQiO3M6NTU6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvdXBncmFkZV9vZmZlcl9iYWNrLmh0bWwiO3M6NToib3JkZXIiO2k6MjM7czo1OiJ0aXRsZSI7czo4OiJDb2xvcGhvbiI7fXM6MTE6ImlkLWlkMzk1MTQ4IjthOjg6e3M6MjoiaWQiO3M6MTE6ImlkLWlkMzk1MTQ4IjtzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6Mjk6Ik9FQlBTL3VwZ3JhZGVfb2ZmZXJfYmFjay5odG1sIjtzOjM6InppcCI7czo5MToiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy91cGdyYWRlX29mZmVyX2JhY2suaHRtbCI7czo0OiJocmVmIjtzOjIzOiJ1cGdyYWRlX29mZmVyX2JhY2suaHRtbCI7czo0OiJwcmV2IjtzOjQxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2NvMDIuaHRtbCI7czo0OiJyZXN0IjtzOjU1OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL3VwZ3JhZGVfb2ZmZXJfYmFjay5odG1sIjtzOjQ6Im5leHQiO3M6NDY6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY29weXJpZ2h0Lmh0bWwiO31zOjExOiJpZC1pZDM5NTE1NyI7YToxMDp7czoyOiJpZCI7czoxMToiaWQtaWQzOTUxNTciO3M6NDoidHlwZSI7czoyMToiYXBwbGljYXRpb24veGh0bWwreG1sIjtzOjM6InVybCI7czoyMDoiT0VCUFMvY29weXJpZ2h0Lmh0bWwiO3M6MzoiemlwIjtzOjgyOiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2NvcHlyaWdodC5odG1sIjtzOjQ6ImhyZWYiO3M6MTQ6ImNvcHlyaWdodC5odG1sIjtzOjQ6InByZXYiO3M6NTU6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvdXBncmFkZV9vZmZlcl9iYWNrLmh0bWwiO3M6NDoicmVzdCI7czo0NjoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9jb3B5cmlnaHQuaHRtbCI7czo0OiJuZXh0IjtzOjA6IiI7czo1OiJvcmRlciI7aToyNDtzOjU6InRpdGxlIjtzOjk6IkNvcHlyaWdodCI7fXM6MzoibmN4IjthOjc6e3M6NDoidHlwZSI7czoyNDoiYXBwbGljYXRpb24veC1kdGJuY3greG1sIjtzOjM6InVybCI7czoxMzoiT0VCUFMvdG9jLm5jeCI7czozOiJ6aXAiO3M6NzU6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvdG9jLm5jeCI7czo0OiJocmVmIjtzOjc6InRvYy5uY3giO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czozOToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy90b2MubmN4IjtzOjQ6Im5leHQiO3M6MDoiIjt9czoyMDoiZXB1Yi5lbWJlZGRlZC5mb250LjEiO2E6Nzp7czo0OiJ0eXBlIjtzOjI3OiJhcHBsaWNhdGlvbi92bmQubXMtb3BlbnR5cGUiO3M6MzoidXJsIjtzOjIxOiJPRUJQUy9EZWphVnVTZXJpZi5vdGYiO3M6MzoiemlwIjtzOjgzOiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL0RlamFWdVNlcmlmLm90ZiI7czo0OiJocmVmIjtzOjE1OiJEZWphVnVTZXJpZi5vdGYiO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo0NzoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9EZWphVnVTZXJpZi5vdGYiO3M6NDoibmV4dCI7czowOiIiO31zOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuMiI7YTo3OntzOjQ6InR5cGUiO3M6Mjc6ImFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZSI7czozOiJ1cmwiO3M6MjU6Ik9FQlBTL0RlamFWdVNhbnMtQm9sZC5vdGYiO3M6MzoiemlwIjtzOjg3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL0RlamFWdVNhbnMtQm9sZC5vdGYiO3M6NDoiaHJlZiI7czoxOToiRGVqYVZ1U2Fucy1Cb2xkLm90ZiI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjUxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL0RlamFWdVNhbnMtQm9sZC5vdGYiO3M6NDoibmV4dCI7czowOiIiO31zOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuMyI7YTo3OntzOjQ6InR5cGUiO3M6Mjc6ImFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZSI7czozOiJ1cmwiO3M6Mjg6Ik9FQlBTL1VidW50dU1vbm8tUmVndWxhci5vdGYiO3M6MzoiemlwIjtzOjkwOiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL1VidW50dU1vbm8tUmVndWxhci5vdGYiO3M6NDoiaHJlZiI7czoyMjoiVWJ1bnR1TW9uby1SZWd1bGFyLm90ZiI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjU0OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL1VidW50dU1vbm8tUmVndWxhci5vdGYiO3M6NDoibmV4dCI7czowOiIiO31zOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuNCI7YTo3OntzOjQ6InR5cGUiO3M6Mjc6ImFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZSI7czozOiJ1cmwiO3M6MjU6Ik9FQlBTL1VidW50dU1vbm8tQm9sZC5vdGYiO3M6MzoiemlwIjtzOjg3OiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL1VidW50dU1vbm8tQm9sZC5vdGYiO3M6NDoiaHJlZiI7czoxOToiVWJ1bnR1TW9uby1Cb2xkLm90ZiI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjUxOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL1VidW50dU1vbm8tQm9sZC5vdGYiO3M6NDoibmV4dCI7czowOiIiO31zOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuNSI7YTo3OntzOjQ6InR5cGUiO3M6Mjc6ImFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZSI7czozOiJ1cmwiO3M6MzE6Ik9FQlBTL1VidW50dU1vbm8tQm9sZEl0YWxpYy5vdGYiO3M6MzoiemlwIjtzOjkzOiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL1VidW50dU1vbm8tQm9sZEl0YWxpYy5vdGYiO3M6NDoiaHJlZiI7czoyNToiVWJ1bnR1TW9uby1Cb2xkSXRhbGljLm90ZiI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjU3OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL1VidW50dU1vbm8tQm9sZEl0YWxpYy5vdGYiO3M6NDoibmV4dCI7czowOiIiO31zOjIwOiJlcHViLmVtYmVkZGVkLmZvbnQuNiI7YTo3OntzOjQ6InR5cGUiO3M6Mjc6ImFwcGxpY2F0aW9uL3ZuZC5tcy1vcGVudHlwZSI7czozOiJ1cmwiO3M6Mjc6Ik9FQlBTL1VidW50dU1vbm8tSXRhbGljLm90ZiI7czozOiJ6aXAiO3M6ODk6InppcDovLy9ob21lL3JvY2s2NC9waHAvZUthdGFiL0Jvb2tzL1JFU1RmdWxfV2ViX1NlcnZpY2VzLmVwdWIjT0VCUFMvVWJ1bnR1TW9uby1JdGFsaWMub3RmIjtzOjQ6ImhyZWYiO3M6MjE6IlVidW50dU1vbm8tSXRhbGljLm90ZiI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjUzOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL1VidW50dU1vbm8tSXRhbGljLm90ZiI7czo0OiJuZXh0IjtzOjA6IiI7fXM6NzoiaHRtbHRvYyI7YTo3OntzOjQ6InR5cGUiO3M6MjE6ImFwcGxpY2F0aW9uL3hodG1sK3htbCI7czozOiJ1cmwiO3M6MTk6Ik9FQlBTL2JrMDEtdG9jLmh0bWwiO3M6MzoiemlwIjtzOjgxOiJ6aXA6Ly8vaG9tZS9yb2NrNjQvcGhwL2VLYXRhYi9Cb29rcy9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5lcHViI09FQlBTL2JrMDEtdG9jLmh0bWwiO3M6NDoiaHJlZiI7czoxMzoiYmswMS10b2MuaHRtbCI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjQ1OiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2JrMDEtdG9jLmh0bWwiO3M6NDoibmV4dCI7czowOiIiO31zOjg6Imh0bWwtY3NzIjthOjc6e3M6NDoidHlwZSI7czo4OiJ0ZXh0L2NzcyI7czozOiJ1cmwiO3M6MTQ6Ik9FQlBTL2NvcmUuY3NzIjtzOjM6InppcCI7czo3NjoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9jb3JlLmNzcyI7czo0OiJocmVmIjtzOjg6ImNvcmUuY3NzIjtzOjQ6InByZXYiO3M6MDoiIjtzOjQ6InJlc3QiO3M6NDA6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvY29yZS5jc3MiO3M6NDoibmV4dCI7czowOiIiO31zOjExOiJjb3Zlci1pbWFnZSI7YTo3OntzOjQ6InR5cGUiO3M6MTA6ImltYWdlL2pwZWciO3M6MzoidXJsIjtzOjI1OiJPRUJQUy9vcm1fZnJvbnRfY292ZXIuanBnIjtzOjM6InppcCI7czo4NzoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9vcm1fZnJvbnRfY292ZXIuanBnIjtzOjQ6ImhyZWYiO3M6MTk6Im9ybV9mcm9udF9jb3Zlci5qcGciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo1MToiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9vcm1fZnJvbnRfY292ZXIuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExOTI3MzMiO2E6Nzp7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjM6InVybCI7czoyNzoiT0VCUFMvb3JlaWxseV9sYXJnZS5wbmcuanBnIjtzOjM6InppcCI7czo4OToiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9vcmVpbGx5X2xhcmdlLnBuZy5qcGciO3M6NDoiaHJlZiI7czoyMToib3JlaWxseV9sYXJnZS5wbmcuanBnIjtzOjQ6InByZXYiO3M6MDoiIjtzOjQ6InJlc3QiO3M6NTM6Ii9SRVNUZnVsX1dlYl9TZXJ2aWNlcy5waHAvT0VCUFMvb3JlaWxseV9sYXJnZS5wbmcuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNTAxMzAiO2E6Nzp7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjM6InVybCI7czo1NjoiT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTU2LnBuZy5qcGciO3M6MzoiemlwIjtzOjExODoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NTYucG5nLmpwZyI7czo0OiJocmVmIjtzOjUwOiJodHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NTYucG5nLmpwZyI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjgyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU1Ni5wbmcuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDQ2ODIiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU1OC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NTgucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU1OC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NTgucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDg3MjUiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2MC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjAucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2MC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjAucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMjE4MTYiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2Mi5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjIucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2Mi5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjIucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDUxNjgiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2NC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjQucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2NC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjQucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDc5NDYiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2Ni5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjYucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2Ni5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjYucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNTQ3MDciO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2OC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjgucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU2OC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NjgucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExOTI1NDUiO2E6Nzp7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjM6InVybCI7czo1NjoiT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTcwLnBuZy5qcGciO3M6MzoiemlwIjtzOjExODoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzAucG5nLmpwZyI7czo0OiJocmVmIjtzOjUwOiJodHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzAucG5nLmpwZyI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjgyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3MC5wbmcuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMTY0MzAiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3Mi5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzIucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3Mi5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzIucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDgwMjEiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3NC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzQucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3NC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzQucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMjE3OTkiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3Ni5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzYucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3Ni5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzYucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDU0NTAiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3OC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzgucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU3OC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1NzgucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExOTIzMzQiO2E6Nzp7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjM6InVybCI7czo1NjoiT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTgwLnBuZy5qcGciO3M6MzoiemlwIjtzOjExODoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODAucG5nLmpwZyI7czo0OiJocmVmIjtzOjUwOiJodHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODAucG5nLmpwZyI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjgyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4MC5wbmcuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNTE3NTIiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4Mi5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODIucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4Mi5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODIucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDExNDg5NTMiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4NC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODQucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4NC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODQucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMTgxODAiO2E6Nzp7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjM6InVybCI7czo1NjoiT0VCUFMvaHR0cGF0b21vcmVpbGx5Y29tc291cmNlb3JlaWxseWltYWdlczI0NTg2LnBuZy5qcGciO3M6MzoiemlwIjtzOjExODoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODYucG5nLmpwZyI7czo0OiJocmVmIjtzOjUwOiJodHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODYucG5nLmpwZyI7czo0OiJwcmV2IjtzOjA6IiI7czo0OiJyZXN0IjtzOjgyOiIvUkVTVGZ1bF9XZWJfU2VydmljZXMucGhwL09FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4Ni5wbmcuanBnIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMTgxNzkiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4OC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODgucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU4OC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1ODgucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9czo5OiJpZDEyMTc3MzMiO2E6Nzp7czo0OiJ0eXBlIjtzOjk6ImltYWdlL3BuZyI7czozOiJ1cmwiO3M6NTI6Ik9FQlBTL2h0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU5MC5wbmciO3M6MzoiemlwIjtzOjExNDoiemlwOi8vL2hvbWUvcm9jazY0L3BocC9lS2F0YWIvQm9va3MvUkVTVGZ1bF9XZWJfU2VydmljZXMuZXB1YiNPRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1OTAucG5nIjtzOjQ6ImhyZWYiO3M6NDY6Imh0dHBhdG9tb3JlaWxseWNvbXNvdXJjZW9yZWlsbHlpbWFnZXMyNDU5MC5wbmciO3M6NDoicHJldiI7czowOiIiO3M6NDoicmVzdCI7czo3ODoiL1JFU1RmdWxfV2ViX1NlcnZpY2VzLnBocC9PRUJQUy9odHRwYXRvbW9yZWlsbHljb21zb3VyY2VvcmVpbGx5aW1hZ2VzMjQ1OTAucG5nIjtzOjQ6Im5leHQiO3M6MDoiIjt9fQ=='));
$book->load();
?>


  Files folder image Files (241)  
File Role Description
Files folder imagecss (2 files, 1 directory)
Files folder imageeKatab (3 files)
Files folder imagejs (3 files)
Files folder imagexsl (2 files)
Accessible without login Plain text file Dockerfile Data Auxiliary data
Accessible without login Plain text file index.php Aux. Auxiliary script
Accessible without login Plain text file install.sh Data Auxiliary data
Accessible without login Plain text file LICENCE Lic. License text
Accessible without login Plain text file README.md Doc. Documentation
Accessible without login Plain text file RESTful_Web_Services.php Example Example script
Accessible without login Plain text file setup.php Example Example script

  Files folder image Files (241)  /  css  
File Role Description
Files folder imageimages (24 files, 2 directories)
  Accessible without login Plain text file jquery.mobile-1.4.5.css Data Auxiliary data
  Accessible without login Plain text file jquery.mobile-1.4.5.min.css Data Auxiliary data

  Files folder image Files (241)  /  css  /  images  
File Role Description
Files folder imageicons-png (100 files)
Files folder imageicons-svg (100 files)
  Accessible without login Image file ajax-loader.gif Icon Icon image
  Accessible without login Image file icons-18-black.png Data Auxiliary data
  Accessible without login Image file icons-18-white.png Data Auxiliary data
  Accessible without login Image file icons-36-black.png Data Auxiliary data
  Accessible without login Image file icons-36-white.png Data Auxiliary data
  Accessible without login Plain text file jquery-ui.css Data Auxiliary data
  Accessible without login Plain text file jquery-ui.min.css Data Auxiliary data
  Accessible without login Plain text file jquery-ui.structure.css Data Auxiliary data
  Accessible without login Plain text file jquery-ui.structure.min.css Data Auxiliary data
  Accessible without login Plain text file jquery-ui.theme.css Data Auxiliary data
  Accessible without login Plain text file jquery-ui.theme.min.css Data Auxiliary data
  Accessible without login Image file ui-bg_glass_75_d0e5f5_1x400.png Icon Icon image
  Accessible without login Image file ui-bg_glass_85_dfeffc_1x400.png Icon Icon image
  Accessible without login Image file ui-bg_glass_95_fef1ec_1x400.png Icon Icon image
  Accessible without login Image file ui-bg_gloss-wave_55_5c9ccc_500x100.png Icon Icon image
  Accessible without login Image file ui-bg_inset-hard_100_f5f8f9_1x100.png Icon Icon image
  Accessible without login Image file ui-bg_inset-hard_100_fcfdfd_1x100.png Icon Icon image
  Accessible without login Image file ui-icons_217bc0_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_2e83ff_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_469bdd_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_6da8d5_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_cd0a0a_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_d8e7f3_256x240.png Icon Icon image
  Accessible without login Image file ui-icons_f9bd01_256x240.png Icon Icon image

  Files folder image Files (241)  /  css  /  images  /  icons-png  
File Role Description
  Accessible without login Image file action-black.png Icon Icon image
  Accessible without login Image file action-white.png Icon Icon image
  Accessible without login Image file alert-black.png Icon Icon image
  Accessible without login Image file alert-white.png Icon Icon image
  Accessible without login Image file arrow-d-black.png Icon Icon image
  Accessible without login Image file arrow-d-l-black.png Icon Icon image
  Accessible without login Image file arrow-d-l-white.png Icon Icon image
  Accessible without login Image file arrow-d-r-black.png Icon Icon image
  Accessible without login Image file arrow-d-r-white.png Icon Icon image
  Accessible without login Image file arrow-d-white.png Icon Icon image
  Accessible without login Image file arrow-l-black.png Icon Icon image
  Accessible without login Image file arrow-l-white.png Icon Icon image
  Accessible without login Image file arrow-r-black.png Icon Icon image
  Accessible without login Image file arrow-r-white.png Icon Icon image
  Accessible without login Image file arrow-u-black.png Icon Icon image
  Accessible without login Image file arrow-u-l-black.png Icon Icon image
  Accessible without login Image file arrow-u-l-white.png Icon Icon image
  Accessible without login Image file arrow-u-r-black.png Icon Icon image
  Accessible without login Image file arrow-u-r-white.png Icon Icon image
  Accessible without login Image file arrow-u-white.png Icon Icon image
  Accessible without login Image file audio-black.png Icon Icon image
  Accessible without login Image file audio-white.png Icon Icon image
  Accessible without login Image file back-black.png Icon Icon image
  Accessible without login Image file back-white.png Icon Icon image
  Accessible without login Image file bars-black.png Icon Icon image
  Accessible without login Image file bars-white.png Icon Icon image
  Accessible without login Image file bullets-black.png Icon Icon image
  Accessible without login Image file bullets-white.png Icon Icon image
  Accessible without login Image file calendar-black.png Icon Icon image
  Accessible without login Image file calendar-white.png Icon Icon image
  Accessible without login Image file camera-black.png Icon Icon image
  Accessible without login Image file camera-white.png Icon Icon image
  Accessible without login Image file carat-d-black.png Icon Icon image
  Accessible without login Image file carat-d-white.png Icon Icon image
  Accessible without login Image file carat-l-black.png Icon Icon image
  Accessible without login Image file carat-l-white.png Icon Icon image
  Accessible without login Image file carat-r-black.png Icon Icon image
  Accessible without login Image file carat-r-white.png Icon Icon image
  Accessible without login Image file carat-u-black.png Icon Icon image
  Accessible without login Image file carat-u-white.png Icon Icon image
  Accessible without login Image file check-black.png Icon Icon image
  Accessible without login Image file check-white.png Icon Icon image
  Accessible without login Image file clock-black.png Icon Icon image
  Accessible without login Image file clock-white.png Icon Icon image
  Accessible without login Image file cloud-black.png Icon Icon image
  Accessible without login Image file cloud-white.png Icon Icon image
  Accessible without login Image file comment-black.png Icon Icon image
  Accessible without login Image file comment-white.png Icon Icon image
  Accessible without login Image file delete-black.png Icon Icon image
  Accessible without login Image file delete-white.png Icon Icon image
  Accessible without login Image file edit-black.png Icon Icon image
  Accessible without login Image file edit-white.png Icon Icon image
  Accessible without login Image file eye-black.png Icon Icon image
  Accessible without login Image file eye-white.png Icon Icon image
  Accessible without login Image file forbidden-black.png Icon Icon image
  Accessible without login Image file forbidden-white.png Icon Icon image
  Accessible without login Image file forward-black.png Icon Icon image
  Accessible without login Image file forward-white.png Icon Icon image
  Accessible without login Image file gear-black.png Icon Icon image
  Accessible without login Image file gear-white.png Icon Icon image
  Accessible without login Image file grid-black.png Icon Icon image
  Accessible without login Image file grid-white.png Icon Icon image
  Accessible without login Image file heart-black.png Icon Icon image
  Accessible without login Image file heart-white.png Icon Icon image
  Accessible without login Image file home-black.png Icon Icon image
  Accessible without login Image file home-white.png Icon Icon image
  Accessible without login Image file info-black.png Icon Icon image
  Accessible without login Image file info-white.png Icon Icon image
  Accessible without login Image file location-black.png Icon Icon image
  Accessible without login Image file location-white.png Icon Icon image
  Accessible without login Image file lock-black.png Icon Icon image
  Accessible without login Image file lock-white.png Icon Icon image
  Accessible without login Image file mail-black.png Icon Icon image
  Accessible without login Image file mail-white.png Icon Icon image
  Accessible without login Image file minus-black.png Icon Icon image
  Accessible without login Image file minus-white.png Icon Icon image
  Accessible without login Image file navigation-black.png Icon Icon image
  Accessible without login Image file navigation-white.png Icon Icon image
  Accessible without login Image file phone-black.png Icon Icon image
  Accessible without login Image file phone-white.png Icon Icon image
  Accessible without login Image file plus-black.png Icon Icon image
  Accessible without login Image file plus-white.png Icon Icon image
  Accessible without login Image file power-black.png Icon Icon image
  Accessible without login Image file power-white.png Icon Icon image
  Accessible without login Image file recycle-black.png Icon Icon image
  Accessible without login Image file recycle-white.png Icon Icon image
  Accessible without login Image file refresh-black.png Icon Icon image
  Accessible without login Image file refresh-white.png Icon Icon image
  Accessible without login Image file search-black.png Icon Icon image
  Accessible without login Image file search-white.png Icon Icon image
  Accessible without login Image file shop-black.png Icon Icon image
  Accessible without login Image file shop-white.png Icon Icon image
  Accessible without login Image file star-black.png Icon Icon image
  Accessible without login Image file star-white.png Icon Icon image
  Accessible without login Image file tag-black.png Icon Icon image
  Accessible without login Image file tag-white.png Icon Icon image
  Accessible without login Image file user-black.png Icon Icon image
  Accessible without login Image file user-white.png Icon Icon image
  Accessible without login Image file video-black.png Icon Icon image
  Accessible without login Image file video-white.png Icon Icon image

  Files folder image Files (241)  /  css  /  images  /  icons-svg  
File Role Description
  Accessible without login Plain text file action-black.svg Data Auxiliary data
  Accessible without login Plain text file action-white.svg Data Auxiliary data
  Accessible without login Plain text file alert-black.svg Data Auxiliary data
  Accessible without login Plain text file alert-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-l-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-l-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-r-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-r-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-d-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-l-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-l-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-r-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-r-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-l-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-l-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-r-black.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-r-white.svg Data Auxiliary data
  Accessible without login Plain text file arrow-u-white.svg Data Auxiliary data
  Accessible without login Plain text file audio-black.svg Data Auxiliary data
  Accessible without login Plain text file audio-white.svg Data Auxiliary data
  Accessible without login Plain text file back-black.svg Data Auxiliary data
  Accessible without login Plain text file back-white.svg Data Auxiliary data
  Accessible without login Plain text file bars-black.svg Data Auxiliary data
  Accessible without login Plain text file bars-white.svg Data Auxiliary data
  Accessible without login Plain text file bullets-black.svg Data Auxiliary data
  Accessible without login Plain text file bullets-white.svg Data Auxiliary data
  Accessible without login Plain text file calendar-black.svg Data Auxiliary data
  Accessible without login Plain text file calendar-white.svg Data Auxiliary data
  Accessible without login Plain text file camera-black.svg Data Auxiliary data
  Accessible without login Plain text file camera-white.svg Data Auxiliary data
  Accessible without login Plain text file carat-d-black.svg Data Auxiliary data
  Accessible without login Plain text file carat-d-white.svg Data Auxiliary data
  Accessible without login Plain text file carat-l-black.svg Data Auxiliary data
  Accessible without login Plain text file carat-l-white.svg Data Auxiliary data
  Accessible without login Plain text file carat-r-black.svg Data Auxiliary data
  Accessible without login Plain text file carat-r-white.svg Data Auxiliary data
  Accessible without login Plain text file carat-u-black.svg Data Auxiliary data
  Accessible without login Plain text file carat-u-white.svg Data Auxiliary data
  Accessible without login Plain text file check-black.svg Data Auxiliary data
  Accessible without login Plain text file check-white.svg Data Auxiliary data
  Accessible without login Plain text file clock-black.svg Data Auxiliary data
  Accessible without login Plain text file clock-white.svg Data Auxiliary data
  Accessible without login Plain text file cloud-black.svg Data Auxiliary data
  Accessible without login Plain text file cloud-white.svg Data Auxiliary data
  Accessible without login Plain text file comment-black.svg Data Auxiliary data
  Accessible without login Plain text file comment-white.svg Data Auxiliary data
  Accessible without login Plain text file delete-black.svg Data Auxiliary data
  Accessible without login Plain text file delete-white.svg Data Auxiliary data
  Accessible without login Plain text file edit-black.svg Data Auxiliary data
  Accessible without login Plain text file edit-white.svg Data Auxiliary data
  Accessible without login Plain text file eye-black.svg Data Auxiliary data
  Accessible without login Plain text file eye-white.svg Data Auxiliary data
  Accessible without login Plain text file forbidden-black.svg Data Auxiliary data
  Accessible without login Plain text file forbidden-white.svg Data Auxiliary data
  Accessible without login Plain text file forward-black.svg Data Auxiliary data
  Accessible without login Plain text file forward-white.svg Data Auxiliary data
  Accessible without login Plain text file gear-black.svg Data Auxiliary data
  Accessible without login Plain text file gear-white.svg Data Auxiliary data
  Accessible without login Plain text file grid-black.svg Data Auxiliary data
  Accessible without login Plain text file grid-white.svg Data Auxiliary data
  Accessible without login Plain text file heart-black.svg Data Auxiliary data
  Accessible without login Plain text file heart-white.svg Data Auxiliary data
  Accessible without login Plain text file home-black.svg Data Auxiliary data
  Accessible without login Plain text file home-white.svg Data Auxiliary data
  Accessible without login Plain text file info-black.svg Data Auxiliary data
  Accessible without login Plain text file info-white.svg Data Auxiliary data
  Accessible without login Plain text file location-black.svg Data Auxiliary data
  Accessible without login Plain text file location-white.svg Data Auxiliary data
  Accessible without login Plain text file lock-black.svg Data Auxiliary data
  Accessible without login Plain text file lock-white.svg Data Auxiliary data
  Accessible without login Plain text file mail-black.svg Data Auxiliary data
  Accessible without login Plain text file mail-white.svg Data Auxiliary data
  Accessible without login Plain text file minus-black.svg Data Auxiliary data
  Accessible without login Plain text file minus-white.svg Data Auxiliary data
  Accessible without login Plain text file navigation-black.svg Data Auxiliary data
  Accessible without login Plain text file navigation-white.svg Data Auxiliary data
  Accessible without login Plain text file phone-black.svg Data Auxiliary data
  Accessible without login Plain text file phone-white.svg Data Auxiliary data
  Accessible without login Plain text file plus-black.svg Data Auxiliary data
  Accessible without login Plain text file plus-white.svg Data Auxiliary data
  Accessible without login Plain text file power-black.svg Data Auxiliary data
  Accessible without login Plain text file power-white.svg Data Auxiliary data
  Accessible without login Plain text file recycle-black.svg Data Auxiliary data
  Accessible without login Plain text file recycle-white.svg Data Auxiliary data
  Accessible without login Plain text file refresh-black.svg Data Auxiliary data
  Accessible without login Plain text file refresh-white.svg Data Auxiliary data
  Accessible without login Plain text file search-black.svg Data Auxiliary data
  Accessible without login Plain text file search-white.svg Data Auxiliary data
  Accessible without login Plain text file shop-black.svg Data Auxiliary data
  Accessible without login Plain text file shop-white.svg Data Auxiliary data
  Accessible without login Plain text file star-black.svg Data Auxiliary data
  Accessible without login Plain text file star-white.svg Data Auxiliary data
  Accessible without login Plain text file tag-black.svg Data Auxiliary data
  Accessible without login Plain text file tag-white.svg Data Auxiliary data
  Accessible without login Plain text file user-black.svg Data Auxiliary data
  Accessible without login Plain text file user-white.svg Data Auxiliary data
  Accessible without login Plain text file video-black.svg Data Auxiliary data
  Accessible without login Plain text file video-white.svg Data Auxiliary data

  Files folder image Files (241)  /  eKatab  
File Role Description
  Plain text file eKatab.class.php Class Class source
  Plain text file eKatab_setup.class.php Class Class source
  Plain text file REST.class.php Class Class source

  Files folder image Files (241)  /  js  
File Role Description
  Accessible without login Plain text file jquery.min.js Data Auxiliary data
  Accessible without login Plain text file jquery.mobile-1.4.5.min.js Data Auxiliary data
  Accessible without login Plain text file jquery.mobile-1.4.5.min.map Data Auxiliary data

  Files folder image Files (241)  /  xsl  
File Role Description
  Accessible without login Plain text file epub-html.xsl Data Auxiliary data
  Accessible without login Plain text file epub-plist.xsl Data Auxiliary data

The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page.
Install with Composer Install with Composer
 Version Control Unique User Downloads Download Rankings  
 100%
Total:742
This week:1
All time:4,518
This week:39Up
 User Ratings  
 
 All time
Utility:93%StarStarStarStarStar
Consistency:93%StarStarStarStarStar
Documentation:87%StarStarStarStarStar
Examples:93%StarStarStarStarStar
Tests:-
Videos:-
Overall:74%StarStarStarStar
Rank:95