.github/000077500000000000000000000000001516500252100124135ustar00rootroot00000000000000.github/workflows/000077500000000000000000000000001516500252100144505ustar00rootroot00000000000000.github/workflows/build.yml000066400000000000000000000016761516500252100163040ustar00rootroot00000000000000# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions name: build on: schedule: - cron: '0 0 1 * *' push: branches: [ master ] pull_request: branches: [ master ] jobs: build: runs-on: ubuntu-latest strategy: matrix: node-version: ['lts/*'] # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ steps: - uses: actions/checkout@v2 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 with: node-version: ${{ matrix.node-version }} - run: npm i -g grunt-cli - run: npm install - run: grunt .gitignore000066400000000000000000000003401516500252100130400ustar00rootroot00000000000000/build /node_modules /*.log .idea/workspace.xml .idea/tasks.xml .idea/profiles_settings.xml .idea/inspectionProfiles/Project_Default.xml .idea/inspectionProfiles/profiles_settings.xml node_modules/.yarn-integrity /release.npmignore000066400000000000000000000002631516500252100130530ustar00rootroot00000000000000/.idea /artifacts /assets /build /test /node_modules /*.iml /*.ipr /*.iws /.travis.yml /.scrutinizer.yml /Gruntfile.js /*.lock *.log /corifeus-boot.json /release /.github /.vscode.vscode/000077500000000000000000000000001516500252100124145ustar00rootroot00000000000000.vscode/launch.json000066400000000000000000000011111516500252100145530ustar00rootroot00000000000000{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "outputCapture": "std", "name": "Launch Test", "skipFiles": [ "/**" ], "cwd": "${workspaceRoot}", "program": "./test/test.js" }, ] }Gruntfile.js000066400000000000000000000004231516500252100133470ustar00rootroot00000000000000module.exports = (grunt) => { const builder = require(`corifeus-builder`); const loader = new builder.loader(grunt); loader.js({ replacer: { type: 'p3x', }, }); grunt.registerTask('default', builder.config.task.build.js); };LICENSE000066400000000000000000000020131516500252100120540ustar00rootroot00000000000000MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.README.md000066400000000000000000000332261516500252100123400ustar00rootroot00000000000000[//]: #@corifeus-header [![NPM](https://img.shields.io/npm/v/p3x-html-pdf.svg)](https://www.npmjs.com/package/p3x-html-pdf) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://paypal.me/patrikx3) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) [![Corifeus @ Facebook](https://img.shields.io/badge/Facebook-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Uptime Robot ratio (30 days)](https://img.shields.io/uptimerobot/ratio/m780749701-41bcade28c1ea8154eda7cca.svg)](https://stats.uptimerobot.com/9ggnzcWrw) # 📃 Generates PDF from HTML with custom headers and footers with wkhtmltopdf v2025.4.128 🌌 **Bugs are evident™ - MATRIX️** 🚧 **This project is under active development!** 📢 **We welcome your feedback and contributions.** ### NodeJS LTS is supported ### 🛠️ Built on NodeJs version ```txt v22.13.0 ``` # 📝 Description [//]: #@corifeus-header:end **p3x-html-pdf** is a Node.js package that generates PDFs from HTML with custom headers and footers using `wkhtmltopdf`. It is a robust tool for creating professional-grade PDFs with features like: - 📜 **Dynamic Headers and Footers**: Add placeholders for page numbers, dates, and more. - 🛠️ **Customizable Layouts**: Configure margins, orientation, and paper size. - ⚡ **Async/Await Support**: Modern JavaScript compatibility for efficient workflows. - 🔄 **Dynamic Content**: Render data-driven tables and content dynamically. --- ## 🚀 Installation Install via Yarn: ```bash yarn add p3x-html-pdf ``` Or install via npm: ```bash npm install p3x-html-pdf ``` Import in your project: ```javascript const { generate } = require('p3x-html-pdf'); ``` --- ## 🛠️ Features - 📜 **Custom Headers and Footers**: Create professional headers and footers with dynamic placeholders. - 🔀 **Flexible Page Settings**: Set paper size, orientation, margins, and more. - ⚡ **Async/Await Support**: Fully compatible with modern JavaScript workflows. - 📊 **Dynamic Tables and Content**: Generate tables and other dynamic HTML content easily. --- ## 📖 Usage Example ```javascript const { generate } = require('p3x-html-pdf'); const path = require('path'); (async () => { const options = { settings: { save: true, template: { format: 'A4', orientation: 'portrait', marginLeft: 10, marginRight: 10, }, html: `

Header Content

Content

This is a test PDF document.

Header 1 Header 2 Header 3
Data 1 Data 2 Data 3
Data 4 Data 5 Data 6
`, }, title: 'Sample PDF', saveFile: path.resolve(__dirname, 'output.pdf'), }; try { await generate(options); console.log('✅ PDF generated successfully!'); // or options.save = false const buffer = await generate(options); } catch (err) { console.error('❌ Error generating PDF:', err); } })(); ``` --- ## 🔧 Configuration ### Options - **Settings** - `save`: If false, it returns as a buffer. - `template.format`: Page size, e.g., `A4`, `Letter`. - `template.orientation`: Page orientation (`portrait` or `landscape`). - `template.marginLeft`, `template.marginRight`: Margins in mm. - `template.copies`: Copies to generate. - `template.fixedWidth` and `template.fixedHeight`: If above zero, generates in millimeters. - `html`: HTML content with placeholders. - **title**: PDF document title. - **saveFile**: Path for saving the PDF. - **base** The HTML base href is other then current directory, it can be online as well. - **css**: Customize the CSS for serving, by default it is in `src/ng-html-template.css` - **jquery**: The latest that works with webkit is jQuery v1.12.4 - **javascriptDelay**: The delay before the PDF is generated as default is 1000 ms. For more options, check the official [wkhtmltopdf usage guide](https://wkhtmltopdf.org/usage/wkhtmltopdf.txt). Unfortunately the version latest HTTS is not working, so it is better to use inline images or using HTTP as that is dated but with HTTP in local filesystem is perfect. --- ## 🌟 Placeholders You can use placeholders in your HTML for dynamic data (only these, but it is enough, the rest you can generate in HTML): - `${page}`: Current page. - `${pages}`: Total pages. Example: ```html ``` --- ## 📊 Advanced Features - **Debugging**: Use `debug: true` to enable detailed logs. - **Header/Footer Templates**: Create rich HTML templates for headers/footers. - **Dynamic Content**: Inject dynamic tables, invoices, or other content into the PDF. --- ## 🌍 Architecture `p3x-html-pdf` works seamlessly on Linux and Windows. ### ARM64 Support If `os.arch() === 'arm64'`, the package automatically sets the `wkhtmltopdf` path to `/usr/local/bin/wkhtmltopdf-arm64`. Download the binary manually and place it there: [wkhtmltopdf-arm64 binary](https://github.com/houseoftech/wkhtmltopdf-arm64/raw/refs/heads/master/bin/wkhtmltopdf-arm64). --- ## 🖼️ Example Output Check out an example output PDF: [Example PDF](https://cdn.corifeus.com/git/html-pdf/assets/p3x-html-pdf-output.pdf). ![Example Output](https://cdn.corifeus.com/git/html-pdf/assets/p3x-html-pdf-output.png) --- ## 🔬 Legacy Rendering with Webkit This library uses `wkhtmltopdf`, which relies on an older version of Webkit. As such, it does not support modern CSS features like `flexbox`. Instead, older solutions such as `float` and `table`-based layouts must be used for alignment. While these approaches are not modern, they are efficient and compatible with the rendering engine. For instance, the following layout works seamlessly: ```html
Header Logo

P3X HTML Invoice

Generated: 2023-10-01

``` --- ## Node.js Test Example The `node ./test/test.js` script demonstrates how to generate the example PDF: ```javascript const { generate } = require('../src/index'); const path = require('path'); const fs = require('fs'); (async () => { try { const outputPath = path.resolve(__dirname, '..', 'test-output.pdf'); if (fs.existsSync(outputPath)) { fs.unlinkSync(outputPath); } const options = { settings: { save: true, template: { format: 'A4', orientation: 'portrait', marginLeft: 10, marginRight: 10, }, html: '

Hello PDF

', }, title: 'Test PDF', saveFile: outputPath, }; await generate(options); console.log('PDF generated!'); } catch (error) { console.error('Error:', error); } })(); ``` --- # Puppeteer vs. p3x-html-pdf: Resource Usage and Features Comparison When deciding between **Puppeteer** and **p3x-html-pdf**, it's essential to understand their differences in resource usage and capabilities. ## Technology Difference - **p3x-html-pdf** is built on **wkhtmltopdf**, which uses the WebKit rendering engine. It's lightweight and optimized for HTML-to-PDF tasks. - **Puppeteer** launches a full **Chrome/Chromium** instance, consuming more CPU and memory, even in headless mode. ## Resource Usage Comparison | Feature | p3x-html-pdf (wkhtmltopdf) | Puppeteer (Chrome/Chromium) | |------------------------|---------------------------------------------|------------------------------------------| | **Memory Usage** | Low | High | | **CPU Usage** | Low | High | | **Startup Time** | Fast | Slower due to browser launch | | **Dynamic Content** | Limited support for JavaScript | Full support for JavaScript | | **Rendering Accuracy** | Basic CSS and HTML support | Pixel-perfect rendering with modern web standards | | **Flexibility** | Headers, footers, scripts (older JS versions) | Highly customizable (headers, footers, scripts) | | **Scalability** | Suitable for lightweight tasks and servers | Better for advanced use cases and large-scale rendering | | **File Size** | Smaller binary for wkhtmltopdf dependency | Puppeteer requires downloading Chromium (~100MB) | ## Trade-offs ### p3x-html-pdf (wkhtmltopdf) - **Pros:** - Lightweight and uses fewer resources. - Faster startup time. - Ideal for static HTML content with minimal JavaScript or CSS. - **Cons:** - Limited support for modern web standards and advanced JavaScript. - Basic rendering capabilities. ### Puppeteer - **Pros:** - Full support for dynamic content, advanced JavaScript, and modern web standards. - Highly customizable headers, footers, and PDF options. - Pixel-perfect rendering accuracy. - **Cons:** - Consumes more CPU and memory. - Slower startup time due to launching a full Chrome/Chromium instance. ## When to Use Each ### Use **p3x-html-pdf (wkhtmltopdf)**: - When your content is **static** or doesn’t rely on modern web technologies. - When resource efficiency is a priority (e.g., on resource-constrained servers). ### Use **Puppeteer**: - When your content is **dynamic** or relies heavily on JavaScript and CSS. - When rendering accuracy, modern web technology support, or customization is critical. ## Conclusion - **p3x-html-pdf** (wkhtmltopdf) is a better fit for lightweight tasks with simple requirements. - **Puppeteer** excels in advanced and dynamic use cases but comes with higher resource costs. --- **Happy PDF Generating!** 🎉 [//]: #@corifeus-footer --- ## 🚀 Quick and Affordable Web Development Services If you want to quickly and affordably develop your next digital project, visit [corifeus.eu](https://corifeus.eu) for expert solutions tailored to your needs. --- ## 🌐 Powerful Online Networking Tool Discover the powerful and free online networking tool at [network.corifeus.com](https://network.corifeus.com). **🆓 Free** Designed for professionals and enthusiasts, this tool provides essential features for network analysis, troubleshooting, and management. Additionally, it offers tools for: - 📡 Monitoring TCP, HTTP, and Ping to ensure optimal network performance and reliability. - 📊 Status page management to track uptime, performance, and incidents in real time with customizable dashboards. All these features are completely free to use. --- ## ❤️ Support Our Open-Source Project If you appreciate our work, consider ⭐ starring this repository or 💰 making a donation to support server maintenance and ongoing development. Your support means the world to us—thank you! --- ### 🌍 About My Domains All my domains, including [patrikx3.com](https://patrikx3.com), [corifeus.eu](https://corifeus.eu), and [corifeus.com](https://corifeus.com), are developed in my spare time. While you may encounter minor errors, the sites are generally stable and fully functional. --- ### 📈 Versioning Policy **Version Structure:** We follow a **Major.Minor.Patch** versioning scheme: - **Major:** 📅 Corresponds to the current year. - **Minor:** 🌓 Set as 4 for releases from January to June, and 10 for July to December. - **Patch:** 🔧 Incremental, updated with each build. **🚨 Important Changes:** Any breaking changes are prominently noted in the readme to keep you informed. --- [**P3X-HTML-PDF**](https://corifeus.com/html-pdf) Build v2025.4.128 [![NPM](https://img.shields.io/npm/v/p3x-html-pdf.svg)](https://www.npmjs.com/package/p3x-html-pdf) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [//]: #@corifeus-footer:end assets/000077500000000000000000000000001516500252100123555ustar00rootroot00000000000000assets/p3x-html-pdf-output.pdf000066400000000000000000000730701516500252100166400ustar00rootroot00000000000000%PDF-1.4 1 0 obj << /Title (P3X-HTML-PDF Detailed Invoice 1/16/2025, 6:30:28 AM) /Creator (wkhtmltopdf 0.12.4) /Producer (Qt 4.8.7) /CreationDate (D:20250116063029+01'00') >> endobj 3 0 obj << /Type /ExtGState /SA true /SM 0.02 /ca 1.0 /CA 1.0 /AIS false /SMask /None>> endobj 4 0 obj [/Pattern /DeviceRGB] endobj 8 0 obj [0 /XYZ 28.5000000 728.750000 0] endobj 9 0 obj << /Type /XObject /Subtype /Image /Width 256 /Height 256 /BitsPerComponent 8 /ColorSpace /DeviceGray /Length 10 0 R /Filter /FlateDecode >> stream xG]sJ&$$I$$L2$$d2GLL2L$I2III$$ɕ\ۗs=_uy+)*ld7a+@l [&l g%`z25:"<;a@1[_2Țc@ցDe>ցÃl3[ />V?tg[ Yswcl-Tqg3y{;~lD8Ni>V47z&{^]bq'J,(z%m"=;zQ6؊O1lEN<bkrG +59H^}ևA%cr8[cogmتřg}V!jU`rc/N0GxE=*V%?^leJ o\Y6-kg9@݁,lqItBϰ }[puz-O0)uܳ+醜=[`_!ïG s-P(_u3֌P(eS r-Q )8Y[@rWy0F<;-RA@ Had|gk{aNse "Y [ ObD1.P= V*{Ɔ E2xYsY-Uc@**?N XhɬWhɬWhȬWhGZ2 Z2 `X1*ʇXEtfB*9lŶYCТȱwC#dͬl#U>rMƎ0 - ThYN懟Jf\Jf@;lPˬRhYCB5 Fzf(r[ȬkȬnoL{acK* -2|[G3 [e3aNfA6|X/NfSVܳms?-ٗB7'$w~fP' r^w*)_s2F3Y-st^f R ,ӫj0ш<nff)3t9 j\̪Evz]wȬZlƝ#APf:]x!VΫjQ riZmqQ0Y!Z-yHI%ن:x qȫEQWrb(42[$KoYASy{"<0Ɗ m1?Omaw6Lbȫd܀u ?Vk;TJtȐWI3}VvS+7pKV:gȸDэ`wݖ赉RG[l6{= B_Zl [(B9oxR 0݇(;kuք-R ϝRlyɵQ >GJ7q֣c&h9M ߥ,MкَG}->v_6`L$JtP/Rl$9UlV'mT{Bj:ڋƨyLjweGвڎ*[y|aU1aL|I6 RtTY'O_*xԗHQeF :RhWwSŽUW/wG!-h1I|ȫ$~*0uq$:d'Qf">*0q4:*0S/JGF 2U`(騂hC^Q5t:(-uTA)|SꨂhQ&Rc0C^%F )X%ƒVGF ZU`'QтXGە:X먂sScI b>*0a:\쨂n Q7Jʂ$;Ŏ*0UPwf;Ѣ >Z endstream endobj 10 0 obj 2381 endobj 11 0 obj << /Type /XObject /Subtype /Image /Width 256 /Height 256 /BitsPerComponent 8 /ColorSpace /DeviceRGB /SMask 9 0 R /Length 12 0 R /Filter /FlateDecode >> stream xn8s 3,w/q(9MҤAIy@Aʐ᝗(̫ROPf5>0~x>1ZoLؚéJ? vt]絍֝ږ~Gnnp>`76Cy˱Wl1&:u1=1OxR.vyc֥ `u>ϴϞpp99k/욓8-3v{;~:m_I6Ɵ~vK{3O~x_V6]lߎ_.)F7Ɵ.< gGYR?1CoK?)8vd#"2{gҏ J)qik;"1<;"Yť;g*Ġ|kS,/پ]#uұ/ݫ?hKuƟ@$=n)&Cϣoy~z>ϥNbv+_GhaJҟNGM~hq2vɯ |w?qZrUCDy|1?"En1ݞM oN~qh wW5~8^}y~" m@bKV}nj۟|'dҏ<<Mo 4@}r:V7'm!ԋ(ً9<AaCȰEKo t8/tmBJD/iWbP#C>"jEd !ANs-"$ؽ!u[u Ǥu `$#K#cpk-.uC=|]y3~TԽrͰeNo@_{1~(?9y%-P29tgGO(m E fS_4<$y|-=(HxN'Ɵ v};8&Fݯ !fB)אe㇭1sӢ,T/aY؟R}ߗ~\oE_ܞD'lx8xS,l->Zf8'G_pHƿԭ8;Kx/!yڬ]5o3M\瀌!lA1ٿX#.>lNS"[Kϛ[w"7Xl2?t 8vPM15ǣ Vr~& ϑL/oy+v:ϣ r~HW/@rVQ;`n>ﴉXUސT-kdǠВux>(Pؿ5+[{^F:vo5]ו-*+{ ҟV"ҿ.Xwi-ni](4ΩzsBP &krVҹ1L"EԚ^Ť]C@._V! rmJa@zH EvFX|I7=hu~J)FX|bz|TNΑx܋5Nt+Jd'ILNQvƕ){+* ;UTS&;s1N_8EjMgH=q6rY.m{t?^ՙjOJrWOJr¤|ad ARʗ BѨi{q=u#-eFl7HrA / 60 ]T(t]'N2i#8m=O mk<sڛ~ۅ-ZWi9)glC4&Qv؇a+UŵW"z6o\m* }6؎CigkH3j -A.6'P'p<~t(B: ARٮ (DF ?b.egK;E$J1.#e$DA(G̞Ɩ?5xBY gSz`.\Z;Xócdbv8!Ԁpn,Nu 7y|)dlߘՐ^/jǏҟ`*?}ނ}%Zl VolG&MӱukEnPZ[ڢF6%=P%2k5<UrܫDW2俗Яr_x8_.kMr TLXGvk S76z6{:R U#[T2g%K: c\QnyXOw-r- -ܞS]8!㇠ .8sB+8m|&n<Qp-Kx>F٠)/ᇶx h)^?)~qgxa*r hY6k6_F}.4K0wNl~h)ȼqg }( 0hzqDFR7M ,@>Nc<7z's"1~kOݩK?8՞to`'\/`. ->+ x>S=[2qBTok0Fqî9M tP)r834lC$L`]t3.lK;Q`o}װͭ +N} {/oqs&'T~ۅ=T:LIxᇝ>f]"z6x {>S1gS`~a,=kNr ^J?&D}|q>}>%9?Գ3ᔤzk'd&5sa$H^YY\5QG|bo1~$.Ta1 endstream endobj 12 0 obj 3873 endobj 5 0 obj << /Type /Page /Parent 2 0 R /Contents 13 0 R /Resources 15 0 R /Annots 16 0 R /MediaBox [0 0 595 842] >> endobj 15 0 obj << /ColorSpace << /PCSp 4 0 R /CSp /DeviceRGB /CSpg /DeviceGray >> /ExtGState << /GSa 3 0 R >> /Pattern << >> /Font << /F6 6 0 R /F7 7 0 R >> /XObject << /Im11 11 0 R >> >> endobj 16 0 obj [ ] endobj 13 0 obj << /Length 14 0 R /Filter /FlateDecode >> stream xQ6F+\ H",H&bP }(P$-$>HckkI쑥ȫ#ݫ>_/Qɩ֡zc cizZk U$-bӭ qQE$JiMԂ`BRlXRFETD&aC(0 SA1i@D Y,J| c3T AOaq*!)"` O(8Y@dg0 ,( fUBSE,IAPڰ?PEa"bq D4t55h%jj "*XP[*!ѕKԌ \擣+ 'GW.QS#IAPb떡,J|c3T AOqq*!)"` Oΰu?PEa"rq D4t55h%jj "*XP[*!ѕKԌ \擣+ 'GW.QS#IAPFu?P%Y>1 ˧88Y@dbf0KDR'1l2TA\f\0 ]DM͸a"r  g떡,J|t55%jj.ӕKHDR'Ul2T AOq q*!)"`P%Y>X e [ CUD&+ LDCW.QS3.pA\"ٺe 0<]DM͸a>yrq |t55 +n ˧88Y@dGg0 ,R, fH -[ CUD&+ LDKW.QS3.pA\"ٺe 0<]DM͸a>yrq |t55 [ cUB^^ѕKԌ \^^ѕKԌ \^^ѕKHDR'l2TA\f\0-]DM͸a"Zr  g떡,J|t55%jj.ӕKHDR'l2T AOq q*!)"`P%Y>X -[ CUD&+ LDKW.QS3.pA\"ٺe 0<]DM͸a>yrq |t55 5hn ˧88Y@dGg0 ,R, fH ,[ CUD&+ LDKW.QS3.pA\"5u?P%a> t554ЕKԌ \@W.QS#IAPl2t%T APiq *!* #aQ%YDMHs")8Y;bkXt݄5#X$886(ҡ19[bPFE8488xfپn_oo~gn~~h~e|?kF&uY63ڶUon?lkmG(7tiڎ1|N/͉[x!c[=}Mn۹ݛl0ޟM?`6=L4&(#&kgZ{wd6Kvo6u1.#o}|^luV^G#{ ;*emnV߈G&t͘ymN-ߋm=u-Q"Zr,=ti|4yo+.J[xg Չm[bL(u([-Dyf.'Z GZעoʊm\?{W2;U8]QxцppY"ԎY@4v:;҉ct -#["SymYS A4iuܥH3+U%S.=a_k4j'N]"ZNp/{ (_>c=k jd ▗^tRbgcޘ0ƽ5*oʝc.8᪺6]Y%b3*lQM XUzdfH7]F3ErOԞHȑljsTW<3Q=5B$/2i ۮ@"{Fl<#y'IHv浺V䝁@^K >"JfUe֌WHef#kjxLkg e+#^ ͸o̦$֚ r1g2恧Hof"T c~nxf u= >;hͅ1P.l6bk~}E]O-1CO'0Fͅ1uf >釐c$/1Cתra51O`g ؓR1Ȍ?hRM$Wm.΅x5JfFdժZa2 3l\qѰEnD$LF7]N, 4ubkH>˼OmbOJ5?ABOv.fœ֠:\?ĊD^+i֜U٧DNs2LK'ߞi'rzm>12ƣ>gf-ltE;?mf[z}yO`?{kFv_} ֌~h^=Of;erYJŊ[9ee#[[}D}ܭ.}hnE{XQ6+Dֳ:C?#khYXGWg]|ݽ\q-y>2Om2{ .͡3QGL>12"mB`~]wqnK|r9'擋>~?^ >5hlBؖoʆ3!Xیx @ >Κ7FJ endstream endobj 14 0 obj 3523 endobj 18 0 obj [1 /XYZ 28.5000000 728.750000 0] endobj 19 0 obj << /Type /Annot /Subtype /Link /Rect [276.750000 636.500000 345 645.500000 ] /Border [0 0 0] /A << /Type /Action /S /URI /URI (mailto:support@p3x.com) >> >> endobj 17 0 obj << /Type /Page /Parent 2 0 R /Contents 20 0 R /Resources 22 0 R /Annots 23 0 R /MediaBox [0 0 595 842] >> endobj 22 0 obj << /ColorSpace << /PCSp 4 0 R /CSp /DeviceRGB /CSpg /DeviceGray >> /ExtGState << /GSa 3 0 R >> /Pattern << >> /Font << /F6 6 0 R /F7 7 0 R >> /XObject << /Im11 11 0 R >> >> endobj 23 0 obj [ 19 0 R ] endobj 20 0 obj << /Length 21 0 R /Filter /FlateDecode >> stream x[K6W`eIEػ[ pAȡHڒj-VFga;3[mڿf.#mw՞%WcyZıd9a>_ w{®r-jamT-7}Ƿ/oا@=R*Dep&@$Э*`{C{MxL Ev$eKL8R7l[ׂkclbSm%mъ~6kk[.5)<~mZüPwy8h98׈S 2%Y:%Ʀ;?JF !rG,g5A{IZ5h"!)$aBIWu f`ݔK>pblė\S.O]Bx}k`,N]V5RTw}̉.a|B 3W h !R)dل Ҥ )%[ĵhPGw\'7Y!a6 rTM Zu;g#y1g{1“HA=7B("P Lc!jJ9JqqEvjhr$Y3y&iQrolZ>bBy7Cm,Ϣn3T Yڶ.*PcB˘ 9y܁h]ʯId(>̀BDZ|(e))%K )O!쓿y7aϋK {n>rJW7ӥ'. + }~]KZ|PjxPXFOIb<6!X+ t܇*Ӗ>VѮvr}7jWqБFTfpJ{2<(څ95*ަ/=+uOǐFFcwB0נ,yP#ϿF^7h>ŧ4I\>@r]h(\v,"mGcPùS-fvBR$ kNV7SIDZp9۞#iy. {pK)PBEĿ4> l7>.f?7i6jb OEMѦa-`ݪu^ p3 endstream endobj 21 0 obj 1599 endobj 25 0 obj [2 /XYZ 28.5000000 728.750000 0] endobj 26 0 obj << /__WKANCHOR_2 8 0 R /__WKANCHOR_4 18 0 R /__WKANCHOR_6 25 0 R >> endobj 28 0 obj <> endobj 29 0 obj <> endobj 30 0 obj <> endobj 27 0 obj <> endobj 31 0 obj << /Type /Catalog /Pages 2 0 R /Outlines 27 0 R /PageMode /UseOutlines /Dests 26 0 R >> endobj 24 0 obj << /Type /Page /Parent 2 0 R /Contents 32 0 R /Resources 34 0 R /Annots 35 0 R /MediaBox [0 0 595 842] >> endobj 34 0 obj << /ColorSpace << /PCSp 4 0 R /CSp /DeviceRGB /CSpg /DeviceGray >> /ExtGState << /GSa 3 0 R >> /Pattern << >> /Font << /F6 6 0 R /F7 7 0 R >> /XObject << /Im11 11 0 R >> >> endobj 35 0 obj [ ] endobj 32 0 obj << /Length 33 0 R /Filter /FlateDecode >> stream xYK0WT׏ !vj% Њ.T{NdvWRkw<ӞL߭l:_f;_e;#Iy3Wmَe,wYM1?niVSC9g?w}`94gsZhͽF+P!B) $qP >q ,ՑtΦ)X$%Ҧݱץfo>{2բ "L15Q&@$Nz׀H yQ@pilC V k8$ZTuG놚ǩ/aaL+;;&shgjeXֻk!߀!"H.?a\Ԛ@%'G>sn >~O֑(*@?q8rX15WBA%Ц1 `A^L-}QXD}߰}=<*%!R6.5}Бɱ}l ~ NGXjUد)!d)^n;řc?8)UkOtv) >5%~:N(0:bbB騍]1)[Rrƙb\/^ s v5)q+">I;8rJO5՞Rn8~V|F)OUϽB mh_o^ ϝԲСuN5GOly'elalVJo{y}4iݟm)&詇~ qt(p. ~/sĤG~B5|Aĉ9"s#fǨ{*ITP#y2 {D>ynirGrƴN.-x]MVPسv jRYT8DɖCK@qvlĒ-A7 endstream endobj 33 0 obj 1014 endobj 36 0 obj << /Type /FontDescriptor /FontName /QKBAAA+NimbusSans-Regular /Flags 4 /FontBBox [-210 -299 1032 1075 ] /ItalicAngle 0 /Ascent 729 /Descent -271 /CapHeight 729 /StemV 50 /FontFile2 37 0 R >> endobj 37 0 obj << /Length1 8000 /Length 40 0 R /Filter /FlateDecode >> stream x9i@SW QBX Yb}]6Ee]BXԢRĥ]kEbJtljw2ֱN_o: y|$j󒛻{=9a 0 CZ|G6a)5U8OӪ򒲊 U(24ii̓aָ[! 3m6i(igþG]yFGؿ0aIleD G 8cLh@Ѷ?ә(c#e4.fL|DwC Q3 wF4HR)2 ߎ3_ f ð_,7qju:^eS,K[̾iQ*O3e &Y]Ys,:v?! b XJ<0\ _8$]fL&;#n(r!<}|qX%C(z}|l']P\WL~А`Ńn۞>R]`0pLɑ):$vNq9e*99sQ,Y`˸&Oz>v8 J]HZWGpܼm[uGѩG8 \V1J>GhȦmȡIvKRhm;˲$ paMEz(W "AG)d 3T9#sni~/ly&g}QG/|Aۉ"{\G~t(tSryQQgGkj̦HӋugv~qF2 juvh2Jrwg²^8/EG5װhC8՚D>痆I`N?qk{JuBx; sC {1QSD79OS%CdTyCq2wwԶǷl1kW$S=($?U: hZ_tB2hyFN@sV194Ē]qˈ9!o#pЛ Nc(쨔=}`ԖJT`-1_7-BonBvwhu{*&Y%q$ YG[~g=w x{pbI?x=a قÒ Mzg7cܚ0:#9؏0aL"b6_%5ZoauD -TX%L¼=geIhtyÔe޺ʵ\fZMHwP{G{jdqaS<c50UCݰ_3^2M>eʢ5Rఴj_/O11c$䇔fI@#)N AR$)׃D4U/&&;_b俀m o2~C~#5?܃~H9B olE93J5V]\DàYDFZ뇤U ׇ!Ֆ3А^IHOy:tlaQ_u&l XV i#OK!ai=& &RNzMoص8%hDEqW^79ɺ-yY{E'ғrn,>J|nC24v1klSO҉V=h1D[ k׺,w }gfJQeQ_RyR\PJ道y~E?]P3D7#,2qfR3e@Sg :HgxhTW2@ʴ%ExL$3#s:hk]sy;m!@]V=*?kG{;Ε)e6 qGoikdU^F4`ن>#qXGes-gQϷUŔW.;9g/u&yɾU+'t~(տ٪//yۈRg %&h, 7e.=l[o Q}mrYJsb:{œ9C-.8f:ؓ>$p:cY2jz䙖y c`gh^OȆt6[bf1[guTF'.o 0zKnAb*bbLG+ {~y;:jPUG5fi}(=wN@Q᩵ LqpVЙYJrs MobXRᑯ f=xOVBrŔ}8i e6H&}aCLEBRlq$? 8N$H e:EW{F3QxJ{ç σ}9km~ImTRH=8G,w .# V-v NbNrr~KG>g`wxTsBO*@Z- RRz .񷎝o 324d.7>_r3~n]@s2ޭyG6W>&lδeOWKKbQgmG:-Sp&ej\ hw|v-MuʢMjkp#4ꈍ[{sE{4VE!Kpw a$F 3I@#7qH:-hFhmD6O`5~;w~[~{a“kS$g!hن JWK5+ ;ǧ!gI c#F[,p>lH'S!6qk`WGNq)< T)ܲ.x_Fl~>̻]0C1u&#H>ĸ'VD1uge7ُu-7>vi{:/$ZˍtnL#~Hd''N T7.ٞYgŮ\ guUkTza_+^ZphnaZwPO򧣅[ЊT ^JPnqg'șEn8nPwl4| |}G,hC ޳ߘ`` 9RM fP8?[ (>FkݕCB;:Wta+($7%d1Uɼc o/_+r^I祗sJ¥!*D9կ?ThJMv9@_Y|Xze .4i -*;{ :> 斴G ^UIixx;,]ʑ `YO!1,ZR]pJ;$"wOouNLW6xm-c_v>ߕ!u^$u,u)=ꀊaHTy *7A 5e&Ph`kTw8 l6d6K*,ԒԽ{hrO3d1b?'?k9<3$H?/5lw $cǶ )XGb-zq:߻3Ӌ.,Z,Ik#~X1p 8,:K(+:K:O޿J!NCE^X"!8"63{~N Ra!e $t Jip8!l831L.s?2Q$RFYVϮd8ܹܳg"oQhcS< H<$U5%wXmpr3?׏oidb¢ M'\vtv<8 xpDLbݟ:[`YLI6s"uqbV9Mdk?ڄlm4[c 1Sa-͏f3cʪf&:l(5ӫ -M Jꚲ+[jKq\( E`&76U> /FontDescriptor 36 0 R /CIDToGIDMap /Identity /W [0 [276 606 552 220 496 276 552 496 552 496 552 716 552 276 330 552 552 552 220 552 276 496 276 662 662 552 552 552 662 552 552 716 552 552 716 552 662 552 606 772 552 716 552 276 496 662 552 826 716 772 772 716 662 716 662 936 662 662 606 276 276 552 276 826 496 552 1007 496 276 ] ] >> endobj 39 0 obj << /Length 840 >> stream /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def /CMapName /Adobe-Identity-UCS def /CMapType 2 def 1 begincodespacerange <0000> endcodespacerange 2 beginbfrange <0000> <0000> <0000> <0001> <0044> [<0054> <0068> <0069> <0073> <0020> <006E> <0076> <006F> <0063> <0065> <0077> <0061> <0074> <0072> <0075> <0064> <0067> <006C> <0070> <0066> <0079> <002E> <0050> <0041> <0031> <0024> <0030> <0042> <0032> <0034> <0043> <0033> <0039> <0044> <0036> <0045> <0035> <0046> <0047> <0037> <0048> <0038> <0049> <004A> <004B> <004C> <004D> <004E> <004F> <0051> <0052> <0053> <0055> <0056> <0057> <0058> <0059> <005A> <003A> <002F> <0062> <002C> <006D> <006B> <0071> <0040> <0078> <0021> ] endbfrange endcmap CMapName currentdict /CMap defineresource pop end end endstream endobj 7 0 obj << /Type /Font /Subtype /Type0 /BaseFont /NimbusSans-Regular /Encoding /Identity-H /DescendantFonts [38 0 R] /ToUnicode 39 0 R>> endobj 41 0 obj << /Type /FontDescriptor /FontName /QPBAAA+NimbusSans-Bold /Flags 4 /FontBBox [-188 -307 1069 1070 ] /ItalicAngle 0 /Ascent 729 /Descent -271 /CapHeight 729 /StemV 69 /FontFile2 42 0 R >> endobj 42 0 obj << /Length1 5784 /Length 45 0 R /Filter /FlateDecode >> stream xX XSWk %DHbBGP0(" "E@Um~V:S۩/tږ\vz[v3]$*oYgֿB%"BϾuGdz}@XLu\'2 c:9(?c?qk~s  MΪGدhDbH>!1lj(+a礩DDҗp-F+T4#w7WI4Ds??pQ`$ GeoC tlZk,H=s9J^%Rk7!릑\sxu oy[/EוD-hE"-밇_1&o"nCHw@ERmp#!> (bVUIjHvؔ* | @ZݮӝYT O\WD/Fro ||$+=RܩC4@ECɀoowl֘pOxinS!j `~@쥣yV V6gB"r ^j+f=7 ?ti*_n2gہN;ߓp}x(Ӏ*427ٙfJ"2?~ty* X\nV &loh l<Ï0::OȚz։]DzJ0nE%b ;q Fz:l=AUO1`+`>H{bMox_$耐MpB/hͩޜش +BolD~O C2sO#yO`:Ec޷ӫr%kd&ĎW>j /h拀yHC5"-bVHB[i(UZ췆v&gLaj[IA3lqJgi~I0v; ZBfIup*OΌ߽4Vve3e3G2wHd^ܿ*1qUIgHr99rwτ8+JUD[?a_d\`w/Qt:9wSv$b1̛1 aBfc ZR({е$iomm.6{ew7x9g !Bx|RD7G1 9)@>WPil?~nV{]E")0O gd%Jk)Y]kw[}^ zb>'WR~V/Nл1v=tb)$6WvTu8ŽcK ~:C\Da @vļ#Q^E"' ܎ /֞v1?\_̞tDڹTǘPФ"$6!- 'ƻ$G-<*+3k)z}w=14`ުSbD Y1b @xR1I*8;7НO<;hyw`A% ,ϴ: (?^nYd#snY~tXĥd7nX]l+[ nxhAIܟ?l?:|kV|Ģf|P$\|״^ PJlVcIs槬X@Z .*J ̀"%U%~\Hh1zD<"pL)kjXzX;!10<~mgHE`) *ߔdrSx|߾rί}cc7#q6ټ eTz q82UiDņ!Vzip*{66v ;sv k2Ň% #1Ld?!~8lwfÓVC1I<}k7:8;puFXBTP11lps"R< :zUZ&4&cq1y€Mz6v K]oOuEs-Jq_c961[W{޳r;瘤788nhei{^"as?}y(AaXmqћ,T;* KU)1,?,"/zUfջϸjG;Sa}M"fbƁ[]: Kgr5-Efn.u[p} #vg7jcIHHl.WD,hkDazܞTXbZTq2>o^UqUzyGYhw#j7 z?{zQggR|3k~8?$=j3F>zU QV_92&|_y+d[؉,Z=XS'y nE*%n,e($KG һG6֣uδG@MLQ돶P}c쥾}^6hOxNA D+3w6[fU:kݬ !Peх!>rq AE006q<3^Պv_=?!=XS5^izN^"~dJ'io?) (ޟPÄM0ͤ{uo92g묑ٮ/㿑s#> >EҒk"}@:QR(gm8`ܨe/^6?P0\[lX_8l:?aOW'H J;X0#daGuts_LxMWi`oR:JR58H1ʴ=r:2,R ϫsOv;{8\{&ˊsX)J@D&>;>G,H%]R$=&}AV6˺ee0"y,|_~q]@.ڔpfx"2}m1@-!sI;% |mJd0hY)̇J_[;EDF.[nj^_[Cc6h5;ԍ[5hnjܸuY_9BX1X6MLm\ު1EEGBBĴAYFV7iBzRK> /FontDescriptor 41 0 R /CIDToGIDMap /Identity /W [0 [276 276 606 552 606 276 552 552 276 716 330 882 772 606 552 552 662 386 606 276 662 606 552 552 552 552 276 662 716 330 552 882 330 552 552 552 552 662 716 826 606 606 330 606 716 552 ] ] >> endobj 44 0 obj << /Length 679 >> stream /CIDInit /ProcSet findresource begin 12 dict begin begincmap /CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def /CMapName /Adobe-Identity-UCS def /CMapType 2 def 1 begincodespacerange <0000> endcodespacerange 2 beginbfrange <0000> <0000> <0000> <0001> <002D> [<0049> <006E> <0076> <006F> <0069> <0063> <0065> <0020> <0043> <0074> <006D> <0051> <0075> <0061> <0079> <0050> <0072> <0054> <006C> <0053> <0062> <0024> <0033> <0039> <0030> <002E> <0056> <0041> <0028> <0032> <0025> <0029> <0037> <0038> <0034> <0036> <0058> <0048> <004D> <004C> <0064> <0066> <0046> <004E> <0073> ] endbfrange endcmap CMapName currentdict /CMap defineresource pop end end endstream endobj 6 0 obj << /Type /Font /Subtype /Type0 /BaseFont /NimbusSans-Bold /Encoding /Identity-H /DescendantFonts [43 0 R] /ToUnicode 44 0 R>> endobj 2 0 obj << /Type /Pages /Kids [ 5 0 R 17 0 R 24 0 R ] /Count 3 /ProcSet [/PDF /Text /ImageB /ImageC] >> endobj xref 0 46 0000000000 65535 f 0000000009 00000 n 0000029152 00000 n 0000000265 00000 n 0000000360 00000 n 0000007103 00000 n 0000029011 00000 n 0000023120 00000 n 0000000397 00000 n 0000000448 00000 n 0000003002 00000 n 0000003023 00000 n 0000007082 00000 n 0000007433 00000 n 0000011032 00000 n 0000007224 00000 n 0000007413 00000 n 0000011281 00000 n 0000011053 00000 n 0000011105 00000 n 0000011619 00000 n 0000013294 00000 n 0000011403 00000 n 0000011592 00000 n 0000014023 00000 n 0000013315 00000 n 0000013367 00000 n 0000013856 00000 n 0000013451 00000 n 0000013579 00000 n 0000013736 00000 n 0000013919 00000 n 0000014354 00000 n 0000015444 00000 n 0000014145 00000 n 0000014334 00000 n 0000015465 00000 n 0000015678 00000 n 0000021733 00000 n 0000022228 00000 n 0000021712 00000 n 0000023264 00000 n 0000023474 00000 n 0000027881 00000 n 0000028280 00000 n 0000027860 00000 n trailer << /Size 46 /Info 1 0 R /Root 31 0 R >> startxref 29264 %%EOF assets/p3x-html-pdf-output.png000066400000000000000000003414671516500252100166630ustar00rootroot00000000000000PNG  IHDRresBITOtEXtSoftwaregnome-screenshot> IDATxg@W7k#H(`WAbC5K5j&$(D0b oE^X{u}gΜvvӆ% ;h V @Z i%(JPH+@V @Z i%(JPH+@V @Z i%(JPH+@V @Z ˋyfieRPPpq%fieӑzvڶk׮cfieS ?zZee˗?FD-M[:{ή OII_D7rJ_H+Xӏ?>z@(6bq;4hV6"уX*iצU+10BZXTTT|__|)s̙XQ WUU_ݓ-spFFF< TA~<B3oG'z ZH+X..woW[`LF74(xN"ݻ'9)FsAkeRYYyرC^EH?CN ʆ"++kƍ j 1_y'Þm7_0&]vK/@-!g.mO^^n tZiff(H+Svvþ.(]EHGi̙b|,C,}v' Eš ӕLlie= wn/I,ldh|r} !|}N]#^ /*++k_EH1<1>e Daa?cZsSS]>Z+?/\pvvV-OPW_v rJh,Vֹ\TQ^^SFpuuie/_e0IkootR4H\P(w->i))uwK[lYGu:ǡx:fO:eu@AZxi}޺ufwΜ9,.;H+I,l..rJWխJpÇss>tegђE:uRx`_Jݽs+|%a#Gz@#|.XuOӧ"*:w@߻yO\UqG=R~r%l6cX7w7iS{Y3g @}Ak姸>]=X>}? ?*3s^z)$0#dޱꕫϯKi3)))}~UieD/_cӐ' bBjwH+?ƍܕ 9μ;wPZZzGrE9mx4%X`&?]CP:-,,.iff 4WHpiBBBS*++urJhz ^JSRZj&Moh VJKK;o?TV*`!i;u\t)T@"d|2ӥOgX,}g\Kz|`qʔ6I bXmH>{mi V"ŋ۷n{'czXa``jTNNNuu;Ι3{@wΝlggYfQ``-[COfүjJ|UTT=z$֬Y111o6""}_~}߾}gΜa51a„f{ӦMnnn>&+VL<7͛6loΜ9юGX 1խUUU˾ SxNp&OjEEEExxE>}JDb{޽111111gϞ#1ct҅^~}]Ǐ̙3s:%...䔠(h$"r;wl9[4p׳f{5@m̘1\ݻw^*|}}{JDSLqss ݻwo^^,Yb֭[7ePxAegg_p̙!X޳gϫWח٣,S>###//А?h͚5\.WKKJ\G)pƷ4SS%KjkkE_3CM /_NDm۶?vvvSN=}tJJ?^UUED֭SQQڶm+a6$A077OOOŋDdaaȈz*͘1իWw :u4i1//ҥKjjju6R$= ]{>R2._֩S:cXLL$ (|>yݺu+++k%%%Dޭ[^BԥK˗DԹsg/^$0;޽ra2~x "ss 33&&fҥ: &YFR3rʔ)Dh"INDׯgz|rŒԩSNvVTT9|xuShwwѲ#ׯ_5uyܸqC-)) ^zuYYMWZEDLNLYUUUOёH)^|fɓ''N\hEFF>{FIDUUU̘T"z1[ZZVUU^̚5~h׮׮]Bk֬gٳfڼy@ 石ڵkٳuVCCÂu)|D3mLKKۻgϵ+<b׺G̟?***޽{bL~266>:`mСׯ[nݢEҥKq޼yDܽ{w}}r\fÉ($$$++/_ID#F(,,?G-sϟŋK.ƙD~z"ׯOJJLWfVⰰ?"P( Xo-435K|1yyynAyxxHﱶ7oӧO~wX,`D0m4==/|=7oNHHUUU;t͛wQΝ?`8"277g6f,6=| .<|IHB!bJf*IVt2d>/3 Irz)ܭ[HMMԩS۷o߻w=_FZUUUWkgfFf]_K,9y2##cĈu}EӶm~1jjj]tcii9ofɒ%Gm6".)))))ٽ{*bX2Ԛt Fd= 52r .ywttduA***ҳjLLLH$KW%yo >(CRo 󓉁Yک.4l޽gO)9"ŋsϸ1QCCˬX~m^dlltݲX^z09Ӊ'hŊ qѣ{>ӧ_xuܙ%uԉ¬4U#_UUURR"tlzuuufC ID)))bXWWp/ܣLIMIY/S1egg_9g̞>=@u}I*JJJLzrI"j۶Q,YDD۷oI2^===2A st6=df=l޹s:t '3߿l$$$7naaato@-,,,,,TTTYd4JXMiP d&w7w77GGG_Q2dH@@@EEŬYFD PSS#m۶1S|.]fƏt__%K|8uuumllFӚVٳgϞ={O>0Fyر"ѣۺLC={LMM\´FIQ066vqqyX,tikkCEE|ٳg+++߸KөK :аU]M+%|똘۷Z$5b ;wμ*_ PO+b}ߛ7?|[>Q|v5dذ6XXΒh8KZ)!JJJbc޽4I۷<u5)3_@5 MK+%D"QAAA\\{?zr;rƍ%rsscbbάZX, V sGfegGR=mXߡC/uOz%%%woy̍Rp\֮ \@QV~};wvs`JhtV֊H$JKK59##.alb!CbshΒEv;PF(䘚JcKKKE"t%B0==EzzzUUUٖD)[l)-YZZJ,,,,--mٲ IX,~(&ÙuQ9iO'-/_oߞ>}]v+WH^\\\~~~^jSյ{5yӧO/_.S\\|mIZgcc3bɿRqqĉ<O[[{yyyDj*+++"|KUUU׮]kdd$<jll\PP0wܾ}… KKK:mll~׏?Vnߺu9r]*q u۰{S3h|}} ~w \=!!!66ieݻץKL&Zr?pss5jTNNΊ+obbBD3g]]gϞ޽ɉb;vyc_u"wq\5kijzNZ;mWЈ<|pǎNa--s2,**:w\BBɓKKKϟ?ߵkW@:`jKϝ;W_uŋ|>aʔ)IIIw)++x񢧧g5}ҥK...7o\vmŊ2Ȩcǎ2;_xxb"bXvvvCIIIÇ'"cc;wjkkP(JNN;v,\~sȑW {%"'''p[hL8|۸ ĴŋO7o0#%Znݺuk" 6mݻݻwD.55u׮];w֖/?|VZ,X@$ׯSrr@HDfff###Νl6[EEeժU_~>6lXQQ>S&,,ѣݻwߵkIee>t۷O[[{̧:tС꾹sΞ=;55W UUUysZzdXSM~Z V uС(!!iva^ ppp̪̌iNjK2ے;w,^ϯ65>}+}3Eyzzz%feee8,,WL$'"In~~X,622a()ˌTVVVSSjK$SB>R`:ګ׬Yq#rJzzznnn{INNfddd:un߾}LLLNN.//_dɻw節6%322 `dd_~-lT[Cǎ@3H ߻7S%'yyհ>@Sֿ^P(VY3p@v֭l )v:q?nZͤDsSUUc/S*+sF=zM6)9k=brO;]]Cۅ ~3OEEE4::/BS3׮u=n-Ԝ}{¹NNNk7wttDN hiH$;n}%Çne]H5Ӵ2y'|G9e խVۻ7--200X|IX@^ːb3g?|XSX,  Tw4j.|>O?nήh[v\/W/kYQ8kU:::u@c׌Z+E"ѡ~SK'zMШVǏ0 Vr6dc<5_>0&"ݻTTT,vђ%PV~SS5֍f75EJ+L7ǍNNN)HI+ÞJTV :lvvv@stǏ_pA(JhO1}zzz@sD;wIw,]l)@3JX|1/_JXZZny{>}X,V=|42((?PHD,ٹ믻wZ[[w\HN^^ބRSHEEeWׯZYUUێLNESgLШFVDׯ_ "K+߯>|8&ԋFV&$$ܷWUխ6988`sXJ.{p!CnlҴ#heZ)_2kE-ҪF9׫-6k':ƗVWWw^zw,_Z:&FKKoh8_Z) ; /]@V /]tm"ote./ф Zwz_ٳb}}}'''OOO"@2..I+'L.Z\\\[nut Hs)ɞׯ_?~ܹk֬QlRZZjccpBEՙc"2dȈ#U-4m卟L[[{DdeeUGߙb.==Bȑ#&&&gV]ۭ[7.]"-["Zj(iP(,//'"uuukiixN@PQQAD***RSS dGkkݻw3er-,, 000055aCÇ쏈:u*?p3rDdee%rR"RVVVSS+++KJJ222211F$555KKKeeeOZ}4 eNppߢE3f''UVUUUǏuafgHHի8pq 41O]vuww6lXnv-jyϞ=;sLٳg]j(iĞ={n޼)Yח\\\޽{Dp~~~K.MMM%".33sǎ{v޽iӦ"o۷g͚4{yyX,+++55tooo??jk g6ƌ#shǎvvvDTVV6iҤ@@fB͛7'N#q޽={09={)JJJD"dh,Yr٪-[ꖕ8p`嵼<JJJw5;o>dJD^bʞ={FD#GTVV...޾};={6&&OWWvŴHJJ:x n:888&&fDY":tPFF:ydPPPpppVhΝ\.WBI3!>|811ƏL]JOOgB(**ڰaӧO/_?~:::Sxxwŋ>|ɓѣGѵk$)oyΜ99sȟPVΞ={:t "ϗݙ "z>FDcF ~w{f={\t)x<&ْ4-XܜfΜ٫W/& q9::ۗ 7O< hѢhѢE>>>Lx5钽{5k#JLJJJ ,`"a7k>|2eGT$gL?/u4333((&"CC^zdb޽%50o߾Vzz:!YQf;wLzllÙFxq-Z5dv*iܽ{WfeeJ{"Cr<<`eW⣪V֌I++**Ο?tJzƍFI|mK"b:?OEEԳgOI+<JDGTWWHII.DpM[?HGGLMM\/}֭h޽Ddff޽;q ?W$=z)3.!yi?4gΜE]~f3aaa$/$$dҥK.pD'";ڵcXLϟ?g=ӧDԭ[7œ$HD ̞,&ׯTVoV\\LDnnn\''=z<}4((hݻw ew޽GU.>>… [rX,VVV$ӧ?{,55uڴiǎ+//oӦ N ]]~~DW޷oYRR3ufoذ)9o}_^II9sܹsJJJ7ndf.Z*>>_UQQ_|||RRRZhqI/lْy;K2722X,6HPxƍ'OkԨQY\.˗DdmmdDT^^UQQaii%7ndgg8;;K& ՠƍ^*))qpppuuAbRRR```BBX,nժ՘1clllC"(,,2(==Q:u͛7̽ l۶%SkyO>SzL+)i|!@Z i%(JPH+@V @Z i%(JPH+@V @Z i%(JPI+"~?\0Nj`yyy[tt4z^*//WTm+..(Sbbb^^GSG|X5dff}ڹ'</**gEFF šT MLqqqNڻw/\ZZ{n`Ϟ=rǶo߾ϯqᬬ,EV_?)*??XEFߓqʕgϞ})uOUVDOw}Ѹ>)**kyşیMm)P8N\_~#Ç?#@im8c۷oӔܸqc̘1\իW飥{9.\f7,EEE`ʕuw^zU{O$}~ʚD#G4o…DtΝ;O:UIIIrVLLLRRk``kee_kiiٳgڴiDի3fdff^p!==b&&&Dt OOO}} .deeo~~왊[Ϟ=e"6wel6[,_~,O>F}_MDSN%Ϸk9""zrwwgXo߾|rVV;tq>}|W,+??/11QOOӳ]vҟB樍͉'JJJvڵb __߁;wJIIiժEEE=d=}tEE_.ʫWbcc׮]wҥmN6޾}{ҥRSX|Ǐ5[nD$?k׮uNgnn.䪪`mmSZZZJHjyQS_xL&sssOn``p- .]?:::b8 ɓ'...EEEFVcݻW^X`}}'iӆAy+//?sLlllΝ:vXCbחرcl6[nܸѲe`SSSOOOɹgϞMIIi߾>˻wܹSVVvEOOOHTݻwOYYÃTJ?~ߜ9s$O_zpqƙ_!kp <ѣG˖--..x̀˷oM:ヒs􉹹 Dtرnݺ[ŋJJJ<L[niiiUTTlذvҥFFF6mDUYYrǎ;z{{3eGIIIYp1c|}}e/ׯO2;44ɓ'D?M>ڵk۷\.ݼy͛@(^~0&&СCnnn rJEEOϞ=׬Yӭ[7f@L8o p/\GGǿyF汹tRhhܹsWCBB:<ɑjBr&<00^xѲeK4p R,Ϟ=[[[X__HMM9affnݺ*qvv޽;ѣGDrugϞ͘1ӧ_}M:5<<ٳg=z`jxȑ#h̙!!!GԴNNN rtt\};֖| .dL0b[[W^YZZjkk{biiiYYY޽ɉ͛fW\٥K"֭E"Q\~};v$Yf޽{yyy]v5119rݓ9b85SiE~ͿyLl6B$OYYy…,̙3 rqq! ̞=;##ѣGήD4oܸnݺVZ_]UUUۺuk7sL]]]##VZI»}ՉH[[{رD4lذk׮F/'9G bmlldβJKK˖-[Ι3H?o^hmddt>Dfﻺ?o_>v옊ʤIԦ~ 6ܷjcǎǏ)&&|ܹJJJ666T] ??Ąɇ-U߾}{ĉLٳ7lG_!&".""%88,K>T̶t7u=,,lѢEnnnPݻy]vYYYSlllL+++fLLLDׯgv36>t0B0//Ori[[[fNStttii=eFDL0fʷm۶m۶DTQQk׮ _jJDM^~s̸8I2$ 󳳳ԜTUṲr3N׋ IDATD[p8N}W'/}}>xQ}}+W{.??jȐ!G6oެ 3& \-233~k~T2u֙[vv!SɐjY?}?Ddnn.S8''RrlmmBUm>ȜR#'B%yzڻwǏK4. .׮wEEś7o._"3MB~6Z׮]CCC_|$=ZZZ嚚0bٳg;wd"_m}|"%%%552"r@.ggCEE%00PCCCJQIIIFF?~%KڶmfrJX,JJJNNNHOOܶmۥ[jS+Ljh۷o_$=Z2PCCcرL;1|fDf˙[N~kn*TTT0wR̭ԌԘN[]%qV@=`2QZՆ-/]KKKɯP#'/TfȬ^z=yҲ V_UWWwrrzhCCC5 w4 §OJnL~fOܜ>f@бc0_GtttSg۶mgbccck~1U{Oeddd 0Ȉ~Zfk\\A6mƏ_VVVCH;2<+addTcD4?|޾B }Ҙa_:Nji&%%XTTV{XmՆ!ߺuoݺ%sJh_ Sgggw Ɍ܆&@5͛+WIJJZxGxeee"=zի&L ={˗/JLL\`͞?={_^ZZڢE ٵӷm+|>3b9::{i`zܶo߾l2mmb>>>"HCCCSSxyym۶i[f rss駟ڶmӲeK?-...))ߖ-[&Azwބ<|DԢEÇ7՞"mK.577OHH;wrCCC-,, ?gϞ?GFFr\~q8ë՞)O}wQ ;wi&++8$$gϞX;;; oooKKˤq0D1sL/^I>Ddbb뫫ֹsnݺ?ogϞ?Ν;---\5éM TKOOo[lf]KKK}+/}ܸq[nTSSc~*?r5|~.w'O۷/s4::̙3'NxmhhX/'&& kkk>Oeff&=B";;;//ʪE̞duuu+++ڇSRRX,u"(55֖5ʒ [l_PPЦMj )))UUUZd999ٺvMKK+,,daaa!}-,,LIIi۶z(,,DߦMj*L4|55j'$vq8X K'%%Ԧ-ZdggkkkO8Q@ qXXX``$7;;8cc㌌֭[]vܹ L}Bqqqjj􍕿wqM]kWehTZ+TzXAVm XkkQQOoVZEPpCIdRBe$y͓Z $εW^Lamɓ'HNttt3Fb/$9+w(JJJoz;ȭV+=z-\&22rz/rS844t'N|K<]>~+"M{{{|||iiٳLw߻۷oNᚚ:ccc__9 xݻw?S ` r i%HJ H+@ V )@Z Ri%HJ H+@ dU&Ih2:@/::: C ^>|[F355nI+i4NWTTz@R4|p555Y7:MMMY3P&jeV****)fSTTo:PH}ɺ!00+@ 苓8Ri%HJ H+@ 0\튊***n BL&L]]6! lrmP{{@ >l0:;;\2&|`5k>422Zd !$>>ٳgn ƍsqq155  IIIaddvZBHsss|||vv7iܹFsvv~zbFFFBf̘aMhhhO_E!א_'F)+.]:r?ԩSW\AAAFFF~Vhh!d._|ժUR ȹ+WjhhTVV^xqٲe:::lmmCCCmmmeBs_~EMMmՄ^>@E)sH+OB.^8~cfff3:.No;::;G/===RRRfΜheeuVBHTTTzz] 322?^SScbbj*siӦ566޼yj͆˭򪭭mnnr!$;;;99933_ ^~رc+i@+333BȒ%K\ѣsέX"99аߺuKIIwbŊI&ɸKпBBB_~ECC#,,L?633[rQ9sիmmmƍ 122M7 !L&֭[3g믿mۨ䠰0..nʕ/^̼rG}KYwBCCCFF95l!***I?C(ʼnWűXO_v…?1..nG)..>rUӧO|>y1ŊKOOO쳼<wAYzH@Z908;;/_O?)))ݸqܹs˖-KMM}Ur۶mΝ](Y,ŋܹsw}7++C px`@***g&P! Ucƌ!PemmmBϗUkAP7}755"/_]ӧOܳgO~~>$b#j񊊊FFF$]XXXݺu-%%Օ:[ ۷ wÇSq???%%%FQhUgΜINN&(((>`+(( xyyBFץҥK>裂BHAVH4MWW:Hqvv|2J ظ211>:u*!" Qomذ'""7f/NOOd0ׯ.Ȑk0J@@ ?PtI(1!B<}uT[n׿m۶K zp|훛L׷aÆN??4KKK55$EEE55:&) ~!!dSLl䢸aݫ-@eccd2֭[gooOԩSeR ΄ÇB\`0\]]Ek\ee吐SS|Y5uAZ9`B6o|ƍm۶)))M4аua O͛ EEִ4Bu;"ɓ'B|}}̨9?&LMMKKK)WEΜ9w^B'͞>}a]]oɓ'tT[nurrZxcǬ'NxYfɺ ֯_okkcǎ#F,Yh~QN2ZYY988P5{vJ J,+''GGGV(Ĕ.[lԨQϞ=KLLlhh|:iҤ.&mll !O>3f u9{ܹ`sss-G^^/ሻsΰaIx˗/?}wD411]`ϭŇP&ZZZLLL[-Jc褕2.-- yTZ o i%>J+lX~a(CJ"LprJAi%HJ H+@ V )@Z R 7h.+Q#0>AFЂ! 1TXZZJB|xpp&vٳg'O`nns.?*׭[rɞ0ܸq#44@SSsǎ_~EPz0 &&&,,< ܹs;N+ !&&& [lYp@ h6mשּׁ>}:qė/_B""",,,?~NtBH||aKKS/GC/\l2dӧO_xQUUU emm_[[KPSS#vq^^ޤII&5662LxaOAj;F]8aff}vBȨQ.^?}<{Y`_H<>rdzzzB۳/_ZQQQSS?eʔȢ"sssBC.\RQQjgg&nzB\nvvebccׯ_ߥdBB;CW33ϯYzz{9;;kkkoٲ%88xȑK6667ZVVVVSSDttte]]]ꐄ 5񉊊ioo_z5NXب,*@쳮H iNHH!FYZZN0+))BEgΜ:zhgggjh3fT?~䉻;t:}˖-:~)Rtt7|rR#FH,)>و@ rxZAj322"##oݺuԩs_K>`$W̾&'544,X`///QNIQQQQPP (((QEIIISQDzܹsn߾ٳ#ț+WTWWYYY={.99YbISSSѝԴQOAj=JHKKrHԴŋ$'cZJ666555˔GGG;;PJ>/,hmmmw}BN=ztJJ U СC7tѣGر//w1f̘7\LLLRR%ӓX=99dggGRLիWIII=aٶm[yy9BĒ@ T>u$+l޼{充 .6m͛7i4U%88/11А feeߺu+<<ŋ vuhŧN> t!!!}QII Xr@ 5kĒ߳gہ;F6mqF''7h .deeB$a/ΝO}ܹM6.b8qf޼y...T0==}ȑ&&&&KYtD`weeeVVV}E7o>|bYfܹammmyyySL>`8NFF3uOFFFbb#VX!]tvvRcU." IDAT-GVuuu;w^bbbKKKOa}Vȓ}D___9% sΕu )@Z Ri%HJ H+@ Veee4ML!d[|kRPqC'tUTTLpOx&8gϞ:-,,d ̨gKZ295F PH+@ V )@Z Ri%Hܥq7ec1-k-V s]YB.We\\Գk׮͛7~yuΝ.{jaaq7h bǎ|葬o%::z֬Y֭-))wqZZuuu׬Y#Cxx{rE]b:ue|纺iiiPx|87lMMMܹM-s8aÆUUUR^^fe 0n߾M/_\WWuVsss.+dEEECCC?7 &FDDvqee%Ne0ӧO R獌233333Ο?SP>)ƍO>$((HLSSٙz2}tK+++{ vӪ!wG+ũihhdee?~,44r 6޽Ty>aOO9L-_vZNOO߼ysXXXEE;ydkkk/??Ça`@IHHXxΝ;prqҥKmllf%gN<9 |Ν\u999999˖-[hdF Ą;wNb?{'i%!Ĥa˖- .4mӦM}ӧO'NKB_DDǏ9BwQ鄐xCCÖ''  k+:99}`` jc`` &=(9""BMMM.˛4i4iRcc#Kرcԅfff۷ov3gdٳgMMM$GscdzzzB۳/_ZQQQSS?eʔȢ"sssBC.\RQQjgg&nzB\nvvebccׯ_ߥdsseXX %|`3336 իݻ쬭e˖#GJōƍjjjWQGGZխ)C}||lllW^M322N>y5QLccu${_cZBh&LJJJnnnbccc3g=ٙ4mƌ=f,,>us)))EGG7+W,--upp(((1bD]$>و@ PTTRh 5n:uԹs_bŊǏw9n8_92< ,WQQQPP (((QEIIIPHѺ.*/*嚘!J[[ ?~%[r劓ӧ=<<}}}bSSӪ*jᘚW%^zȑ=a9zh``DZc 233{=B@ Æ +))}vvvxPT@b?{'VJdccSSSOLIIqtt{/!|>?99ZK!<:>z蔔@@@C^g<ݻcǎz`:xȑ#w䔃@LLLRR%ӓݓ;;; !IIIvvvzzz*pUpRRGOAjmV^^N-Suvvr8si'''cnn.qz>mooOׯ_Wټy 󣣣.\8m47oU%&&R;!$,,,000++֭[᭭/^ Vkk+uP(d2VVV_[7o3f(r˰IBBB>裒rJ@0k֬v߳gہ;F۴iShhƍ6nH.\E/;w ?yU(**h4̵S^^>z\{{۷gUUU<"H kjaÆu_K!I>x:DL?޽khhxbj<ɓ'QF5778qnt:}Ĉ$UUՀ###Bȑ#GDdBZZZrrrD/ ǎK`ʺ!00<|:"boo/~]ǧO>wܦMz,ĉ555sqqV9Ąd2ccc !K.쮬ʪ2wÇX5k̝;W:&H>`8NFF3N'ddd$&&1bŊK3%쬭ƪ]Z [H+ (vI)+H+Ė%KȪ}Vȓ}D___9% sΕu )@Z Ri%HJ H+@ Veeex6'@ &|KB BPUTTLpOx&8<^_YY[LpWC H+@ V )@Z Ri%Hܥq7IUҪSkkktt[\NNݻwe 铻2>>^o***qqqoPϮ]6oY,֝;wǛ-Zd``0{l##9sսA{`ڳgϘ1c/^ Y7JttY֭[[RRB%ⴴYt*<<aHr?âE֮]b!/477755ݱcp|纺iiiPx|87lMMM?Yf  ,X6r6-VqESS̺:ET?TBB„ |}}#""}]aN2ӧtFFFFFFϟ)(Qiii_vdiƍ?'|D+**򬭭;&|2}tK+++{ vӪ!i%EOO/>>/--]~}KKP(pBhh]BCCϝ;?Pi寿Dzj~~>|޽zΝ n޼YKK_~[ER[[[0(!dڵ~-bbbSIoÆ kjj/^, Y,]o߾3gR۷o񪼼vI-ر:!1(A!###.._ضmP(422JOO :uj|mm;wP/g̘~A裴RNwQPPhbbаe˖  iӦӧ'N|%!/""GjD !>>>---NNN4c ]]]Q*??_CCo ġCvIx/^tppuY[[Nj&qM4*6iҤF&)^U>)C u0pl6DPUU-**"0Ϟ=kjjrvv/ 1/scdzzzB۳/_ZQQQSS?eʔȢ"sssBC.\RQQjgg&nzB\nvvebccׯ_/^Դ/ Addt[dxsWw-[GI겋ǍGRVVVSS(:::Բ.uǧ 5񉊊ioo_z5N3gNXX󟖖6ب,*@-;:##رcT\II͍R\\lll,و@ PTTRh 5?~Sf͚E9tF3gN'0+Gf_ǴRCC3k„ !DAAA BD-hooe*'fdd|QE`8sLYY!NoٲRt0 8W\ӳ:{]rr]ljjZUUEt9%^:)1CѣG !zzziiiL& >>qUԴS45U@b&i+S/SRR`\R ̚5KSS.?={|}}8 XnӦM7ntrrڸq#FpBVV!Db/rܹ...|>ɓV]dIiiiqqǏO8Az0G͵߾}g}VUUMMM///B`IȧǏ>}ܹs6mWSS#=buĉy湸P#GBLfll,!dҥcݕYYYeGAn޼yaf͚sRg3Qz8 Ri%HJ H+@ V]ZY]]df<}-pDIJJzP+d x[UUU6l+ڼ<>SU%%%O>} b۶m랐tttHO<e涵|~^^^MM[M eI\⢬nݺ7ď?aÆ/_[[O?u VVVBN訢h"6큁A}T?[rIBB.xt:bܸq]jooioo)(Qiijmmmll<|=G^655;#F\5LRR1ctuu`yyN߽{wOm訬foBP(wG+ !fff999}ї/_,//>} T믿WVVVVV2_ VBpɒ%'O\xqJJ#G!999_|EPPx۷UUUxԩSU-]O<9|ҥKy<!dÆ ~yyÇw8yL+988蔖|2((ʕ+---~שK.upp aXTO>矩Bp޽ l6{uuu .1޽{\n_vO?tƍn'O)))B#""im_|y٣F"\vCK.ZJYYYYYyժU/_)UKKKSS3!DQQqϞ=Phaa.*O8h4WΞ=jܽ{WAAaѢEE)((ܻw]v-$$2j(R?vZʎcǎ555۳ӧO۷󫭭㏽=z$<==UUU?nnn~k׮R̊ BȎ;Ο?qO>$77788XSSI^{{{qqqv55Y7|@WQQ!v'O}]jyرUyqOAlmmkjjرc!$lhhXnڵk={6bɓch4BF~1;vlOkJT\\|XII!99M_zɉZx666Çm***jjj]!h n |.**b2[l򒸋Y,H[ZZī/EAҥK_urr[wڥݽXssvں3g&&&{,KMMMQQw5yL+njBFŕ--- !fffT|ĉ eeeǏN^P.$D&L@\l!ub ߰o0Z* r]{{{|D \~ܹsWZ5gΜŋgdd|wq \.WMMMZ+1S<<<>x|Njjj z0]!U@MMf kx\QQQKKKKKK<$P0 !:::xSSN`CCC 777S⢢lG=z!RSS;vB~ᇬ,Y7 PXXX~~>!D]]=883++K.5jTii)J@`aa!^xr[CbǏԲ}߿/)!D4̨t#VTLQQQtIF3yL+_ҥK.{)77GBjjjÇ?{RUU_Qɓ'GEEB+ݻG-K\[[ŪꫯvA]p…۷o߾};11$9 IDAT2gY7 < __ߎP>m4ooojʍ7{{{;88̝;7**J(fggO)z6PTTuC`h<C ^FP>)^lX^^. {y*  15+P( RFlV*++ Lp#x&82 Y3R?@ V )@Z Ri%HJ[ًꜜjyذao6wӧO;::ƍ6p8gĉߦZLl t}&$i***JD(3AĶm۶d񄤣HWWԔtvvr\QѠ}=Z]]]#F~z'*'qU\\u`? ^|mmO?%XYYI:u7nA{`(//B^b 0x<ʕ+MMMMLL]{n:naa1n8q}}}}||{ JTZZ'=jmmmll<|j߹sgĈFhmm .]$|;f]]ݤ$*X^^nkkkaaAwS:::*++eyL+mllD/srr&iZojj%Huuut0p!YIIi򪬬\xqVVϗ544HAAA ,R'Np8ĉSP"@ 1bDFF^PP}Phmm& lӿ[P_lٲoW .k``pPx.+ ,X$ KJJ444zʠ(k+tttJKK_|t{{P?TK:88X,*'P?3UX(ݻ3!!f_n…2& PzzzZZZZZZ`y䉛!1""Iŗ/_={Q!!!!׮]ҥKVRVVVVV^j˗{ `LQTTܳgkss3 "dffBJKKǏ7j>`޽h"BȢEݻ]B5jٳrVvtt;vޞf>}z߾}_mmmtt#@驪zqssS\vMbfffVTTBvqȍ7~'}fIblv@ΕvvvN:wY`Ayy[o>OHHɓ'.cvtttlll?~S+---[[@0vX777--vBP(z#!ɓ#G j}&ï^D-x<Çw/o>=OiwSSpm۶yyytȹ|.**b2[l򒸋Y,.EEE:"^x---j b.]믓oݺk.mmmjUaaڵky<ޖ-[!>044}`XjjjfV3)+++[ZZBJKKD'&NPVV6~x1rJBn„ e˖B zjObb:N````` /* ~ܹsWZ5gΜŋgddHjjjmmmwq. p8j bN 8|p``ٳgAXXXxx-[֭[G-[<==׭[2jjjl6[ P0ǓԵ9%!DtPGGQojjlhh^3f*X\\\TT$^PPPPP__O-+++KXXX~~>!D]]=883++K.5jTii)]/P^^>z螂0X=~w}BW_}_P9essÇEoק>Fz0kEEd0ǴK .]DrNpss{Qzz:!ZK>|g!UUU,MrcǾxСC ϯojjrqqy!>}z֬Y`0pNbRSS !wihh6m3 !W\a&{_O0$`0E//_XXXRGDDO6ۛ`hƍs΍ Ɠ'O>}:˭TRR(5Ph"p0#ϟ??~;3SIL0$˭ݭ}]jvqHHqaa!455&ikksuuutttrrrsscX=%CG9f̘Yf榦*_^^^Bp߾}|/#I0QQQTNӛ3gӧ`AA̙3{& ~r@600 455=zPt!FA8yyyuuu...s\UUUFϟϘ1mZ022ƒRl.CL&SCCVGGGjjݻ7+++*..,,quuݫWWW{$+++mϟYfɒ%>>>***777+ ƍ'X#FZ7UpZ VBAZ9Pʼnnӑ ILL̙3e^QZ)wȊlsJd.]*&y H+@ V )@Z Ri%HlCS&[Egg'á ECx9Fkoou+`0RV6o,//D/x3|>Fahq Rh2  >g+++=8R@ V )@Z Ri%HJ[ًꜜjyذaoPӧO;::ƍ6ػ󀦮a' $aY KDAQж\A(8R Vƪ}nvZtW:V Se$&$ ~ܯByɹ#y܁;w Ο?L&LblmmaSf#G(]S&bbb"vttttt0 "z ܞ5k(;:::;; F*VUUMptt433sppHOO.]255255y&LLLP(^^^,kHWVVVVVV˖-WTd hnn~뭷`<~oٲdԩ...(b1 ggg 8Bp8XҢicY!YZZWRRx޲qH/+9L\PVuy!N>KKKTell\TTa؏?aXII1~iƍK.ѣGg̘1000000cƌG *e[bSSS#GDDD`>uT.aƍ}l tҍ7bV__ollKJÍQYV3̮7޸qLJnٲ߾}6޸uվY>|0ðC >,_\#L\˗/W LPuuusG͜9ԩS"ŋϟ5kBw߽yL&KKK[x1NGgffbŮ_vZD"֮]*^5uuuo&#Ξ=i& Ёvލ0"(333>>!D/^48R,;w+W9rdϞ=+V8_򗈈 LlddtQLyY\\ԄڷoO?t[YlӦM&&&{>;wǏm aӦM[lR,Xĉ2 !rJCCR//cǎY&))iԩzzzuuub1RJGmm x,\?~L&355@}g|/Q,+6Pi-;I&!Rs9{uttPӧ&''/[̙3YYY#ĉ~~~H$000ȑ#xBk֬@';]]]~QssΝ;{zz_066E$)JoobW LMMJU7޽?kv֭`l߾}t:O>a2~ #dv1xNJ77"@PD" L&FRx|ƌ p8{!TUUj<7o޴Thеk.Y$::zzz ,HJJBO<ѣGd2ӧw Y!DWij 80s̪F==m۶mٲ!f͚O?t!BP&K sv%8H455555U)BS<OC{ƃx!Ӄkjj=zYXJJݴiSppL"_ԴN3L<"Ɇ؀bM:UUjV^_epI@fӌFdFDxNg/5~:Bhppϟ3gNEEjoo" ߼!J===___0TB"ttt888sbMe%#PVN֭yEEEB000PSR4D5%x̞=[Cmje%P(+@Y JPV5fCdD#G`dA @vQTcJ,KRw7X,$nL&#@R)@1d2H0T*U3B5sD"3vg1Q]?\C@ je%P(+@Y JPV5̺#hmm---ŷ'M4mڴ[b$޽[[[kdd4w\77K8ԩSaSf#G  y DGuttttt0 "z Æ|j( {!X,nllG(h4ydyi}}ԩST<(J&Olkky l6[$)ݕJ&I$͛_{MHH}N>F\2$$dҤIw~񀉂b BMLRt͚5 ^333|MMM96D"|hffaػ;s3%%ðD btieeeeelٲ~UALiӦۿ;?K.CK$sn۶ ̄u떅ŭ[ b0 %11QbqKK&icY!YZZWRRx޲qHN_^>ڲ2SS(ҥKSLikk0,##L&|-~Ooii~T*?=|Nsܒccc4ƍ.]:GΘ1c``````ƌGUT J lmm߿aÆcǎaVRR`bb2 e 388hmm?b?Z[[btҍ7bV__ollRۯ577g2]]]7nq㆏ݲeo}mqkkի}}}\fM{{;}a1a NOO }Y|SSSbqRR9>>>}] IDAT8JKKo,Yb``#M 9s_pϜ9ԩS"L&iǎ'NHKK[x1NGgffbŮ_vZD"֮]*tUoo/ϟ5kBH$߿? !asPPАiiiWGFN==(PTT^aaH$̌GŋDRX,p W\ٳgqxx"""  Fpp믿g9aqqBh߾}O쌉شiSee={p޽ H$`ttxݷ~+x ,X~L&C\Rqojj%KBuuux],XiӦ+6𨭭UԔ`[d2~̙3gΔH$q___\\\jjjrr<8rչ@6mZmmoO3m,+kjjRwsskjj9wKSSӽ{:::T -[s}}}__߬qĉ ???|[$yxx(6_$5}t|?ϘL0I$'N|W?^;uG577ܹ3<<%//1M$)JoobW LMMJ@]~}ǎYYYw]r7|nͱCFq@ {?ʹKp777p|>ˍ$!d2i43f0̆^{ s8ooo{7\4ʪ߶۷oU<:jٙ݋pK }+**xjj+_O588H&Ql000U:k֬9ṣG֭[Yvvvnnܹs[[[[ZZѳfH dP(O+}XƲH$W(8x{8p=+ah4"bTkicYLׯ_G ^|ys̩Thoo" q|| 9sߜ9sRn/LB:4|! )Md333˗---,Ybeeu&&fٲeg&L[[[UUb#߿okk;•9y4 \V0cʉ755UJ]rEi9#R4D5%1+ y6PV5@ je%P(+@Y @3ˡd2@@$5rtF?U"hz @d>ML *`Ldx΢fJXӣC02 5RT(jz `bdjS3e%Dgc FIӣ &ڻk+@Y JPV5@ jueekk?eee566X??~fdd(Fx<^ffKv 1l6ѣGp&fY]]-RTUW?Mݻw)HbqyyyKKY12r<}ӧATZ^^r!&lHtWjj*L 'H7o~Cݻ7!!a;::<8$XVV344|񀉂b BMLok6eʔ"U-slyD>!==0LkiiPXX7NLLP(^^^,kHWVVVVVV˖-WTd$8͝6m;#lmmt%ܹsmۆ|fܺu֭[xb1 ggg jlbE0;[hO:UZZ::~XcΞ=lvEEnݪrŋ2͛999,j۶moÇ,+000!!aHW}jiiiiiillT0,&&… D"B(..n2l۷O9aD"իϜ9SWWw̙իWD"PBB[ob>|7ߌCHJEL&kƍ7nr[l}o߾7nmm]zo||@ k֬>|0ðC >,_\#LP7n$HYf1LM9s#fΜy)HDӍBfbXŋtP|||ffǯ_vZD"֮]*tUoo/ϟ5kBH$߿? yƍ!##e˖ V^-a)((ӋBEEEDL:4nSFz&( .|Pxʕ={?,""`)))ٟ}Ϛ!ۗqΘM6UVVٳgd2٭[/+++k ?FuvvVVV&&&FGGkzD-X`VVV+WDEDD|sss;r~BX,fXӦMwãVU*SSSn:.+?~|ð ???P___\\\jjjrrݝ@ ´ijkkbw5m,+kjj&MJ[SSSOOϹs\\\ݻARO^XXlٲ3gfeep'N'ND>>>CZdJg f ݻ~&}vMwyÏ=jnn޹sgxx+WB?" W+^Aî_cǎw\om!D;w"6o;9a2L$UkicYVTT"&&&8DrqqA1LFR3^{5 <8+ 9>pBJic}}{_/Z%'1˗/_|;w.]ڪ L,qqqk׮]dIttϞ=kjjZYY7|L&+{;88H&Ql000U:7n?3g֭[[&}'Nعs͛sss[[[ g͚5r IBL 2LOOOƚ6^[I$MMMMMMjOa"y<<͇B^~ޱѣGjU駟hmm +TM;w.~rDaa! &*YYYm`"jnn駟큁 www__[nዒ޿;,,,## RRR-ZȨG]p_r᪂@WQ(3gp\yɤ$Tfl6 ˗\zHF.7xC "򺻻͛gddp#\7;Ծdhnxcc#JLKK\`sddX,0ԩST*u޼y[n MNN0~ܹ---+VP<([ u+silltuuz뭷~U-aJvqF x<ܹs]]]ϟoeeuyq||U96bqnnnbbٳg]]] QrOnooP(ûdGߡ  ?:֯_l2CC}3K߷RճD"pppx!l(+rMMM]ne.xElmm5=eJm֔@(p&-;@@Y JPV5@ je%P,.JFxn?uppP0@?*>Q]&JRڻLY)H4rhFD"QF*b۫遀 ðM8L>5SVH$x&8NLp0F`4= g[@ je%P(+@Y J0L(jz@w ډw?j__BQtYYÇxzz?UUU/9ԝ;wN6%ϧR*x^2~~~!H$Diii6m5k-w155ƒRڵko߶Ͽxtx<,qX,իH$,((HKK{ NW8NNNd2>3a]&:e2/^lnnPDCL&LLL9[-<[Y[[BRTT*MLL7oD"y~ rssGߞbEFF;vyx}:F}+V9}?B`ܾ};33׷ "a8]]]s<PZZaظ6-JMM&H999˕d6ǓH$Czxݻ7!!aaɇQYY8bBG&bӧOUijjQ_nٲ=::B |'x4777 n޼=?۷/]^t;Tb2o"Btuumذf֭wD$0TO?a{n111Nž0<ð2={c0 {CFF▖ZVajjjhhɓ3gڵʪÇ>>>t:lϞ=x;w8::x{{A:b?… !.dggSjdK(ƞ>}Z/K ȿ/++{뭷`HHǏsrr? !UTTקUNNΊ+UAD"T*_R_lٲE(~g!===###@000pڵ?oyM6g%L^^/BLJFEEE!(ʒ%K9ʹ oߎ#L&겶rɿk__ʕ++w_~ﭷW~P(ĿںuuWWW]]/oeeekli֭+V={^VLL?O?ёH$:99 BSLzzz͊])6h@WQ(:*jiiijj ;~xTTBYlYSSL&f0G{9a| a&MZnݢE BBBq;wz9s>_zqI:yWg%^y333@ UkicYtppo_6559::˯D1L6mPO׋0l۶m&&&x0Bp8(+uCff'Jp8x_o[r8~[__j߾}'͛72 2`0 R'OkVƨ$`N&BVkkT*@ D2lkkKKKKOOkkkSTPZZ?Di0ivʕ>`ן=zT3111N3LlH$R+55CD"#\.W&<O" awބ'FeeB#wt 0daHD"BڰaCMM֭[wލa ׷7޾}ҥKKرCUPٳ;aӧO222Tb2j/UiaÆ i47FN3g``PZZaXYY^2bqKKza֝аɓ'3gܵkUggÇ}||tٞ={wqtttqqt:b~ B\.7,,?!!!mmmSN4ɜ:uj___mmX,pD"T*_|e]RRҿ/999+VrrrTB eɒ%999Jc;OQҌdt&ىR#Y^^/BLJFk<ʹ oߎ#L&겶rɿk__ʕ++w_~ﭷW~P(D[Z[[wuu/[VV]}}Ʀ LfKKy{{?x6 XRRRWWGR---BFFF>>>LohFUA'OD;;;Jc6EyҌd˗/T#^5ieeGGG|||||;n߾mmmDī~ׯ߽{&66! î^k.=== k׮yyy:o[]]]]]]bbի-%%eӦMݫVb0Zd2_UP-AҠ4[`Ǐ;vLUn<3{֤6...%%%?38LojkkwvvnmmmoohNaB_^)m/ / Bk׮d>M4iݺu-*(( ٴifff<?"E >/U?0gڵkܹ*7fHkLJUu~^~ %Bdʷ?oz Bа ݺuk$ɼyk4/@]|YVL&JxP|W|!S[UPFi4i4͚O<)o#Ui`0r0 ֆ4HeW_}%Jkkk+W$X|7nMLL޽.**B]v B6GIRQU3^*JSRR]\\}VWWvvTo>77!W-Z\\\XXdgϞ R/w}p\ɓ'{=UAyf6M$W\yX\\\b 1ifbbk׮gbb?j*U4 w؁\ԩS>}bٚO3[>#,0f͚%K_־d26)) 0 }}}oo#Gd0d2ps䮆&cmmmu¤R%Ч) d2! $Q)= U666ALdQ477WZe l(*hGC444>sT`BPfU1H3D?{xsQK\鿣@PZBM @_ч~8ʏU#|Fyt4{ZeTArxEkz@Ri6!oJPV5@ je%P(+hf9tHrp<O"twwhz @׈^D遀 @ tvvjz@I$Xn5De%Bzzzc? aH$@aacѭfJkkk@mll4=k5=0444kz@I$w @Y JPV5@ dqTi]YYVVO}ٿ';;;==%ظ{n?ϣG"ƍGӣρbEDD$''uܹ|~rr?d2?~UT:r0Ui_>3,//رcS j0ʹMIIRT*U*&&&Λ76PPP;,+22rHf~H/---==ϯmH܀pd a#/]43111N3LlH$R+55CD"#\.W&<O" awބ'Feeyyyfff#GkkkGLt,K(jz`"455EUVVЬ{FF (JWW׆ jjjnݺ{n ØLf``ۗ.]o/]tǎC1{cǎaS UALf 4DU"}]ycӌbVVVf``?L3XҢ9c֝аɓ'3gܵkUggÇ}||tٞ={wqtttqqt:b~ B\.7,,?!!!mmmSNU:Ǐ:t(77wڴic?iDw~ 9D"T*_|e]RRҿ/J999+VrrrEEE!(ʒ%Krrrl@TܹsSRR+6V9򜜜bLJFk<4L |PŋD믿. f͚ennnݺ,7 \rCbcc㏷zkƍ^BP$!njmmg͚[oeee-^~xN>e˖۷CM !D$5=0Z %22200D"չSTϐˮLohFŽO~ohPNNΚ5kۗ,Y"Y[[od[[ۤ$VGǍW* 5=^4me%P(+@Y JPV5@ 4H$r\8'ɺyK@$I__X,@@ :;;5= $X:LYI RF 3IRQ$$G& 'A0h4i5ZH\@CCGtD"P{54P(+@Y JPV5^Q<$kT;GP(D"qÇggggggmii5_f~… _0|*  ?snnD"hH$XU{XիW H$]Ν1ce[[[jjjqq%/^|N744?ɼxbssrJxrH333r<8vj|: ի!1o޼1coٲb}r9L vZ|Θ1c%{E"17nD>}:..N}}}'644 233.]LUlv~~~̔ Jjq8''ٳgA"B.]Gb }YVV֘1c+ФIF-4;rB]]]d2Ņ喖:88Ϙ1#00pӦMӦMsrrrwwZjU^^ׯ_ r\>ڼy3JmmmeXӧOwޜ9s޾}+ :6l Ϟ=Ek+++ И4iRaWϟ'ѣG,X5j=ztMM*d2ؘh x@zK~ o?!޾}sb }R|LVl߾f߿J"|cǾrqiff߼yFFFVB999-Zcvƍݻw+))L0S`^psn߾*]|yÆ mmmz=zdoob.\xĝ]]]y<:Dl 5( 40ŋ'N\paPPP(\|ɓ' &zi&y"^433{qMMM===Pssqsiaaw$455x=aBK PCM6mܸ111Qꭚ@>|Æ j IDAT6lʒð[&%%EFFH1L|f&^gg@ H ~# @j1o+==!t/^x"??_YYܹs!!!)L)u ~>[[[;r#Fc(BVaU__200PWWŃݻw?ACOVV֭[fð2EHTV>,***~___wwwui@p4ǏB!{n.S$!ߗP(U«W>݅ ?)ss󂂂O"bKf̘[㘘iӦe˖?N3sέX!DCCCdѣGAAAAFFҥK?9f&MvQ>?)SnٲfO>ݾ};B(::ðGGGnhh~\]] &Hׯ_8~οo婩k׮ݺu#""N ݶmCqO^frhhܹsY,stuuLED|}}ǏQ? _{D@~=Ӌ OMM:u?H,֞6m>- ǍWXXXXXG}}}-[VTT4vX ÂB|>B|rMM .OC49sk׈fΒXZZ㳥įp)))ݸq׮]fff7nԕo0y=  8wŽD"{N޽CH$2߬޲#w0H$y MZ`  >61SVPTx7P@555Æ АwGPSWW/AjʄBaKK7 ?C@2e%(+ @Y 3% 0}ViF޿+Ғ"Ǐgddddd<|a|͌R++W^;vLMMԔVTT=zG ,BCU1̔lMMMCCޚ#QGuu˻---$o޼INN.))166P(xb?{lرo2>>nܸq[d2C4{/R__?vX)..NII$ ~,+++%%E 3$bqgg,VVVTT\|BP(H& ?t;O_$c]8qFӧ$/X`޼y4OtR>L&pRV}}3fnڴzڴiNNNQQQV˛>}BPY.B7oR,aݛ3g۷oott5kBׯ__tiaa8 l…›7o;x{k+++|ĤƤIz +_~nݺuBnԨQxѣGHR__O&/^ 䪷4ï9s?ZxqGGǓ*??wI.%7jeKKKHHHHHlT*B;v/(//hu33͛?622ZjBiѢEmð7n޽[II %%e„ }ٳg4 !@եy ˗7lomm勺b񈻯455qN"$H #L&Fzxxl۶mٯ_f*H)bYiffϟ&''ijj!LMM޽{7zhb#Ro0 !E_}eQSS7o^rrr~~?>sΑ~X=P@***fz_aÆ=x ~7lD e|T@f׿nܸ1eʔǏ#bbbΝ;gddcǎ+Vϔ7͈HaLu ~>[[[;r#Fc(B4mP!uuZttt$%gww[Κ5+''f֥ !SYI233;|H$|}}Y,ӧ:::?Fedd#H$ݻ\ncc?OHmg.))r p)&XZZɻSO>EK.͘1CjK55qEDDx<uĉs"-[vy:`0Ν;b N mll$ɾGK. >5ifggW^^~5X͛WΝ;WIIQQQBڵk4{BFFF8::?d~o@̕+W1[QQꪩ9|ӧO'OX[[+++؜8qܹs ,8rȯaXkk… )\ &ill<|pɝ>}t۷/11o~@1r+VPSSxUo-C ~?~=X oL2'۹\;&yw ekeY 2#ɪx<|T"clV>Y2l08sr5440tuuikk˻#``نʄBaKK7 ?C@2e%(+ @Y 3U\\p 0}Vipe{z򿰝/8qVyѠO>utt|ihh2e_`hkoo_xqww;D$]reaaa0 x󟒳˗/_lY~~]$$$K>Pj UR,??R<˗?~Bi&-ZtaW1d24-*****jϞ=<ݝb}v޾ԴG`͚5Bx<*p6lyGzq+V >t)_ 9r֭[=wvv?}-,,𰳳yD$+**RSSa˗/y<`YYY@$%%%IvΝ;'O>z(y>x\{!pzkS[[){zp444|~PPPyys1 +))R eذa=VYv>jժP|:44tժU=ڛ&''Ӷ/_-(Uee=H ow}w̙ONÙ3gҬL&h4 h4LfAVKP=lwk׮\r￟5kC;vwA\ܹsgjj*B:&&f˖-111ee/:t7`Шݻw? RUU%Ho޼gwڅh>͛_޸q#ə9s&>=s? <==sssel@afUUUZZZ.]qFXǏϟ?Nhof999666T*!DRmll!w>}B˗!!!)))EEE,+66~߾}?yfnnnUUUظq͛Ҟ>}J&Ϝ93lذO<9(((00c0`+V>|JEEηoߎollqss-[d2hFFFw$Wh eyT@f,**:}w'On˖-666GyyY++ޮ1Ν;׿vܹxbcc;w:::fggm򜜜zebbңԠ ( iի%K577733kjjƒMMM˗̮GGG"^רQV^cǎWZXXXbݺuEEEvvvxg^~D"## FddGH$R{{{iiuo=q?AWWW|` <<<#п'r8#G~ ~`XlHHԩSI$ҩS~WP}}ܹsBCCoNPrrrBR`f^ 7~w ΝKOOGYJJJTTԓ'O,--===׭[vYwww+++$4#߿Sf$?H$5DRWWA-X۷W^mmmpႍ DZdI^^^bbCLMM-,,Nzd{{@KKKcccwww>WQQ9m4իWK茦9> I,BȻ#`!H***3f̐͆jooWSSȨdw.Yd۶mĈ4=mڴkH$*joo5juttt^^^DD^kb6JP\\\\nLLL{{{llȑ#BRR1L}}uf|Mnnn||<8W_}rssc2.]jjj:u4VQQ̛7ӧqqq(L3XI a@455QT8sTSScdd~ suuuP+(ׇxJUU{dC1L(vGpl J)===yw }U ;@2e%(+ @Y dJ yycuu5LVR(@@"M@|>*^ 0Phff& NIIICCJ:Ȝ@ PVV̓*0S曕OYgnl.|חwG _Ȼ`( <O曅@2e%(+ @Y dJ PVLs8y qU)ݻVQQڱcǸq>t;/^dٛ7o*"L&z?P^^k.##` gX#6m$D?sddڵkEYҥKl[[[DDmSNa._nllw^!5ݻwǏlk׮ׯUVY[[L ;v,??aǎf wdh={x{o߾pBP쌿Dj aRL(ݻ;w<|/7322.]z}<(4䡱K]0n8bV(褥n ÚRSSv@p8 >T^^~ܹp JJJT*B6l~鱅UVӡV499|roA*++[\ĉ;sL-f555d2FaFdrMM 64 28]fx<55&ooooo{vvv^vʕ+Y;vwA\ܹsgjj*B:&&f˖-111%K?Hݻwvuu},,,222.\PXX(QUU%Ho޼gwڅh>l\UU5rğ~̜99s&qRSSC4͕XG@oiFسgϲeJKKҥK7n`x,''ƆJ"T""t:=<<<<<|ӧOrssCUWW|R]]=$$$999%%b۷7oͭcOiiiO>%gΜ6lXrrd7o$M4I TVVNeegbbb={6sLAx@a>|}kHOO8qhĐ5CCwIBTUUuuu%H ؀;*++SRRˆك>}ύ~Lrܤ""Nt.vluuuʕ+B^twwGegg" -ZBaVVֲeB$IrDBd2Y(:a wsrr{njj?p}ʻS6m*((077葅Ebbbo-W\?޸qc߾}KJ3X,&H=H #\PDDijgΞ=eccoI*H)bmdddt㚚MMM"b86=l6[$A z2a„ϟR(ss;*P4i$b (,.`0&L{!___ޱcX,Rt:tCCCUT*p8 h 5(>Ҭ5--ܹsDcnܹxoK¤"^업E]]qI/;v/|>#eii)BH__ccchÆ w} x{]l^>s3, T|'fza… qcƌQRRrttƃyyyNNNk1ĤGAP(}?|x֬Y;v:u*FTRRS܄ 6l /^~xoCH$:$6o޼}vPHHԩSI$ҩS~WP}}ܹsBCCoNPrrrBR`#޽ExU@@@@@@ee?f)))QQQO<\n]XXٳgݭӌO?Ғq5DRWWA-X۷W^mmmpႍ DZdI^^^bbCLMM-,,Nzd{{@KKKcccwww>WQQ9m4իWK-33͛ ~絴>'bQ(⡲vW^tww?vo6P{{Zn'C&}||޽[ZZdɒm۶#H$i9s0˗/yA5::::///""V,lWWW rcbbcccGd|T}Yssŋb273W4VQQquuE͛7ӧqqqHX,$ 0nq T*122s?:mmmk< FS fBD?_DD~ggfPVLL|Vi6(J PV@2e%(+ d2YI ZpRou/JJJ ?>*^ 0Phff& L&kii( &/2d;>ȅX,f2߬|Jeee8sbttt4440p8 /Ab}VoP(fgh PV@2e%(+|9{*w\\\V^]^^s'N|*"G`qrrBgCށjkk 0P"ʕ+˗/ ͕\aX@@d288o`AA˗-[/u >>>---}PGUVVKFֶ}^>p8 >T^^~ܹp JJJT*B6lx޽V§`jժP<J4 &''Ӷ/_-(UeeLQoi?뫫/Yh<}t"Μ9f555d2FaFdrMM 64 =d jel6㩩555y{{{{{ݻڵk666W\g͚Bǎsrr|ǝ;w-xxx-wܙ*..ٲekkkkLLLGGPSSG d^~d2 ΃*Dz >k.5F{d[n͟?zzzݻ!3sL̙3{RSSC4͕ 䭷4 hkk;|0ђb=~xt:F~74ɱR!*jcci&wNnݺeeeR]]k׮5kpܐwww7uy۷/77ֶmSLm7nܼyM0 suuMOO?s̜9so|ImmmP[RRGraggg==aÆָ!999((H]]][[;55/hFFFxCCC-FSUU%K ~ aiبpܮ]oKrO3EZ)t:Nrk׮VWWG)))\!+MMMwww_vvvnn-B`ѢEm_(fee-[ !D"$G$HFY,ִi^x_x|b6m*((077葅Ebbbo-|~{{{}}}]]ݜ9sBbh" %W$GAYP<L3>/ 'NXWW`0;f fxɓ555UUUBD\OObq8mmm"+yWplH$}СCԸ\.0a~C|}}6^f >i͚5gϞT*N t*T*q8|h@j'^#444-[7͈HaLV¢-**/ǎ >D}Zo``s<z@ϟOZYYqEή njjRJJJx0//Ir#Fh 5(Ãfifff'fÇGf/_dGGG"^רQV^cǎWZXXXbݺuEEEvvvxg^~D"## FddGH$R{{{ii\5qDsȑׯ_?~P6mٶmƍB!!!^^^SN%HN_BsMJJ ݾ};B)//CI jiF&7nw߅744;w.==f)))QQQO<\n]XXٳgݭӌO?"/"H$I]] ]`۷o^zdɒD}}CZXXL:|>?.."22rڴi:::eee Wܩ3bQ(yw 2$MKKjjjLIKK{nii%KmFH#HӦMg/]5juttt^^^DD~X,fٮ ŅĴƎ9!$5(M3 /""8 >*͠_GY٠((+ @Y dJ PV@2 7VUUI}!8r' ?̉D"P>6Xlff&m-;*** EYNRWWwGP`0>w`Ȼ`(D2߬| ;2LPTTTw`05440԰X, yw t:][[[޽CP(fal%(+ @Y dJ PV>SG޽Cgf WV޻wO...W.// ۹x'>hr力JظqcKK_`zePP7|f0 "ʕ+˗/ ͕\aX@@1o߾m/&*((X|e"!!'88X!5*ir,Y$44 '66$fN3@hѢÇ ".4Sdh={x?\ވ >Ԋ+҆njjxb/9r-H$ݻw?Raaɓ===={c۷o_pP(tvvƟ;-50i|L??/bԩD 6TTTFFҥK߿f<466|ƍG B4>_VVݝݍaXSSSjj'OD"Ѿ"55~aaa|Kkjj >ޞ%D"QRRaQQdg ʈX,={l>x\{}-Zp8=1$ֶ}®^q8 >T^^~ܹp JJJT*B6l' VZCCCWZգirr2>mkk{ނRUVV@jq8D|899vvvNNN[n#}YMM Lhh42\SS 8ACCjel6㩩555y{{{{{ݻڵk666W\g͚Bǎsrr|ǝ;w-xxxwܙ*..ٲekkkkLLLGG%??H={}>$}pqqٸq#>$ %/UUU|688x׮]!kkkCkݾ}`Z !3sL<>s? <==ssse~h@qHM32C}}}PWWWss3>ڱcǼy󜜜-f999666T*!DRmll!w>}B˗!!!)))EEE,+66~߾}?yfnnnUUUظq͛Ҟ>}J&Ϝ93lذdfo޼ɓBa|&3f 8N@@;ragg۷o766P(ܶmѣGYfddO{N1FSUUՕl 5(CGjO>!tqM>}޼yw>ydϞ=[7͈HaLJHDt:]vmvv:BHIIiʕW^ijj#ssslmmB-mB0++kٲe!$9"2UUU ÔetA/))iܸqd2͛ M6?z"11/_4i>+E***=bD"h 5(# 4 ݾ};w>|H7l"zi&9 iɓ'ߏkjj":::455p8DPWWW(lH544z뉵ωYHD&455-,,ʱӦMw_p\aee5aCJtt#GY*Ji:nhh(٘Jx<CPR?60N777wsssss===l?OPyyRsss|||iF,E fx_uuulQQї_~9v/^||bʪ+:EEEg&"t^^x8Ј#LLLz4$5͊MF\h^^^׮]۹sΝ;흝ׯ_K3GGǗ/_5*))qtt{)~5k;v(++zjaa+֭[YTTdgg7>{l``׉J4888(((22`DFF>zD"J8|Yv9eʔ/b߾}|>?>>^>GP0IIIJJJaaaDdcƌc@&Np9Ǐ6 w]WWW%BLHHԩSI$ҩS~WP}}ܹs8)JNNNyywA0TIM)Shjj駟ܹ3bĈ#FkݼyS]]3UjDEE=ysݺuaaagϞuwwBN3?pl6[KKL&D"_\H$uuM IDATuЂ ޾}{ .ؐH%K%&&:tbԩoNNN 466vwwqqqӦM)++KHHXz~]\\\]]333SSSkjj6l0{ݻwJ_CŢP(=Л#GIpppChooWSSc ddOZZݻwKKK,Ym6+D"ikkK^~nnn033#"Fˋol6ՕBpܘؑ#G"b2 `fʋ-zAbb"8uꔋZ$rر4VQQquuE͛7ӧqqq(L3XI &'655Q{fXzzz(jjjdN[[j~0B277w/l(f –nvP.wPSY>Sp|U ;@2e%(+ @Y dJ yycuu5P(&XL"/. cb!B$AM,yˎ2BQVwCӵ@Z[[UUUuuu0h/B޽CH$fSؑd "e%9%A0mmmy eBS曅k@2e%(+ @Y dJ PVLs8y qU)\Yy=?^/lŋ'NUD"Qq0cƌ[2PvZ__w\S8' 6 *ˊ"K@D+KR) (u\E@oڊꭂ\QA@ CF@ 5|%k yÙl6[cp|}}7a_y/_nٲ%??_.ׯ_矷S4ϧ#??[9X,VttgTTEfbWVvww>}?L#F_Rco_VV^|2<<ӧN }MW^Zŋ=x@GGG__ݺu_,ɓ$Hq@@;wBVVV .\|yAA{_pl6 ocߡ]ZZ\UUf>>>YYY>"N3LnJNN611᭲lee 3TaJsNNNᵯsNcc_aׯL&Btvv===,ᤤhii/g) /#III%/::.QIcrzzp-뻺&j\`$}}}rrrAAAϟ0TSSSQQQCCx׿ȍ7bg3:d2GWWcǎ噛wuu͛7o"44t߾}_|aΝ[z5D8::ZEE!ӟy\LLLB?}tYYYFFGF'--eggG$544bQǏϚ5 !joohii}ڴi/A~~xҌL&GFFz:::999Ϟ=Ɛf"O3q%%%^PEE({(++A996{l|xI 555:::***o޼3gFB;;;Ν;|ǏoܸqhK Μ9Skkkŋ?с&STT5.d?ӽ{޽{w^PeeDKKKbbiۊ&h娌޾}}GFFF%%%xŋ_UUUMMիWx0::g͚.Y]vݸq_o Veeouܹ!222l6[NNNBBٳgxŋ!f̘^A iVQQa ׬Ys֭ꫯ۽{7Bh4}5~u@iiLVj̙k֬ٶm[DDDyy7 Ok׮EEEVVVx؝;wϼJ? :uTggS>>a̙.\xʼn'o\w,YBzzz~G===@TN`IIIyyy%&&vvv^tҒSaΜ9FFF!i`0B.\k1 CR55577C E[[~khhPRRZA޽;,, ?#Vjkk E= fl6mg |IyN8[DUM;@Be%(+@Y J yyc]]a >`<=0F*`bCѼeGZZZYY P[[ ][[&*#Qtww [єrrrPV$++++++Q@ HKKCj1?nb¿Be%(+@Y J PV!fd~p?,kppP(Cp8d2CVi&ve%DRArr1C ӧOO\\\RSS?`0)JUU_cBRorMt:Ą`0ٳg?~=w FPPǏG)lhd!aؿ/==3fd2W^pUFM3WWWovڵ%%%hܛ9c<88(pSrr D]]D"^vL&ݻðИ*dW^ }c0 tF˹P(L&3""BEEujj>$888''G_Wuuut:]ԣLDDg}M}}}WWD FaTYYaXMM7o:88`??!+Ξ=+08d& De4ihh7o^ww7a}Qff&qnn.6Z*((0  «Wƞf,IʼnIuwwvuuoWZ%--gϞ?x󠠠 9''' 뫫VTT#烂 O^[[=lJJJ+'ivر\.f?~!u֘K.M4ǓJJJ!$+++!!)0 CIII 6('$$ -[ve__ߟ~/O0E<}!g---ߗ$;vu$H=== .466F577 T̙3?fyϔ x!****++"!rttWҌMcY9*R|5++k…Wp233?g188 qVVwrO>!aXmm-c0N???Q FOxǎ?fSzz:pvvFqN y𡳳xivM777iii|UOO //_}Ⅹ)&͘LfWWBhҥ555uuuj8jDDyyyiiiBBHZlƍ"Hmmm Bs/[B%%%222!33bQss8?'@C x!`ll79=/h vH`T4-,,wx_]]!v/莓Szz:<\vvvYXXX 8Ç'n`%&&fddVyI5ҥKkjjBMMML__߻wBNNNl6!ann.088jDDyyyiiiBBHZlƍh/..޷o}BjjjAABH`ظ"222009??_YY!$0 6P(m۶qUV l{={ʼnٽ{w__ߝ;wN<~ŋw?#BH`p,oT*USSSZZz覷oR({pL&3??wV!hiimڴIEE!aD*))FFF===nnnjjj rrr>>>˗/777GFFUNND (&&|%K ׬AII N1pRRRN:lٲ[ZYYq\6$/, ˳QPP@奥7p\fMUUխ[n߾qFR553f")))EEE6l984g*++9)B?>>uѢEGftuu_Y hAY bѣbXAY9IuttDEEq*+'Ipxz 1)j3)oJ PV!@Be%(+@Y @4/o%aw ȸ\.BaW`0 >`埁peee@>j[XX]80Qhnn)99WVI$Rookd޽{{{{1 KMM RxK6}۷o;v,,, ðK.h4Azzzii){( d2#""TTT{]"l6/sYYY| @,tQL&6mxkFF@0 HJJ0ƍx|EEE jjj<==544x=GEEǏl|uŊgϞnd2YX"06Nruu0ݻ6l0r*((0  «Wƞf,Is0q(nXXXQQQLL B~wuppRRRp\II yV@ fO<پ} fΜ9'cIp%%%www^M@IHHq!01A 6(iӦ!2L<`jii$Hܱcǭ[GٹPS"xwBP*===6{ @`Psbc4KJJ񉋋w90jߎ#&i&eLLLZ[[iBYYY .477ǿJo%}}}/^ >>>ϟ#^W4KKqqGx'Baaa/F=䔞/gdd8;;#\ngg'~τހ<|Y`pDN`O>d}tҚ:PSSSuuLOJUU5""߿4!!H$zyy-[lƍO0|{NN֦MTTTBHKKK{{{:ndd榦*((ȐF]|922]y~koo_~=`P(pW/_egg/\P^^~ JJJDLp8SN-[l֭VVV\.777=WRRdֆ$/~`((( tttx!08Tmm' &4~ Ǘz{{yHPK RRR,--7lXҌfI++-(+8R =z4 @ 8(+Lq*+'Ipzz [٤e(+@Y J PV!@Be%Ѽvw L$RR4/ow  Npw '@Y J PV!@B ve%~X,_ Ng n߾.Q)ofbWVH$?$''@?111coߟ^/$$?7߬\~Guu+W~ZcBRorvLR hFrBVA]z oC& A[[bi4 ) 0(]]]^cӬ\FF!$##cff&i&5;#Z@aa]}}}kk+DZdIggg\\\EEٳBϟʪWUU 577ar d%%%ݻk׮KII y&|?88x֬Yd?? m rpnUUU'''33*QIKKK~~;Hܱc۶mbbb˗/_w^/cA===ޝT*u̙v9@`p &4322/p8;wh(o%}}}/^ >>>ϟawׯ_z8oܹs3gμvԔF WWWGywrѢEiiix޹sgAAAggӧOccc߽{͛7 ww '@=y򤠠`Μ9ȝ;w,X !Q͛7ͭ?111!!=}wA^^hhx߾}#:cc㢢" |eeeׇ @}"!!!!! LnMMP__ߛ7oٳ/rDf*)--=t۷o) '&ϻ!hiimڴ ?NaD*))FFF===nnnjjj rrr>>>˗/777GFFUMMMoo… %DPD=09Cx,,,lhhPRR iIII9uԲe˶njeersssHHH #ByFgccKKK ?.08Tmm' &4ZSS#!!?{iJ&.]7HII)**ܰankk\(Į@J1tр1,ࠬJ3Ʃ'N)of nBe%(+@Y J PV!@Dډ)+%EFYYYx'8ONp0N``zp@Be%(+@Y J bWVRԴ?effR(͛7q0555՜ \QQfE=?97o8/pkYSS͛:p8%%%&0jjj#l6|hnf}}}EEE}}}AQ& ̓7%'';99999-ZHFFfϞ=:,,lھǗi4ƍy[~guuut:]ԣO,X0sZwuuM=zG3f `fmmidddddTRRaXuu9s f͚xn ֯_n:LMMN81BP 2<.K`h4''ӧ|'L&o9} 5222̙ǘf,ISYf=zѣGyyyϟ?p«W{o߾=w{˗?{ _;}LOX2<?4׻vڷoG*, IDATFa͛oܸiӦ,II˗/#9ERkjj6lذ{nÇ׮][[[[WW|ХKꚚ(ʥKEXX\WWW\\Spi\WW~M&=~f/^x񢯯 ucYRUUL&}v< O>|7R!!!xp֭~-ðӧO٭\t:}޽^^^{_|˗/ B(33s׮]Yf˵ؽ{ BƆL&zD`t4!$))yI;;;Pqq]B7o.((@ $$$.\߽{>ݻ௿222Zz'x`" L3a ++z겲Aټysjj*-rrr$$$>SЧ~*!!+4;LjbݸqFYXX[nUVV=zTIIݝH$&$$yzz暚\rɒ%ׯ_:tǎ;|%HD?~<===..}Gŋ%$$^|y֭~m999p_"KKKO8i&QNEEtΝ\.w޼yx:.//jkkhh4;w.@@>jM3q**b;v@e0A&yyy:r 4h M3 sڵX6w܋/ gVGM3$ıTQQQQQQVVKKK ݼ8FSUU}/5g<===xb,_<''~[r%BHEEeѢEQQQgI*''_vvvf0T*UCe 3gμx!t޽{ũ!L槟~}rJ0FFFhꌍ5kd]])!ifĉ_~%**ih4ߊ&ı~ݻwBL&͛΋/~BVдigO677uO6~@W6Ceccb!zꄄ8@utt\r_TRR222.^ىxѣ1cFsssss3Jy՝;w!WW7nOTIHHpwwGH99+V$$$ :;;;; Z[[/^0}EEE͘1eټ/ ϭaEEE+WO***ٳg L~H$ n޼f [n18=a؄!T&h_jkk+++3111c/XRRѱh"!:^TT$''giiHU^^ҲbŊ2*0Q(mmm999QL,+??嚛w%%%UUՉAKKˮ]6o޼n:YYZD333o..9ngg'!!_^^GU[[ ٻw󵴴LMM !ZVV6o<f4kii)++?>ƒfl6MWWW(e%J0NC...:::J3ƩVWCS*&-;@@Y J PV!@Be%<l p8QL5+ XHHHlQLel6 [Ѽ0o@f@\.@?Xp\)a 9Z)##  ]mmG2BBe%(+@Y J PV!ؕT*5O yMyy_LaaaNN`͛7UUUC߇488XZZyps8Q`jfl6|hTWW f}}}EEE}}}AQ& ̓7%'';99999-ZHFFwqM]O$@vD@@"PJEЂPUPHZomlRkբ>VBնn+!lAaIB2k<m @9s5s7YٰaKbΝ }or%xmm[ngϞ}񠡂BM = TWW777P/rss.\(r>>>ʛ$&&N8,/^lfffffFnḹݻJl6[m4Ge=pdK>0zhKKٳgbiv''' .>D"Q!Ʋd*ݻGR޽xѲ6667o G;{+WHЂe%z \.ʡB.[ZZ[844A]vܹ -[L:U`0eerrWGGGGGWrrr],ZhATTTb**aY9 LѣG9s zkk\ 6mڴd\.;yi&O>MӧbiOe堻266fO>]~}VV'kmmݸq#Ś={oF6[|9Ŋd0::Zqxdc >s__LPo755-Yv-sђ/r!4d^zӦMV>?qDh|򉯯/ܿ?66VKK ܹCٺumۦܹsk֬t:}͚5wvvÜ9s233UꈑLNذ駟d2m6 =gx^]~J@xx8Jxi}$H?===Bɓ'KKKwa``bddtرм<77)S=zҥK>|do622ݻwggg:t1***;;;..;v2~ƌt:~9r A _߸qǂ-&&Ǔ|E_~ˋ`aaX#VL&L*D@e *Ӭ](2 r|>dÆ r|ժU&M٣G\\\( P(gg粲ѣGk6#F1N'&&>| ZZZ9dɒ+WM0!::zŊiii/_niiIMMeX"%%%%%gܹ)))L&S[[ӳ{cwww :ŃB %%%_5w4T;wN(^xqڴiqqq|>_[СC| =zmʛ 򳡡akkk F)7PDA4svvYl?~I"PuֱX,[[۠WBLM ƲɩxիWq:>vX`ٶdˋfWVV/`O&rqŊנ[n3f;!4Y_/))q\~QӃBgccZRRC322<<BUUb1##t̙/&8x𠾾ӭCCC 6mdffbϟFݻwL3bqMMVDDNWZ5ydTJ.ӧm 'B/'*v5f''YfH$mmm-%ʛ9sF1P{{@  (.. S̾2N04mhh++ *((0777n\pp032ҌȭMMMΝkffvI24 (DO]]EEE'3L+++EiɊ1@(X,\ÇɨPWUU5j(]]]M 7?600066@S__FBr9丯/ҟ@ Ϸtuu=]eeq^tHhRf ǏWUnݺeaaxiV___\\U_L*r\kkk.+XV~e tĉ KKKM+,+fTVGvB|rM 4 BJB!XV"B!5!B!BH D!Bje%B!R,+B!hf:tL&J&BhJRSAÍ\.H$Z/(T*(p&Jrڻ9   S A*h;Vjl%Nw ]eeRF\⽕!BH D!Bje%B!R,+B!`YB!JB!XV"B!5tee]]]x)//? A999l6[9py|OBHA( &4=oL&A(e2YaaaCCshبMHHe777+"bX9 -,,Tdl/@hBmmmggUNb0'O6lx]ܹ3!!\}7l< ,^%ƃ # 5= 4)bzjV]]<Cuvv622ZpH$";88888ME$-^,,,\qssۻwo/Alv67o񆍍uffڵk~WŃ2 777}}M6^{M9|>чٻw+%؅D"QÑ_d2{QԻw.^|M`kkg}F.fgg?yE,+ iiijjj|>XVr2??ݺuš bڵsΕH$AlٲeԩAdddL>7LNNJNNE_ WLeP%,+CDFF޹sT&qܹe˖Q(EYY]]} ?~lffv% Ο?4q9s] ֯_hѢSY9.wblӧOׯ_Z[[7nbfϞo/_b'O6&?  ovSSӒ%Kn``W_?!?666 56=vXSSSCCCCCC}}}M=_kk+ϟ8q"hO>߿QQQw6d2 Ν[f Nk֬P3'''>>̙28ˣG>x yB4i-߿?a„iӦ1cMvm`,KiC")4##cΜ9#HT{eD"9r 'OLJJڱcADD=vزeBCCryppѣG쒓Nrrr%۷`gΜ9tЦM Fcǎ.cXhѬY6m_ 96-JN:zEq8M=[LLLCC\.wqqEm~///`<?~oM|ɩȑ#cǎr ן0aB^^^ZZZXXXKKKjjźxb/HII!?wvv2LmmmOOO]]]~w"577ؤo߾=$$Fiz\9Ν;^xK.ݳgm۶-++ }QKKoyT@```@744lmmU\ 0 E ThQ[pӧO_RR[Ivvv|||DDĬY V^}qA.X" XYYL6BhX|աC3[z>Ԓ2ARȊ IDAT#GqssO: ܤ`(w`0Bq`,W?ϟbŊȢZ>{lҥNJJʗ_~ &L(++[`}}}3333yb̴A5jcYI F'Oagq>oll%~ YҒއRGΊy<Nb =WYYΝ;ϞIII7oCA[$\.wppPL?ph+d~?T4P>cOJ}}`Rܹs-,,ϟO>>~~~ ((( *((N1ʠJ8Аpƍ7~xrV  (&ڹs~Taii8jԨO?l2g/_Immm>|K~`Bհ377W\~9|>B.[\\d2¦ɓ'+! tuuY,BQjԨQ2d2ݻwb1eǏP/cccȇv{"nݺehhᡸ_./ҟ@ Ϸtuu=]eehHH${o_mԨQssÇ w *J\.%ً!\V"DAĉAAAHWXVQNR<6SY Z|#G GvB!`e%B!R,+B!`YB!JB!XV"B!5!B!BH 43\.J;B J"HAC WD&[ͼ&n\NP09d2*B.|8BBPd2t: '|'8'Npww[c!B!BH D!Bje%B!R,+B!`YB!JB!uuu#?1*//H$d0l6K0 @OOt~8%x:l߾=**/Eyy\.wtth mlltqqV+**prrRٹL&+..=i&HJJJLLLlll[VTTrgg.^ҬQ___dP[[٩rթS F@@@@@ɓt ^b;wLHH{{.o߾.Ç(!Q`4\q8PQ!F"?nnn!:;;YYY-\P$r}|| 7n9rرcD/633333 #7WpKP%6cFNe]zW_mkk#=rbC]p… di&Hjjj~ȃd2{QԻw.^|M/ ژLfll싎 -XV<}tr喖֭+.. =pAk׮;wD"!b˖-SN%"33ё~+W啜e-Z~=A䯘ʠJXV=LP(1cƶmشiӒ%KrH$祙X,677?}4AO677'>Y?Jellf>}~,OOOںqF5{~l\WW|r/`tttCCydc >s__LPo755-Y^Z__/#F 1K,Q6V>?qDh|򉯯/ܿ?66VKK ܹ~m\\ |۷osέYN5kddd(ٙsT#GHe<~xvmLo۶Bdggϙ3fׯ_RNR4fJe|>S(d{CCVPb- 4eSSSSSSxW&t:}رfmmm=yyyJwww>A.X.]ߟ={:!ؤGGGĐ *ZTTT*uo ܤ`(w`0B\.Wn2804Eeݻw_T*U&}wo-[RRRiX &cYI G1bٳg8766lnn3$ 2XZZZRRr$2lҥ4!;w===n޼ "o1c(湳mii8r4(7PDS%&&^tw!υ )YfkaФ`,+ܹs _}U??7n@CC]ig )TUU+322LMMgΜiooxbr>O>:44`hӦMfff,kiiiAܽ{ߟdΘ1C,hiiEDD(<5~h ]v3i֬YD[[[K!AL&sĉAz{{  ***VVVAAAvvvٗUU iQPP`nn?nܸ`gHeΝ;ɓdiO Q2_/**P<\.dZYY)MMM'OV^(X,AQjԨQv?600066@S__KKLvM*brq___*Uť?@oiiz*++Ǎ2GY[[ۭ[,,,ȲfŮeO_L*r\kk< e%'XVB'N QIJr8iOe堞!?˗/J!B!lD!Bje%B!R,+B!`YB!JB!XV"B!5!BfCFid @ 4=4rHoC}֦!L.{5FW^"4xr իRJbjd*_Q(Lwjl%Nw ]eeG3jB!Bje%B!R,+B!`YB!JB!XV"B!5!B++ŋUUU/OyyÇ5ׯ檫70S___TT$4=boL-A7׈TTTԹL&+,,lhhxn o]L**S555=~X9{+5f&vvv\u)0yd:aÆΝ;ޞ۷OvAR^b$hhp8BPӣ@CL&sww722JOOeuuuss@ "77j…" .cnnPXXHYͪ*Hxb333330rse^OOo޽Ubsh@LJ9Ν;h/J7oL.>7.\`bbdbbr24H$555j>`tg+6777777??ƍw^ӧ_~U?ӧ{ԩSEEEk֬iiisuK.hXXXUTTkׯ6ۑ#G̙cgg_s8.^ys={b*h)l֭[I5|&wVΊӬs婩=JMM]|ygg'h:cYbO_>++ӓ㵶nܸb͞=~#-_b 28~1AopppffP(|,Y} ?Ê+.]> 2ݻnii s.))s'FO|}}ZZZu9r\.Ͼ[8wܚ5kt:N_fMFFr9990gΜL?t4pzJ36n72 ///##czOׯSpRyyyOA]VJ$#G|OOOPxɤ;vDDDpcǎ-[,44H.=z.99$''GQb޾}v}̙Cmڴ):: ..nȑ;v2_}v/7 >]&H\\\4;$\nnn111 r-ZD_ںukLLoXAwܹw}ŋ/_^t={U<o۶mYYYʿ#=t_|A. 򳡡akkr`h4*zHT\.9s'޽[XX,]tÆ VR<7kaФ`<[y<ի8N;v,l[[[}}}2f+++'755yxx+V'9^GuQ\\3uT@@N}ӧk>>eQ_>o%W,fddΜ9~ O>:44rӦMfff,kiiiAܽ{ߟdΘ1C,hiiEDD(믿V|W2hy+ yW۷olV*v3fӬYlmm $?!8&&V޼Ϗ# (.. S̾2[9 'BC]UUըQtuu5=4<~|1** ++ lvMM ٌlwlݾ}[BWX\ZZzjݕs8"ǻyfYYAwHv]YY?[>+++;vXIIIrrH$;wnfffQQё#G\$ ###?S6>}7hmm<~[7oܜ;MNN.--o7o,HT{! 믿N4I&9::6ocr1??jҤIcƌZZZX,|6lӧO5ѣGKKK=<<?e2,Q__ZZZ_cooqA|r+Vɳ+W400Xl\|͛"(<|833^rO>wÇ'L5a.i&5j2C@9(˅B!ؙP$V݃qe%BE tzDDtvvR( rcQQΝ;wq@ݻ ٿ[XXGww Q\\TWW?=z4y3;gϞ}ׯ_777ooo'''())Q㕃eeer|ɩ|ld2UP} !HNKK˄{#bܸq %>>~ժUd.#vZxWx!L:㙚9r]K,!wgaaabbrEas//U9 N04DFFR(7|Ĉ999{R(lILL$H$O/ g}6qW_}U_l\ˣtuukjj߿܀B̛7n޼y kkkk322TjXXبQtNDNNNIIǬYq99@MȮB 3 X,3f\.'#W^%|M2U&=zT熆CCt z- 7zh6Moswwoii!b߾}4 e2A7nܘ6m={ ž u1 `ccѣGvI9--- }]Ev3 |}}}ݻwtRE?+V *s;DBED!4 J.^t 6oެhn:`0b %KEDƍR'O߿&tuuܚSRR`߾}T*7n駟xW]ٳg:::_|EOGe0c o.^Ӌ|/;x J]hQss3BDyyy4m֭AL>]GG֭[S7x522n޼2'UJ!`0,XC@D"Ǎٳ .q======#E-0Htȑe˖hFGGe˖,\BTTTܼyS$Z ._&˧NbLLLx<^VV)S=-\СC!Mx)A...kfcc3ϝ;7==WWW2 %<<<&NqeOXre*sr JBC^DD?|||U+NjSNׯwyy9y<++ oo}}}mmZGG9sL2eܸqZZZ!!!۷o߻wo: K[n߯_p%K(:tڵk_~QݻwٳgX,;;Od22ԴUуr@mmʜƲ!7o<==ϳ첲2ũJ <<:##C(RprrRgeeEFFdc& zh:CdddoݺgΜ!&d2.]*===z-_7559::D"SSӕ+W&%%1'?P(*y`5*!!ӧ2`!ͶmE@xb6|I@@@nn.XPPk׮IRիW__qqqAO2B'%%)o;襤/_!пBxrD"Q{)+ XVkLWP@P`+-^0jMiboAcېM5VmIU(Zi ^R*tEVe`FGk߯=9gMÙp?SGg(Ob+FcDDDb \mmmttto2mZoBH@JH@JH@JH;ϭiqΝΝ;jԨfYYY^^^VVVJJʿp֭۵k?ҥK555?ovر !<ϡC.^h6_}UFVVTT/QQQg۷o߿͛SLX,i!Johhhp:5'v;vl6߼yABn^|Y¸уfl2"ө.JOOW[֬YLLLlw}Wj6mVe˖-|۩fvjo\k׮I?ap8ǡCsQ_Ο?_-ZUԗUUUw^vSLyw⋚uѦM۽uuu9993f̰~d:}KKK7mt:ׯ__TTtÑ=l0ͶyoݺշӍ7VWWo߾)>>>;;rucǁX ? B ^lZdddrrdRg.]/lii9|pLLȑ#XZZ;')$$dȐ!z~Ŋ|zºq7nV8pkɒ%cƌjX,z{ں3+++44t…BNW^pˆYfUUUucǁX cZb.]zȑO?˖-8qd2}G:觟~jnn{{Ԑ/33e׮]s:/4hbٲe&MV^|Yrʘ (5s̹sΞ={ԩ7nBOl4|;qs=aaaBn{8+xL8p_~9iҤZo߾} !u:]AAAqq:~(ͽ=jȷhѢ.44C]x(%%%\~oݻw~~~EEEΝ;jkkO:շoؐzht:-FQt:m|{=qtuuf8Pnnu 0fN ExSSS.\m۶3f| ,Pݙ3g>3RUV?>..n޽Ǐ/,,ZIII'OLMM]nɓBc``͐n{ 0[ t QCCEEbȐ!56mڵ)))۶măgLbbY&Bכfvտ(_B !V"<<\R\T\!ą 555u^ۯ]-36q`;\2##cɛ7oj-'yiڋ/_XA|&Y,ݻwի999aĉޛoZZZSRRrrrڲ?'NٳGϙ3ܹsvz7fΜo>!DffK/c??G !Ν+>|p\of~~~FFFJJJ^^رc mc,z<ԩ0aªU-NO>jf9??_mt---k׮  Zrefffzzn/,,0aBaaaʧn뭷#HHHػwҶ &,_\}YRRhۧ6nذ!&&F 4h֭jŋSSS5Mhh ƙ3gN((wǎ{PZgϞh4F(//W… FR \:l0!DYYׇ "wOQr*++3B455 :B˗/ [nuݾ9r}ر#66622r#""B[ZUUe###2޽`0h4,!DZZZXX(W\Q?tw=qɓӦM", "bugs": { "url": "https://github.com/patrikx3/html-pdf/issues" }, "homepage": "https://corifeus.com/html-pdf", "devDependencies": { "corifeus-builder": "^2025.4.123" }, "dependencies": { "cheerio": "^1.0.0", "corifeus-utils": "^2025.4.117", "fs-extra": "^11.3.0", "progress": "^2.0.3" }, "engines": { "node": ">=12.13.0" } }src/000077500000000000000000000000001516500252100116425ustar00rootroot00000000000000src/base.html000066400000000000000000000007061516500252100134450ustar00rootroot00000000000000 ${settings.html} src/header-footer.html000066400000000000000000000026141516500252100152570ustar00rootroot00000000000000 src/index.js000066400000000000000000000177561516500252100133270ustar00rootroot00000000000000const utils = require('corifeus-utils'); const path = require('path'); const fs = require('mz/fs'); const fsExtra = require('fs-extra'); const template = require('lodash/template'); const cleanDeep = require('lodash/cloneDeep'); const cheerio = require('cheerio') const startCase = require('lodash/startCase'); const os = require('os'); const isWin = os.platform() === 'win32'; const binPathAddon = isWin ? '' : 'wkhtmltox/'; let binpath = path.resolve(`${__dirname}/../release/${binPathAddon}bin/wkhtmltopdf`); // if we are in arm64, change the binpath if (os.arch() === 'arm64') { binpath = '/usr/local/bin/wkhtmltopdf-arm64' } const generate = async (options) => { const {settings, saveFile, base, debug, title} = options; let {javascriptDelay} = options; //console.log('options', options) const isFixed = () => { return settings.template.fixedWidth > 0 && settings.template.fixedHeight } const save = settings.hasOwnProperty('save') && settings.save === true; // const consoleDebugOriginal = console.debug; if (debug) { console.debug = console.info; } else { console.debug = () => { }; } let tmpHtmlPath; let tmpPdfPath; let tmpHtmlPathFooter; let tmpHtmlPathHeader; try { const baseHtml = (await fs.readFile(`${__dirname}/base.html`)).toString(); const baseHtmlFooterHeader = (await fs.readFile(`${__dirname}/header-footer.html`)).toString(); options.base = options.base || 'file://' + __dirname; options.css = options.css || (await fs.readFile(`${__dirname}/ng-html-template.css`)).toString(); options.jquery = options.jquery || (await fs.readFile(`${__dirname}/jquery-1.12.4.min.js`)).toString(); let html = template(baseHtml)(options) let $ = cheerio.load(html); const $id = $('[id]'); let header = {} let footer = {}; const defaultHeightMargin = '10mm'; let marginTop = defaultHeightMargin; let marginBottom = defaultHeightMargin; $id.each((index, element) => { const $element = $(element) //const $parent = $element.parent(); // console.debug($parent.html()); const id = $element.attr('id'); if (id.startsWith('p3x-header')) { header[id] = `
${$element.html()}
`; marginTop = $element.data('height') || defaultHeightMargin; $element.remove(); } else if (id.startsWith('p3x-footer')) { footer[id] = `
${$element.html()}
`; marginBottom = $element.data('height') || defaultHeightMargin; $element.remove(); } }) // console.debug('marginTop', marginTop); // console.debug('marginBottom', marginBottom); /* page: frompage: topage: = pages webpage: section: subsection: date: isodate: time: title: doctitle: sitepage: sitepages: */ $('.p3x-header').remove(); $('.p3x-footer').remove(); //$('ng-core-pdf-template-include').remove() //$('ng-html-template-include').remove() html = $.html(); html = html.replace(/\${qr}/g, options.settings.qr) const headerOrFooter = (data, type) => { const lodashTemplateHack = ` item = item.replace(/\\$\{page}/g, vars.page); item = item.replace(/\\$\{pages}/g, vars.pages); item = item.replace(/\\$\{qr}/g, qr); `; const mainsSettings = cleanDeep(options) mainsSettings.settings.html = JSON.stringify(data, null, 4); data = template(baseHtmlFooterHeader)(mainsSettings) data = data.replace('// headerOrFooter //', `var headerOrFooter = ${type};`) data = data.replace('// lodash-template-hack //', lodashTemplateHack) data = data.replace('// qr-hack //', ` var qr = ${JSON.stringify(mainsSettings.settings.qr)}; `) return { mainSettings: mainsSettings, data: data } } const headResult = headerOrFooter(header, 1) // const headerSettings = headResult.mainSettings; header = headResult.data; const footResult = headerOrFooter(footer, 2) // const footerSettings = footResult.mainSettings; footer = footResult.data; // console.debug('headerSettings', headerSettings) // console.debug('footerSettings', footerSettings) // console.debug('html', html) // console.debug('header', header) tmpHtmlPath = await utils.fs.ensureTempFile(html, 'html') tmpHtmlPathHeader = await utils.fs.ensureTempFile(header, 'html') tmpHtmlPathFooter = await utils.fs.ensureTempFile(footer, 'html') tmpPdfPath = await utils.fs.tempFileName('pdf'); //console.debug('header', footer) //console.debug('footer', footer) //console.debug('html', footer) // console.debug('tmpHtmlPath', tmpHtmlPath); // console.debug('tmpPdfPath', tmpPdfPath); // --header-html ${tmpHtmlPath} --footer-html ${tmpHtmlPath} /* -B, --margin-bottom Set the page bottom margin -L, --margin-left Set the page left margin (default 10mm) -R, --margin-right Set the page right margin (default 10mm) -T, --margin-top Set the page top margin */ // // if (javascriptDelay === undefined) { javascriptDelay = 1000; } let addOn = ''; if (isFixed()) { marginTop = '0mm'; marginBottom = '0mm'; addOn += ` --margin-left 0mm --margin-right 0mm --disable-smart-shrinking` } else { if (settings.template.marginLeft !== null && settings.template.marginLeft !== undefined) { addOn += ` --margin-left ${settings.template.marginLeft}mm ` } if (settings.template.marginRight != null && settings.template.marginLeft !== undefined) { addOn += ` --margin-right ${settings.template.marginRight}mm ` } } const pageSize = isFixed() ? `--page-width ${settings.template.fixedWidth + 1}mm --page-height ${settings.template.fixedHeight + 1}mm` : `--page-size ${settings.template.format}`; const generatePdfCommand = `${binpath} --javascript-delay ${javascriptDelay} --copies ${settings.template.copies} --margin-bottom ${marginBottom} --margin-top ${marginTop} ${addOn} ${debug ? '--debug-javascript' : ''} --title ${JSON.stringify(title + ' ' + new Date().toLocaleString())} --orientation ${startCase(settings.template.orientation)} ${pageSize} ${tmpHtmlPath} --header-html ${tmpHtmlPathHeader} --footer-html ${tmpHtmlPathFooter} ${tmpPdfPath}`; console.debug('generatePdfCommand', generatePdfCommand); await utils.childProcess.exec(generatePdfCommand, debug); if (save) { await fsExtra.move(tmpPdfPath, saveFile) } else { return fs.readFile(tmpPdfPath); } } finally { if (tmpHtmlPath !== undefined) { await fsExtra.remove(tmpHtmlPath); } if (tmpHtmlPathFooter !== undefined) { await fsExtra.remove(tmpHtmlPathFooter); } if (tmpHtmlPathHeader !== undefined) { await fsExtra.remove(tmpHtmlPathHeader); } if (!save && tmpPdfPath !== undefined) { await fsExtra.remove(tmpPdfPath); } // console.debug = consoleDebugOriginal; } } module.exports.generate = generate; src/jquery-1.12.4.min.js000066400000000000000000002756131516500252100150400ustar00rootroot00000000000000/*! jQuery v1.12.4 | (c) jQuery Foundation | jquery.org/license */ !function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=a.document,e=c.slice,f=c.concat,g=c.push,h=c.indexOf,i={},j=i.toString,k=i.hasOwnProperty,l={},m="1.12.4",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return e.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:e.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a){return n.each(this,a)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(e.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor()},push:g,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(n.isPlainObject(c)||(b=n.isArray(c)))?(b?(b=!1,f=a&&n.isArray(a)?a:[]):f=a&&n.isPlainObject(a)?a:{},g[d]=n.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray||function(a){return"array"===n.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){var b=a&&a.toString();return!n.isArray(a)&&b-parseFloat(b)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==n.type(a)||a.nodeType||n.isWindow(a))return!1;try{if(a.constructor&&!k.call(a,"constructor")&&!k.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(!l.ownFirst)for(b in a)return k.call(a,b);for(b in a);return void 0===b||k.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?i[j.call(a)]||"object":typeof a},globalEval:function(b){b&&n.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b){var c,d=0;if(s(a)){for(c=a.length;c>d;d++)if(b.call(a[d],d,a[d])===!1)break}else for(d in a)if(b.call(a[d],d,a[d])===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):g.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(h)return h.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,e,g=0,h=[];if(s(a))for(d=a.length;d>g;g++)e=b(a[g],g,c),null!=e&&h.push(e);else for(g in a)e=b(a[g],g,c),null!=e&&h.push(e);return f.apply([],h)},guid:1,proxy:function(a,b){var c,d,f;return"string"==typeof b&&(f=a[b],b=a,a=f),n.isFunction(a)?(c=e.call(arguments,2),d=function(){return a.apply(b||this,c.concat(e.call(arguments)))},d.guid=a.guid=a.guid||n.guid++,d):void 0},now:function(){return+new Date},support:l}),"function"==typeof Symbol&&(n.fn[Symbol.iterator]=c[Symbol.iterator]),n.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(a,b){i["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=!!a&&"length"in a&&a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ga(),z=ga(),A=ga(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+M+"))|)"+L+"*\\]",O=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+N+")*)|.*)\\)|)",P=new RegExp(L+"+","g"),Q=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),R=new RegExp("^"+L+"*,"+L+"*"),S=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),T=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),U=new RegExp(O),V=new RegExp("^"+M+"$"),W={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+O),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,$=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,_=/[+~]/,aa=/'|\\/g,ba=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),ca=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},da=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(ea){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fa(a,b,d,e){var f,h,j,k,l,o,r,s,w=b&&b.ownerDocument,x=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==x&&9!==x&&11!==x)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==x&&(o=$.exec(a)))if(f=o[1]){if(9===x){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(w&&(j=w.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(o[2])return H.apply(d,b.getElementsByTagName(a)),d;if((f=o[3])&&c.getElementsByClassName&&b.getElementsByClassName)return H.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==x)w=b,s=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(aa,"\\$&"):b.setAttribute("id",k=u),r=g(a),h=r.length,l=V.test(k)?"#"+k:"[id='"+k+"']";while(h--)r[h]=l+" "+qa(r[h]);s=r.join(","),w=_.test(a)&&oa(b.parentNode)||b}if(s)try{return H.apply(d,w.querySelectorAll(s)),d}catch(y){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(Q,"$1"),b,d,e)}function ga(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ha(a){return a[u]=!0,a}function ia(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ja(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function ka(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function la(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function na(a){return ha(function(b){return b=+b,ha(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function oa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=fa.support={},f=fa.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fa.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ia(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ia(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Z.test(n.getElementsByClassName),c.getById=ia(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}},d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(ba,ca);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return"undefined"!=typeof b.getElementsByClassName&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=Z.test(n.querySelectorAll))&&(ia(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ia(function(a){var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Z.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ia(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",O)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Z.test(o.compareDocumentPosition),t=b||Z.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return ka(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?ka(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},fa.matches=function(a,b){return fa(a,null,null,b)},fa.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(T,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fa(b,n,null,[a]).length>0},fa.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fa.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fa.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fa.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fa.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fa.selectors={cacheLength:50,createPseudo:ha,match:W,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(ba,ca),a[3]=(a[3]||a[4]||a[5]||"").replace(ba,ca),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fa.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fa.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return W.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&U.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(ba,ca).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fa.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(P," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fa.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ha(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ha(function(a){var b=[],c=[],d=h(a.replace(Q,"$1"));return d[u]?ha(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ha(function(a){return function(b){return fa(a,b).length>0}}),contains:ha(function(a){return a=a.replace(ba,ca),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ha(function(a){return V.test(a||"")||fa.error("unsupported lang: "+a),a=a.replace(ba,ca).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Y.test(a.nodeName)},input:function(a){return X.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:na(function(){return[0]}),last:na(function(a,b){return[b-1]}),eq:na(function(a,b,c){return[0>c?c+b:c]}),even:na(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:na(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:na(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:na(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function ra(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j,k=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(j=b[u]||(b[u]={}),i=j[b.uniqueID]||(j[b.uniqueID]={}),(h=i[d])&&h[0]===w&&h[1]===f)return k[2]=h[2];if(i[d]=k,k[2]=a(b,c,g))return!0}}}function sa(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ta(a,b,c){for(var d=0,e=b.length;e>d;d++)fa(a,b[d],c);return c}function ua(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(c&&!c(f,d,e)||(g.push(f),j&&b.push(h)));return g}function va(a,b,c,d,e,f){return d&&!d[u]&&(d=va(d)),e&&!e[u]&&(e=va(e,f)),ha(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ta(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ua(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ua(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ua(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function wa(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ra(function(a){return a===b},h,!0),l=ra(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[ra(sa(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return va(i>1&&sa(m),i>1&&qa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(Q,"$1"),c,e>i&&wa(a.slice(i,e)),f>e&&wa(a=a.slice(e)),f>e&&qa(a))}m.push(c)}return sa(m)}function xa(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=F.call(i));u=ua(u)}H.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&fa.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ha(f):f}return h=fa.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wa(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xa(e,d)),f.selector=a}return f},i=fa.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(ba,ca),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=W.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(ba,ca),_.test(j[0].type)&&oa(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qa(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,!b||_.test(a)&&oa(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ia(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ia(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ja("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ia(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ja("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ia(function(a){return null==a.getAttribute("disabled")})||ja(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fa}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.uniqueSort=n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},v=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},w=n.expr.match.needsContext,x=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,y=/^.[^:#\[\.,]*$/;function z(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(y.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return n.inArray(a,b)>-1!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;e>b;b++)if(n.contains(d[b],this))return!0}));for(b=0;e>b;b++)n.find(a,d[b],c);return c=this.pushStack(e>1?n.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(z(this,a||[],!1))},not:function(a){return this.pushStack(z(this,a||[],!0))},is:function(a){return!!z(this,"string"==typeof a&&w.test(a)?n(a):a||[],!1).length}});var A,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,C=n.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||A,"string"==typeof a){if(e="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:B.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),x.test(e[1])&&n.isPlainObject(b))for(e in b)n.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}if(f=d.getElementById(e[2]),f&&f.parentNode){if(f.id!==e[2])return A.find(a);this.length=1,this[0]=f}return this.context=d,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof c.ready?c.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};C.prototype=n.fn,A=n(d);var D=/^(?:parents|prev(?:Until|All))/,E={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(a){var b,c=n(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(n.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=w.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?n.inArray(this[0],n(a)):n.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function F(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return u(a,"parentNode")},parentsUntil:function(a,b,c){return u(a,"parentNode",c)},next:function(a){return F(a,"nextSibling")},prev:function(a){return F(a,"previousSibling")},nextAll:function(a){return u(a,"nextSibling")},prevAll:function(a){return u(a,"previousSibling")},nextUntil:function(a,b,c){return u(a,"nextSibling",c)},prevUntil:function(a,b,c){return u(a,"previousSibling",c)},siblings:function(a){return v((a.parentNode||{}).firstChild,a)},children:function(a){return v(a.firstChild)},contents:function(a){return n.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(E[a]||(e=n.uniqueSort(e)),D.test(a)&&(e=e.reverse())),this.pushStack(e)}});var G=/\S+/g;function H(a){var b={};return n.each(a.match(G)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?H(a):n.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),h>=c&&h--}),this},has:function(a){return a?n.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=!0,c||j.disable(),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().progress(c.notify).done(c.resolve).fail(c.reject):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=e.call(arguments),d=c.length,f=1!==d||a&&n.isFunction(a.promise)?d:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?e.call(arguments):d,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(d>1)for(i=new Array(d),j=new Array(d),k=new Array(d);d>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().progress(h(b,j,i)).done(h(b,k,c)).fail(g.reject):--f;return f||g.resolveWith(k,c),g.promise()}});var I;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(I.resolveWith(d,[n]),n.fn.triggerHandler&&(n(d).triggerHandler("ready"),n(d).off("ready"))))}});function J(){d.addEventListener?(d.removeEventListener("DOMContentLoaded",K),a.removeEventListener("load",K)):(d.detachEvent("onreadystatechange",K),a.detachEvent("onload",K))}function K(){(d.addEventListener||"load"===a.event.type||"complete"===d.readyState)&&(J(),n.ready())}n.ready.promise=function(b){if(!I)if(I=n.Deferred(),"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll)a.setTimeout(n.ready);else if(d.addEventListener)d.addEventListener("DOMContentLoaded",K),a.addEventListener("load",K);else{d.attachEvent("onreadystatechange",K),a.attachEvent("onload",K);var c=!1;try{c=null==a.frameElement&&d.documentElement}catch(e){}c&&c.doScroll&&!function f(){if(!n.isReady){try{c.doScroll("left")}catch(b){return a.setTimeout(f,50)}J(),n.ready()}}()}return I.promise(b)},n.ready.promise();var L;for(L in n(l))break;l.ownFirst="0"===L,l.inlineBlockNeedsLayout=!1,n(function(){var a,b,c,e;c=d.getElementsByTagName("body")[0],c&&c.style&&(b=d.createElement("div"),e=d.createElement("div"),e.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(e).appendChild(b),"undefined"!=typeof b.style.zoom&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",l.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(e))}),function(){var a=d.createElement("div");l.deleteExpando=!0;try{delete a.test}catch(b){l.deleteExpando=!1}a=null}();var M=function(a){var b=n.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b},N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(O,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}n.data(a,b,c)}else c=void 0; }return c}function Q(a){var b;for(b in a)if(("data"!==b||!n.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function R(a,b,d,e){if(M(a)){var f,g,h=n.expando,i=a.nodeType,j=i?n.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||n.guid++:h),j[k]||(j[k]=i?{}:{toJSON:n.noop}),"object"!=typeof b&&"function"!=typeof b||(e?j[k]=n.extend(j[k],b):j[k].data=n.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[n.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[n.camelCase(b)])):f=g,f}}function S(a,b,c){if(M(a)){var d,e,f=a.nodeType,g=f?n.cache:a,h=f?a[n.expando]:n.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){n.isArray(b)?b=b.concat(n.map(b,n.camelCase)):b in d?b=[b]:(b=n.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!Q(d):!n.isEmptyObject(d))return}(c||(delete g[h].data,Q(g[h])))&&(f?n.cleanData([a],!0):l.deleteExpando||g!=g.window?delete g[h]:g[h]=void 0)}}}n.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?n.cache[a[n.expando]]:a[n.expando],!!a&&!Q(a)},data:function(a,b,c){return R(a,b,c)},removeData:function(a,b){return S(a,b)},_data:function(a,b,c){return R(a,b,c,!0)},_removeData:function(a,b){return S(a,b,!0)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=n.data(f),1===f.nodeType&&!n._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));n._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){n.data(this,a)}):arguments.length>1?this.each(function(){n.data(this,a,b)}):f?P(f,a,n.data(f,a)):void 0},removeData:function(a){return this.each(function(){n.removeData(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=n._data(a,b),c&&(!d||n.isArray(c)?d=n._data(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return n._data(a,c)||n._data(a,c,{empty:n.Callbacks("once memory").add(function(){n._removeData(a,b+"queue"),n._removeData(a,c)})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthh;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},Z=/^(?:checkbox|radio)$/i,$=/<([\w:-]+)/,_=/^$|\/(?:java|ecma)script/i,aa=/^\s+/,ba="abbr|article|aside|audio|bdi|canvas|data|datalist|details|dialog|figcaption|figure|footer|header|hgroup|main|mark|meter|nav|output|picture|progress|section|summary|template|time|video";function ca(a){var b=ba.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}!function(){var a=d.createElement("div"),b=d.createDocumentFragment(),c=d.createElement("input");a.innerHTML="
a",l.leadingWhitespace=3===a.firstChild.nodeType,l.tbody=!a.getElementsByTagName("tbody").length,l.htmlSerialize=!!a.getElementsByTagName("link").length,l.html5Clone="<:nav>"!==d.createElement("nav").cloneNode(!0).outerHTML,c.type="checkbox",c.checked=!0,b.appendChild(c),l.appendChecked=c.checked,a.innerHTML="",l.noCloneChecked=!!a.cloneNode(!0).lastChild.defaultValue,b.appendChild(a),c=d.createElement("input"),c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),a.appendChild(c),l.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,l.noCloneEvent=!!a.addEventListener,a[n.expando]=1,l.attributes=!a.getAttribute(n.expando)}();var da={option:[1,""],legend:[1,"
","
"],area:[1,"",""],param:[1,"",""],thead:[1,"","
"],tr:[2,"","
"],col:[2,"","
"],td:[3,"","
"],_default:l.htmlSerialize?[0,"",""]:[1,"X
","
"]};da.optgroup=da.option,da.tbody=da.tfoot=da.colgroup=da.caption=da.thead,da.th=da.td;function ea(a,b){var c,d,e=0,f="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||n.nodeName(d,b)?f.push(d):n.merge(f,ea(d,b));return void 0===b||b&&n.nodeName(a,b)?n.merge([a],f):f}function fa(a,b){for(var c,d=0;null!=(c=a[d]);d++)n._data(c,"globalEval",!b||n._data(b[d],"globalEval"))}var ga=/<|&#?\w+;/,ha=/r;r++)if(g=a[r],g||0===g)if("object"===n.type(g))n.merge(q,g.nodeType?[g]:g);else if(ga.test(g)){i=i||p.appendChild(b.createElement("div")),j=($.exec(g)||["",""])[1].toLowerCase(),m=da[j]||da._default,i.innerHTML=m[1]+n.htmlPrefilter(g)+m[2],f=m[0];while(f--)i=i.lastChild;if(!l.leadingWhitespace&&aa.test(g)&&q.push(b.createTextNode(aa.exec(g)[0])),!l.tbody){g="table"!==j||ha.test(g)?""!==m[1]||ha.test(g)?0:i:i.firstChild,f=g&&g.childNodes.length;while(f--)n.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k)}n.merge(q,i.childNodes),i.textContent="";while(i.firstChild)i.removeChild(i.firstChild);i=p.lastChild}else q.push(b.createTextNode(g));i&&p.removeChild(i),l.appendChecked||n.grep(ea(q,"input"),ia),r=0;while(g=q[r++])if(d&&n.inArray(g,d)>-1)e&&e.push(g);else if(h=n.contains(g.ownerDocument,g),i=ea(p.appendChild(g),"script"),h&&fa(i),c){f=0;while(g=i[f++])_.test(g.type||"")&&c.push(g)}return i=null,p}!function(){var b,c,e=d.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(l[b]=c in a)||(e.setAttribute(c,"t"),l[b]=e.attributes[c].expando===!1);e=null}();var ka=/^(?:input|select|textarea)$/i,la=/^key/,ma=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,na=/^(?:focusinfocus|focusoutblur)$/,oa=/^([^.]*)(?:\.(.+)|)/;function pa(){return!0}function qa(){return!1}function ra(){try{return d.activeElement}catch(a){}}function sa(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)sa(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=qa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=n.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return"undefined"==typeof n||a&&n.event.triggered===a.type?void 0:n.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(G)||[""],h=b.length;while(h--)f=oa.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=n.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=n.event.special[o]||{},l=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},i),(m=g[o])||(m=g[o]=[],m.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,l):m.push(l),n.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n.hasData(a)&&n._data(a);if(r&&(k=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=oa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=m.length;while(f--)g=m[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(m.splice(f,1),g.selector&&m.delegateCount--,l.remove&&l.remove.call(a,g));i&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(k)&&(delete r.handle,n._removeData(a,"events"))}},trigger:function(b,c,e,f){var g,h,i,j,l,m,o,p=[e||d],q=k.call(b,"type")?b.type:b,r=k.call(b,"namespace")?b.namespace.split("."):[];if(i=m=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!na.test(q+n.event.triggered)&&(q.indexOf(".")>-1&&(r=q.split("."),q=r.shift(),r.sort()),h=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=r.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:n.makeArray(c,[b]),l=n.event.special[q]||{},f||!l.trigger||l.trigger.apply(e,c)!==!1)){if(!f&&!l.noBubble&&!n.isWindow(e)){for(j=l.delegateType||q,na.test(j+q)||(i=i.parentNode);i;i=i.parentNode)p.push(i),m=i;m===(e.ownerDocument||d)&&p.push(m.defaultView||m.parentWindow||a)}o=0;while((i=p[o++])&&!b.isPropagationStopped())b.type=o>1?j:l.bindType||q,g=(n._data(i,"events")||{})[b.type]&&n._data(i,"handle"),g&&g.apply(i,c),g=h&&i[h],g&&g.apply&&M(i)&&(b.result=g.apply(i,c),b.result===!1&&b.preventDefault());if(b.type=q,!f&&!b.isDefaultPrevented()&&(!l._default||l._default.apply(p.pop(),c)===!1)&&M(e)&&h&&e[q]&&!n.isWindow(e)){m=e[h],m&&(e[h]=null),n.event.triggered=q;try{e[q]()}catch(s){}n.event.triggered=void 0,m&&(e[h]=m)}return b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(n._data(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())a.rnamespace&&!a.rnamespace.test(g.namespace)||(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]","i"),va=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,wa=/\s*$/g,Aa=ca(d),Ba=Aa.appendChild(d.createElement("div"));function Ca(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function Da(a){return a.type=(null!==n.find.attr(a,"type"))+"/"+a.type,a}function Ea(a){var b=ya.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Fa(a,b){if(1===b.nodeType&&n.hasData(a)){var c,d,e,f=n._data(a),g=n._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)n.event.add(b,c,h[c][d])}g.data&&(g.data=n.extend({},g.data))}}function Ga(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!l.noCloneEvent&&b[n.expando]){e=n._data(b);for(d in e.events)n.removeEvent(b,d,e.handle);b.removeAttribute(n.expando)}"script"===c&&b.text!==a.text?(Da(b).text=a.text,Ea(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),l.html5Clone&&a.innerHTML&&!n.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&Z.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:"input"!==c&&"textarea"!==c||(b.defaultValue=a.defaultValue)}}function Ha(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&xa.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),Ha(f,b,c,d)});if(o&&(k=ja(b,a[0].ownerDocument,!1,a,d),e=k.firstChild,1===k.childNodes.length&&(k=e),e||d)){for(i=n.map(ea(k,"script"),Da),h=i.length;o>m;m++)g=k,m!==p&&(g=n.clone(g,!0,!0),h&&n.merge(i,ea(g,"script"))),c.call(a[m],g,m);if(h)for(j=i[i.length-1].ownerDocument,n.map(i,Ea),m=0;h>m;m++)g=i[m],_.test(g.type||"")&&!n._data(g,"globalEval")&&n.contains(j,g)&&(g.src?n._evalUrl&&n._evalUrl(g.src):n.globalEval((g.text||g.textContent||g.innerHTML||"").replace(za,"")));k=e=null}return a}function Ia(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(ea(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&fa(ea(d,"script")),d.parentNode.removeChild(d));return a}n.extend({htmlPrefilter:function(a){return a.replace(va,"<$1>")},clone:function(a,b,c){var d,e,f,g,h,i=n.contains(a.ownerDocument,a);if(l.html5Clone||n.isXMLDoc(a)||!ua.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(Ba.innerHTML=a.outerHTML,Ba.removeChild(f=Ba.firstChild)),!(l.noCloneEvent&&l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(d=ea(f),h=ea(a),g=0;null!=(e=h[g]);++g)d[g]&&Ga(e,d[g]);if(b)if(c)for(h=h||ea(a),d=d||ea(f),g=0;null!=(e=h[g]);g++)Fa(e,d[g]);else Fa(a,f);return d=ea(f,"script"),d.length>0&&fa(d,!i&&ea(a,"script")),d=h=e=null,f},cleanData:function(a,b){for(var d,e,f,g,h=0,i=n.expando,j=n.cache,k=l.attributes,m=n.event.special;null!=(d=a[h]);h++)if((b||M(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)m[e]?n.event.remove(d,e):n.removeEvent(d,e,g.handle);j[f]&&(delete j[f],k||"undefined"==typeof d.removeAttribute?d[i]=void 0:d.removeAttribute(i),c.push(f))}}}),n.fn.extend({domManip:Ha,detach:function(a){return Ia(this,a,!0)},remove:function(a){return Ia(this,a)},text:function(a){return Y(this,function(a){return void 0===a?n.text(this):this.empty().append((this[0]&&this[0].ownerDocument||d).createTextNode(a))},null,a,arguments.length)},append:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.appendChild(a)}})},prepend:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&n.cleanData(ea(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&n.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return Y(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(ta,""):void 0;if("string"==typeof a&&!wa.test(a)&&(l.htmlSerialize||!ua.test(a))&&(l.leadingWhitespace||!aa.test(a))&&!da[($.exec(a)||["",""])[1].toLowerCase()]){a=n.htmlPrefilter(a);try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(ea(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return Ha(this,arguments,function(b){var c=this.parentNode;n.inArray(this,a)<0&&(n.cleanData(ea(this)),c&&c.replaceChild(b,this))},a)}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=0,e=[],f=n(a),h=f.length-1;h>=d;d++)c=d===h?this:this.clone(!0),n(f[d])[b](c),g.apply(e,c.get());return this.pushStack(e)}});var Ja,Ka={HTML:"block",BODY:"block"};function La(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function Ma(a){var b=d,c=Ka[a];return c||(c=La(a,b),"none"!==c&&c||(Ja=(Ja||n("