Automate All The Fonts

Introduction

I recently completed a project that requires automatic installation of fonts in a web application. This could have been painful if not for Font Package Manager (FTPM), a light-weight google fonts front-end system designed by Helder Santana that automates the entire process.

This guide goes over some ways you can integrate FTPM to automate font installation in your own applications. First, we’ll go over the basic concepts involved with FTPM, then we’ll see how to install and integrate FTPM into some practice projects.

Getting Started

FTPM is a command line application built with Node.js; a javascript application runner. This doesn’t mean that your application has to be built with Node.js, it just means that Node.js is required to be installed on any system you’re running the application with FTPM integrated into it.

Install Node.js

There are many ways to install node, each with their own major and minor considerations. Even though it’s beyond the scope of this guide to explain Node.js in detail, there are some great guides that I can link you to, that explain various installation methods for node.js:

Install The FTPM Node PackagE

Depending upon how you installed node.js, you may need root access to install FTPM as a global node package with the following command:

$ npm install ftpm -g

Next, let’s make sure that ftpm installed properly by checking it’s version with the following command:

$ ftpm version
FTPM - Font Package Manager 0.0.18

 

System Fonts

After scouring the Google Fonts website, I came across Lato. Unfortunately, to install this font into my operating system, I have to either download it as a zip file, add it to a SkyFonts service, or send it to a google drive from which I then have to use the OS feature for installing that font. That’s a lot of work, and ain’t nobody got time for that.

Instead, I’m going to use FTPM to install Lato in a matter of seconds:

$ ftpm install lato

lato Font was successfully installed

So, was it really installed that easy? Let’s check in Fireworks. Yep! There it is, right where it would be if installed the tedious old way:

Screen Shot 2014-08-02 at 11.21.26 PM

 

What if I meant to choose Lancelot, instead of LatoFTPM makes that an easy fix:

$ ftpm uninstall lato
Are you sure to uninstall Lato ? (Y/N) Y

Lato Font was successfully uninstalled

$ ftpm install lancelot

lancelot Font was successfully installed

 

Web Fonts

System fonts are relatively simple compared to web fonts, which also require corresponding CSS snippets to be pasted into your stylesheets before they’re available. Fortunately, FTPM also has the ability to generate the CSS required for any Google Font. The CSS can either point to the Google-hosted URL, or it can download the font file so that you can host it on your own servers or CDN.

Output CSS Directly To Terminal

The default mode of operation for FTPM is to write it’s output to a file in either the same directory you ran the command, or in a directory path you provide. If you want to just see output without writing to a file, you can simply append the -s flag to the end of any command and it will return via stdout instead.

Remotely Hosted Font Files

Let’s say that I want to use the font Lato again, but this time I want to use it in a website. To keep things simple and cheap, I’ll let google host the font file this time. All I need is the CSS code to make the font available in my document, which is easy to generate via FTPM:

$ ftpm css lato

css file created: Lato.css

$ ls
Lato.css

Inside of Lato.css, we find everything needed to begin using Lato in our document right away:

@font-face {
font-family: 'Lato';
font-style: normal;
font-weight: 400;
src: local('Lato Regular'), local('Lato-Regular'), url(http://themes.googleusercontent.com/static/fonts/lato/v7/qIIYRU-oROkIk8vfvxw6QvesZW2xOQ-xsNqO47m55DA.woff) format('woff');
}

Now, let’s say we want to generate this css file in a different directory than the one we’re already in. We can do this by passing a 3rd argument, which is the path to where we want the css file to generate:

ftpm css Lato some/dir

css file created: some/dir/Lato.css

The only thing left is to integrate this CSS snippet into our build process or local fonts stylesheet. Super awesome and easy, right?

Locally Hosted Font Files

If your project requires off-line font files to be available, FTPM provides two ways to accomplish this. The first way is automatic, while the second way manual.

Generate CSS with fonts encoded as datauri

FTPM provides a way to encode the font’s binary data directly into your @font-face selector. It works the same as the other commands:

$ ftpm datauri lato

datauri file created: Lato.css

Inside of the newly generated Lato.css, we’ll find all of the normal css calls we expect, plus a giant block of base64 encoded binary information that represents the font file itself:

@font-face {
font-family: 'Lato';
font-style: normal;
font-weight: normal;
src: url('data:application/x-font-woff;base64,d09GRgABAAAAAH6QAA4AAAABPAgAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABRAAAC4AAAEu0ttEdEEdTVUIAAAzEAAAArgAAAQ5WLlQFT1MvMgAADXQAAABcAAAAYNmuqmljbWFwAAAN0AAAAlMAAATmUtSf12dhc3AAABAkAAAADAAAAAwAEgAYZ2x5ZgAAEDAAADuXAABgENE1zeZoZWFkAABLyAAAADYAAAA2/JzyI2hoZWEAAEwAAAAAIAAAACQPtgexaG10eAAATCAAAAKGAAAEVFvYYL1rZXJuAABOqAAAJPgAAGzkbEJqVGxvY2EAAHOgAAACKwAAAizxFAp0bWF4cAAAdcwAAAAgAAAAIAIOB/luYW1lAAB17AAABkIAABF2u00nTnBvc3QAAHwwAAACYAAAA5o69l0VeAHt22tMW+cZwPEnaekaNwTsZVqaJqwNntvSkGTEgUDSknUUHBZVieOkgbpRNnVVlppSWdCMYaqKi4EpH6qKm2gaJq4GzFQRA5ZzUWVMyaZgTSOK0FRN0VQMBqtURkJjH3r2F22WdB8ipUIbZEfRr89z3ve892PX4ETWiIhGdkmurM3KPmSRDbZfFL0lm+VhykVRqJc7OX/Wvvkr+1uyYem/GyleA/4r4L61S/FRWZP7Flci78jCWv1D5oc+i9HEfPLIye9tfNS/7rTmRY3tMd1jn683rI9s0G3wxtnjN8Wf0U7oNn//2sYvfuD5Yf6mLZs6H3/v8U83b9p8ZrNn8z+fOPTEB09MbEna4tjSvzVr6/GtroSMhMCPok++/9SOp24krk08lNigN+rf/bHbkPu0/umvnpl4tj/p3HNvPPf+9tTtnyWX73hmR3Bn0c7Bnf/YlbHLkbIt5druDbstu5t33zIajDbj1T3xe365x5P6SOqh1AupX6a9mFaXFtq7d+/v0l9P70m/kWHIcGV8se/A/tDzrhfOZG7P/NOB0z9teDHws99muV66mX0uJynnmumNg3Xyc1mn5EqcskXilZdFS9Rxnaj8RfREAzEJKTAinV3PwH5JkExilvKJZCvtkgMTzLCggL4KUYIylNNXBSpRBSeqUYNa+q1DPRrQiCY0o4VxWhmjDe3oQCe64EI3Y/WgF270oR8eDGAQQ/DCBz/jDdMuQN8jXI9ijDxIHGesSeYaQph9iGCOPIp5LNJW3a372a1t7MyEGJCEFBiRrdySHJhghgW1lNehHg1oRBOa0U19D3rhRh/64cEABjEEL3wI0GaEOIox8iBRPbf7ObdkiaFUg1jEK79hp66JAUlIgRFpyiFJR4bilP3Kackkz1Mckq/4xUq00baAtoWwk5cQHcQyYi3t61CPBjSiCc1ooa8AcQzj5JPcH8IUbacxg1nMURbFPBa4fppZv8w5XxcNMRZx1Giho0yPr2f8PjO+JfsUP7M+Jc+zL5mU2bjfDgfKubcClaiCE9WoQQtt/MRx4g3a3sQEpmg3jTDjzRBnESFfIC5y/+rc0zclhud/HVcaYizilAMSz35piTrKtyouScA26hIV9pkyAzEJyYyUQjQiSzkn2ciBCQeVv0su9x6m7RGYKTtKtBCPEY8rDfKKclNOkOcpf5ZX6cNKfE35g9gYq4A5FMJOXiQZUoyz3FtCWSm5g/Iy8nLGqEAlquBENWpQS591qEcDGtGEZrQyjza0owOd6IIL3ehBL9zoQz8uMr6HOIBBDMELHy5RdxlXcBV+xh+mPMBYI8RRXKd8jOsg+SRzD2GKdUwjzH7PEGcRIZ+jLop5LFC2SH/PSgxP4jp2TUNcz3tfLDGOM9dCR7keacoFSWeUfZzAfuVjXgE+yeT6APefgo02djhQzv0VqEQVnKhGDVpo6yeOE2/Qx01MYIp20wgz5gxxFhHyBeIi96cyy1zRIBbxjLyN2kRqDEhCsqRICtGINJ76vdSns74Mxc2MrZJJnsdzYIWNPgrooxB28iLFJMUo4bqU6KCsjLyWvupQjwY0ognN+JD+z+MjXEALYwQoH8M4+STtQ5iir2nMYBZzlEUxjwWuNazmjBSgECUowyRCmEMU81gdJ2Vkhg5mdUi00JFvVQKSgG2SIHquk5UMyaanHJhwmLojMJMfJVqIx4gncBbltKlAJargRDVq0M29PeiFG33ox0XaeYgDGMQQvPDhEnWXcQVX4aefEcpHcZ3rIDHM3CNYpC6eFV1jRUHRQkeuRzkqUIkqOFGNGvgR5t4IFsl/whn7JZETMSAJKTAiW/lMcmDCQU7JTLTgFZ7SPOWq5NPaSiygfSFKUIZa2tahHg1oRBOa0U37HvTCjT70w4MBDGIIXvgQoM0IcRRj5EHiJGOEMIco5nFQYr76m2gQizhJZVUZoiVuY52JPCcGJCEFRqQpFp7FXF6Dp3kWt0sm+V0rvr1aVlon+dxvJdrou4B+C2EnL1JSpRglXJcSHZSVkddyfx3q0YBGNKEZLYx1/7vw8Z1dIA8Sx+lnkrFCmGLcaYRZ7wxxFhHyOeqimMcCZavjVbqDGb7DrB4VLXTkeiRzPlmcZTazyoEJZlhQTn0FKlEFJ6pRg1batKEdHehEF1zopm0PeuFGH/rhwQAGMQQvfPDT3zDtRshHEUSYOUawSN3q2N+Nkkj2nz8jpDGDvdTe63P9h9Sfx0e4gABlY3j13++r8d96bz0lCUhkvXquDcQkJCt7JYVoRJbyCCe6Q3JgQq6SJYdpcwRmro8SLcRjxOPKSTlBzKP/fKWIT1Bvi5X8NaVGCoiFOEt9CbEM93pvrmXsOtSjAY1oQjNamVMb2tGBTnTBhW7m0oNeuNGHflxkXA9xAIMYghc+XKLuMq7gKvyMP0xfAcYaoX4U1ykf4zpIPsncQwgjgjlEMb9s7/nqp+DV9Cn44Den1XrXaTk5rVuiJeoo38YfPTFZaeZEXN/6jUQuT5WZaMFxXqtLu0xeiKVdRjFKuC4lOlBGXk5/FahEFZyoRg1aGaMN7ehAJ7rgwv3+dsNPf8O0GyEfRRCTCOHOLjnv7BL5HHVRzOPrXWp9QD7H/JqzTuCsraIhxiJOOc3KTomWqKN8K+tPAGe+9LlGT5mBmISld1aiEVnKe5JNuxyYkKtY5DDtjsDM9VGihXiMeJx7TxDzlPPsRjuvSodYyW2MX8A9hbCTF0mKFOMs95ZQVkruoLyMvJx5VKASVXCiGjW41+ehVsZuQzs60IkuuNBNvz3ohRt96MdFxvcQBzCIIXjhwyXqLuMKrsLP+MP0tfQZivpRXKd86XMU+SRCmGId0wizzzPEWUTI56iLYh4LlC3S3y5OxPfNCXwqBiQhBUZkK3+VHJhghgXHlc/Z3QmxooC2hShBGWppU4d6NKARTWhGN2170As3+tAPDwYwiCF44UOANiPEUYyRB4mTjBHCHKKYx4r5TeYD/NOzlpV5RYNY5LHWfOVLsRJtXNtRhGKUwoEpTGMGs1jARnppFw3W0zKWmK6ckwzyTOIBYp4S4hUbECvxFNc27rHDgSlMYwazWMDy96iTGMkSDWIRp7wrWtjI7SiS16UYpXBwPYVphLlnhjiLCPkCcbn2LJvZ58AEMyzoRg964UYf+uHBAAYxBC98GMEoglieef3/PBGxPAUO0SKLd6BWtKEdHehEF1wYRpj7ItDLOl7Dt1vqyPXIZswcmGCGBeWUV6ASVXCiGjXopr4HvXCjD/3wYACDGIIXPvhpM0IcRRC3Z7NI+cPMxi9ahBHB8j9bK2/V6vdcq/N7rhX9jdHKnt0q+d2N+nq4n9eDjt0yiQ56pLMX/GE3npFMYjllFahEFZyoRg1auMdPHCcuEpetpxX+Kli2dT44T6r6zv3g/oymrkxdmboydWW3V6b+HYnvOkt1luos1Vkuw3ezD0YP6vdYq+B7rNXxmlpRv3tXe1ld30moParnq/b4P+5R/Y7/3q+u+/gZcvnP5kl6LBINYhGvvEePJ+/8ex3yPPbHChv1BdQXwk5exDkVo4TrUqKDsjLyFtqNY5I8hCnKpzGDWcxRFsU8Frheqe9Q6mfY/8JnWPXvYqkrWAErUL85/+6zU7/pU//F/d27pf7LbfWM1VfEXbulviLU/7+q//dXX70P9Pfga+QdiRGNPCaxEifxohWdJIpeDDy/z7KqHbKTle0Wo+yRNNnLk5Ah+3gOnpcXeBKy5CUxyUGeppflsBwRsxyVY5In+fKqWOWk2KRACuVtsUuRFEuJlIpDyqRcKqRSqsQp1VIrH0id1EuDNEqTfCjn5SO5wPn/XlqlTdqlQzqlS1zSI73ilj65KB4ZkEEZEq/45BPxy7AEZFT+KNclyFnekJsyIZMSkimZlrDMyKxEZE6iMi8LsvgvYfNgGngBRce/SupxAAfQ8/n+vF5TM/tDODU2OTU5SZQEgdDSC0hEFBKF2tLWaxYV9SAGIrgcOIKmgTdldDG+1plO5o+O1GC5VKGo2Twq/9RvJrNbxyv70/u7iZOVg9niaWa4coRgY2wsaysNXT1B9NQQ/fWHijOtbKWZVtrZTic76WY3e9kXp6KhqGunrhjnv+JK0Vd5NbcQLecePHvx7sOnL99+/Iq4VMSBQ/4AH3ofwgAAeAFjYGYRYpzAwMrAwFrBKsLAwCgBoZl3MVQwfuFgZuJnZWJiYmFmYl7AwLA+gCHBmwEKSioDfBgcGBh+M7F5/atinMC+jXGVAgPDZJAc81fWmUBKgYEJAIhoD454AYzBhVXFQAAAsFwPPlDcrTgUd3d3d7dlmJsJeI8EEZH4I4BMFEhyhSSFQPCXxH9ERYoVlChVJlWuQqUq1WrUqlOvQaMmzVq0atMu06FTl249evXpNyA3aMiwEaPGjJswacq0GbPmzFuwaMmyFavWrNuwacu2Hbv27Dtw6MixE6fOnLtw6cq1G7fu3Hvw6MmzF6/evPvw6cs3fgmCi5YwwAAAoO/bxvY/F4zNwAALPdhdmFhgd2EnePOiF28qdncnxns5cuUrVKFWk1Yt2nRo16lbrx59+g0aMGTYiDGjxk2aMGvGnHnn4vz2xz+XkjSLEeFBgv8hyFPnXXz4Er76K9GTVy/2fIiU6lGXael+ifZmNfAsSporP2XIVmPJsn0HTpw6dGQqfLNgxZ17N27D9/DDhWTHzlzLUiRTsQKlypQrUaUalRo0qrdozY5YGzZtSbFr27rP9ugYlsEwCOP4+7zazyiopBpprhe+xcKom6RDrZh0+SQMRoNEIulstlhE2EWMLIKBaIKQDkK8vaQbo7CI71w6ib2bmy+/4f9kkNjPvNXM2lLOtqs7RS+GMYkK5lDDIurY8lf+2r/0nFGOClQkppgmqEwVOihxKWbPEffxABe4yONc5YSXxxrxypdXdXamkttDBnlTpzGLBSRYN/XS1EdTBylPI0QddeqP2v9LXeqoMBX6oW290FM91G3d1A1d01WtaTUdSnNp9D0qD3Int3IjDTmXEzmSmVazdR8+w3t4C6+hHSQ0w3HYD7vP5aedKOvgunH/fbva9wfNoSmzAAABAAIAEgAH//8AD3gBrbwHeFtF1j985xb1Xi1ZXZbkJlu2ZMlykW259xqXxIkdx90pTpzei1NIJQWIA4Q0CA4hsEl2qbuQZKnLu8sCy7cLLOwuLGWXdyGhJ9bNN/deWbGdQNj/8/Lg6M7R6Mw5Z2bOmTnzm4vgiBNBsGvECGJD0hA/ko0g8gDmTjWgSoUIFwOrwx7A0zx2q0WEWi0OucfLfEeV7MAsNfvg31WNv6A6KaenNM7g9LqsuHSlANc6fS5TqT8uPVbH1wjmBFyqWL1Uqo9VuQLkUez3Y6mp2Jyx+/ElKrteas2dke6ryUyw29R9SyzuhNikjFh3lkwlU41dS86VGuLU6liDNAc/cbXHSyQiKPLO9cvgTSizEDEjCJBCadjWJCxNinkC6A35klBwBmNxWSvgH5YgNydptUkWudxCfZrlxEjot87Gphkez4ymRieadfVP8FuFAn4b7aRqOWE7B7ERdD1sh4coqXbYIgC1TgZS841H4JZgOqNWz5KAT8efiBHy/XtNVqvpXmC58QT5eREEr4X8AkgQ8sMghzSP1ye3YiKQAORMMQe45VZfAGQCOfUP5pa7U1VKBRtzs6laGF1iiYENVsNUDbVqEwDF3xVznPrqafvUWgA4r+V9KiRiHIdLWAmGmobvGqo1ZlD6lpCw2bfnnYuCNbih+77L+w6cJFss0TibANPJ+21GcFKtIwQsPygq0+tAt8FCTgcPGaI4BHl/uT6afFqtJ/gs/yZQhGBI/3UZHsPqQdKRfKQKQYgk4IASU5ZXy2E/wF7IAZTwbANQs1lUTzgwA0b1ihhQSgAPRQlgQEH9QoSBKyteKklja0VyV9HsAlvR1oE8/7wjvTxUqwqK+g5mJSi0oriMihRzyc7BwqyhkwMCNFoZBAdtuY0plryuQmvoT5asmmRDXlu2QcCfXV7HF9lTkjioXJk2bcPs0h1zC/E75YYXhXUZQYPGbGaTOpWnblXr9MPLy1mPy/Xo5tQSj11CiljOopno665ib6wEXGLFZpUjBFJy/QviXeIkIkccSApSiLTAngsPr7TwcGNDdagJolQYYDmA0rrTit6uJnrJ07Q4p2Co0eVqHCrIXzItZYcuJc9my3NFR7uozxQdul6oj1p/7TOeTj5MpHmahm5UX9zo2j61Op7TsHmGyzVjc0PjllaXq3VLY7A1U6vNbA3mzfBrNP4ZYJlUfnVYKAF1DcNUxeGGxq1Uxa2NwZkZWm3GzGDedKridDhe665/SSwnRpEcpBxqDeWne9PuSMLGlVBDXenBKgJsZkaIwLjCviRAfQBaV68PfoMeqN7Y5sMXELhQTbCNKYVJqTV+o9TitYP77E4OqpDNR4uCIPG0PkZ156xv9tccWlGWXL+oIDsjrXMP+ZqrqtMzeLaAbOkfIEbdDQuyVEAk06YnGUz+Sqc1N6/QTs7M318mVw29P5t8XaTaO6Pf23NgZtGa/gZD5b6q0vVtvmsf5s0psNYVgEf8DyDwP0DNceCm5zgCpk7rqZOZqr+FfBcFLDGio8aBTG0A9GxkRr2PLrJZKDDP72XhIn51eV+ewZDXV17NF/H65qFL3ibnPcGXcEQytmvoHx99snLFpx/+Y3EKWyYSy39FzqX4l5HvghfC/D2og3EJzORhOyiLen1eGYif18ebzB5n9c6H/MGBX8nFkH3K4n98+OmKlZ989I8hF2TPkfCfAPsp/u1YG/os8Q/EhSA0Myi8w+eFfZUMfGqVOglkAzfUIQBy4NwVUVPYCKiGHSo9AB0EW2E+nXg6xqawyh5NfNSq4rKbRfxoKaRJzTKZWQqJMh1fgrW9ILdINIo55Z1KDOULuso7FSaZTfHiC3FGsYoPyXwBivL5kM5XScyOF+m+6ETO4BZ8N8Kn+sKsNEutUnOaWYruAPeQffvIAXAXvpuctpWsA2e2gkeY/ptFXgY1yOeIAUF8E9w/m7KcL4D5qNE4S2pM1BqSjRKtq9hpEIp4RlM0S6iNN0pXqeOMMpXDbXDObptu1wskQhHf5sowy8xOSh5UgNahxxEMRkUoTif4DylDj99Dt9sMY1AtbFc+uV2queapsWb+1NCCgOtfX38I/Za4gHARRE27CmoWHRX59OVoi9BlLldaLcRfTBbYFopkXb+MVxCjtA+Cow6l5xiAk0xGe10gm+pX8Iranc/Nm//rnTU1O389f95zO2uf8s1cGQyubPX5WqnPmT70tWfJ/z3f3HweyJ99Fih+2dz8S/LzZ098sC0zc9sHJ068T32+D/V8FUFwI3EfIkMQm1nq8RHhKQLcVA8BI/Bg1xGegiuOYqWDU3uBNoRsw/6Y6HyXwxZyK8HCq59vo+3VC/nEQB3csDDeRwCKb06FA8tMjUQQwNLCeoTnIaSgLTMODwVddQNZ5NbYOjv4m94yViCWgt/5Z+XHxBbN8npbi1N4HJOW4LNnimpWPUCMwjk/q2bbmiXZ5Fq+0BI9N1seKwX/kzEwd0FOTlvAaPJXJeu1AEg67ulOY8bQ3Otf4klQtrIJshnAeHfC6QGDLpzaagNGGZcWMu2Wws6dcWhBwJrX6t+5q3zjo3MWHRss0VQolQojB8VRUWxBV3n5wnK7sXbP4IwNdTZHwUxKfJeAY9LcEN/Tvq2+YKA2XWo7s2nO4QWZ/s47akxcqQznEvrS3MSUqvbkjPai2A3AHmxND7RmQe9XnTRRIRSJhbZuhz5NgqgQhJrOrARAzSWm3zDK1mZs61/kirP3hzYr9LgMfeqh+zEi9B0KUKJboiK3ghVq6QzsfvIZbZYplBm2EUZCnknUCGRZzVhkJRixETP2GLOw2A65GXvD5ScDwcG2wUcWZ9bseHZezuLORrNXZpC7S2bnly+fluSoXlrtXRwYXIyeJMrtKeS2qODiwzMXPbmpSBPvNVRojXajq2V1Zf7ciniZwoweRij96P5KhbJoaWkmiMEMI5BJzSagmCiPCEW3Nx5aXFCy4Vfz5j62Or9hBhgQpZoOk2L3avLt2MoFxSWL652JNYP5JYtrE7D5/nkPdM85tbakcN0vB2e9tRJ8JtOEdlgdZEXhojpnUt1gsGhhdXxK/Tx6/MyH9s6C8shgARqbDcIT2gctng3wLDEn9JgwybEOnS6MloYU0mhipMaSKL5Wr7XhhzXx8mjpCsgHQ9qhXnY4Do1wlhQjCMFoFI6jjLlZ4YHpiGjGzHr5lDKaP3B2fdGdWxYOBRY90DH7yKLA4sEtdxavOztQtKAyLqV+bmbm3PqUuMoFRUVzAjpz3uzc3Nl5Zl1gjsTff8+s7efs8ScXV2/vzsjo3l69+GS8/dz2Wff0+3c7iudklfUFjcZgX1nWnGIH+nhCcWtKanPQbg82p6a0FidQ/XMA2sMb1gMBlBYTPXPEOiIApq6HbLV75+cVrT3T2/Pw8jx1YraDPC50GU+A8yq71LcdaBIq+nKC8yrjHaV9eSULKmLRCm/fyJxZJ1YWFaw81RNY0N+XTnLkajRT79EmJoHj+fMq4hIq+nMKBsrsyVXdULb10G+vwN5hfOlUzy2dUl4/1ZPfzrNj3JtcPdUmybRpQFJ/IkpN3b1s+dGoxZoqxk+EMXRsqkQA9s+/sEN4EzVe5fSAJehAryYMQA/AAYwlUZA5CqdG41SACwrJ2FX0RbB3nVTD+4gvZhES3oc8rWQ92Efrdjd4AruM7YKjl81ESSos3I3NGHuQ+kMDW8HbW6k58h/Y5ldMmz5qUNsCAA5sh41acADlfyRUSwkaTQLVsgQj/rVeooXtSAiWmP8RTyNdRy4oo9uzXL+Mfg/HViySddNeFQ4znJkEzG51ikEtxvKWnqzqrR3pzsK6YjcuWylwFlYXOi0Z1c7spiybQCO666ZtokbviVUnNSwvr5hfn+31mkce4sfn+f2FzVkJRSlaQ4xBfe3Irfq88bqUpSOqkVpkNoyccNF8Y2FMRROMRY/5SbNWZgDUQhl6UiNg4VZLjJ2qjkMVcEoFG6zsk9uZuip8T1WHMGNbVVZzpj5v/XNr8rucM+UyY5w6pTnf0XLvmyu3/OtM58BTP+w5+Nk0sUDJ0wyQXzz6KPn2u2t8nTtPvzi39fH7h9vSsgf2kqgxJzNFWuFIKl8z3R18uryqtiiutDNj2qM7mpUK8p7ylJjkaF56956m7a/vKOw+/+3eU+T1M81BNzcqWFI3/w8g8TfzXn1sb48/tmroricG5j6xpWK5IrUxDzi4Od3DhSVNjM/mIQhRSu/ZlQhipnYRmBmjPYEbmDHKPGyi9G6tibMltGYL26K5G81+gdyHqv+uUvKVPK0CTCcfkumIkbFVaLG3Nq5QC0fcGehnjkCeCuhp4hEErkimRG8AKZSF7Vbb+IP5DHhl+LlVmeb8roL7j+RveGY5+RLw1i+rjLn/AfJ3AKlbXm0/eIT8gRjxtO9oSutoCCqNJ7bMuHtuJrqLFNoL2/wLNmyPyZ3hXbuU9v3T4R6JS4wykcgIbizNvDFUP7NpAj7Ryfm8+BGJsKL52i/uHTvb0fcbwD1y+J8tOWyZVKiP9ZZ15A49t72ycvOv+nK7m8rtUhArrO9eNHABiI4dA6KLAx0NLTyhXGfSyav3vbFxyxt7K8SmFIuYsjG0B7EN2kOAaOh1IhxEZmgBXMUsEM20NYht3U+TY4dDn6JRhwH+dPdLJcPPDpGPgGlDzw6XoK8dJb9/tocY6fk1+f3R4dfvrLh2tGLP6wigbW2GvKm1OT3JmT/cHKpBnaE30cfHdhEjh8mYg6T6MKyGIBN+w73xGyvzi4rQ+UtUdf7h0EGqNmPHXGhHD4LQA11qpWKnWSrCmInAGDS8BZ2wA8WcGbMbK+zvy9XgSe+SzQdb7iPHnu3reQ6IH562b01/kk8aLZFrAi0r6lf8dntZ5c7nd/FVRgXIUknmh95xZDjktGVPANGFfk1yfnxzNF8Ua9NW7//jxm1/OlAV0YNIZ3Q3W6WUEm74r5tIvzQ2dukShl9Cd4YWw4TSBnQdXf8N+M8BWB+j67vBgYsXYQnAdfyX6CvwST2eQ3DQu2c4TmhHIHWjr2QOPTxvdh/KwlClUpaVGuwptl0AXyz/zaYind6vkyplsQ2bpmNnGLkuQrkyID8LgkAm40sfxpcDelkGkjB66ecGm0rt0Jv/VRVnejD0vtKm1MWr0YyH5Vq5hENK+XKNOar5wgXMBmOnTqMM3aM28bgx0aEWFk/CRf0CqYAIDdI6wKax9+ATAfuJ6lA3GETnjr1x8fhxSGS+Z22Aj1ZYgGIEACMVlIFam7ESgMUB6UpYpqYHwBaIlDyeSgT+KdRp95xCUVKpceqcGpKHYaf2aHVC8AXKikqL1rm12EI172oPrle6NGPrnU5skzZVee1DYoSnHts9uZ9UsEAxTwLQptRAijQJZFqNBAtg6KkOtVE8dglFT3USI0LFtZe1KWrsu6s9Ejnu07gUYxgzhlGk9fpl4u8T9l4sfOJ4xFU37b2Iv8P5de3wYXLs6e7upwF++DAgmFm2eOjZzSUlm58dWhyeaV9dHBi4CIRHjwLhpblzL5FfHR1+Y29V1d43hof/uLeycu8fEZTqY3wdFEZEz2mpNeLjrA4349ISANh0AZzc9spwXtHWlzd8/HH9usbE0Uc+RqNCnxIjOYtPdHU+tDz/UGL1/OAdhxidyD+zqL2Yjs4C0Gsy2iGLwG11i6saLAKDR2LS1WP+Vfm3V7LrV/evTyaHFBogkyluoyyChPX9J9Q3CrFO1petosY0HNFgiuZ3bXtxQ8A1Y1N9jA4cO52mIXdKY2P3/27ahqbE0ZNvoY2hU8SIr3f/jIrhvjK5Mjb0UhyKRCl3xZX35qzfSI+bDLi3eRfaIxsWKBtElGaFM91MejMSr1mRKL6Tq5BInYWzC/M68y2Zs1dtWDU7M3fVuUU7/lmbzlGLlN7aofrCueWxme3wq/bMzMEHB5a/WIY/JRZb4izWrNrkrOr0uERfw8qWWQ+uLOpqbOWLnV6nvbA9M68+3RHnbdzQVrF7frCihJZTB22zFtqGDQvh7Ai+lky5SCYTI8ev8fBvjzPz4AjMWSphPQ3jS6lJwCyBmEcDir7bsnO2+0L1/reGh986UH3BPXvXoay5d0/HesZGVr91b3PzvW+ths+Hpt89Nxvy48B5Vczsb+SU2hMnNrBy7oVRG9wlUvO5ShHYD2P3faEnHyNGtIoxoaUmIaHGgn0l1V/tYWQTIQj7E8gr9ha8qKJqAmdALwuAVXRUa2GBWI6QxRZxQS3LqknXmtmgWiZi8TggjrBq7iHzzpB38bkwFJP7z9Bt66IDFkuOFvtIqqdKnnxzFizIdNCFFBrjFDbxtWfC8uDfQnmiEYQLaIHCfpRLzwkwvpu7RjouKBUcsBRG9Nlcpfgp0gb+/bxKwyHXs/nkdq5aeR79G/qUSBi6qNSgApE0VBNSq0Voi1Ie+oMIenzGjvhH9HqFHtlgqv7o2xdCX53SGvigRBHN52sVoJhr1JxGM0IvohlYm1YeetMaMBgDFtQp0UN+jZAfFWeE9L6TDaA/htsJAEfFAeXYn7DUa6/LscQxaO0Si+HarsMVhmh86WH4u93kB4AkQtTv5FIzkx6AsujBbjAYrRodVUWTH7ANRSrND/+jURfR/Xb9c5iv+oLJV2G03JR1FBVmlxBtKdenC4kLFtNVh8VKx3LI/1WGv9rjzQTjsdw8neEOBsk731XoWO5oRdH3/2DGxWFMjv0V6iKlYhnjjuD2gMWm14goPgS6N0ijOL8Vytki9UWOWgHXOaGVChFoVycoExPIIyIFwwchP8QU12dQsZeA5sAUY58/uHw5850d3wHOEaOUDvJUlZFp5Q9mk+iubqVW9C9iVKm+IhQDlPH7X2IrcTYSh/hhFGdS21gktR05EoNkxjUoQSpFF2H0omRltdZEKGIrGtoyMnsqnMH9/zndNSevJS9ZLYvmmBouLp02PD2JTE2uKswxrDo9N0WbmCXRzorxOxTmYFdh1oJGH169dIU5ziwX+Wtr0jt3Twv9U25NNb2JG1ML4mMzbFJKxoPXr+Aq2CcqxEatft1SRpRxpwVXSgAmYqT0toLaZhw8l3O8r3l3pzdr4fHujjvcXI4d1DZt8rmWlOw+aA22ExdCx0pbgpsurB28sKu2oqDVji2rKSVVQe+rz8zZPSOezk9fv4KtwwkkfqqvpJ0jtXWZstEp5EjEYqu3Mr1sUaUjvmJeQV5DeoxMzU8Nvji/7fjywpwVZ4f6T+RgeXyBxqBJ69zd3LpnthsmfqR5teVFmy+uXvj8DmgmSt8S2PYL4/qaLclTmoIGsMFVkDQJUll0N8yw8yR5J+c20Sof65k57DlLZkOFU5YU7z5oCbbbVlW35W+8CNXdXZvjR1Ov5mysKQX/CqZBfXdR+qK0vi9BfWMQZzjXRGW/DFhE28igUENbm6GVUeuMQ4M5MF80C3U1LC7Jn12ULFUJUs2tfYO+vl9sKMlb+fiiDQdkqMMSbMOJ7KHRufG69t1tycYYqHJspl1efMerm/qf3Fq56a7hQE95HDN2tVCYA8QZxED1tINO0zN6q+lzQdgHemr+S58eVEYfSZmxvqYgAwcmvTGp3KsHNvLv2EwhoVSUdjRtnelStCg4Ud7mvJkbxo5QeadUcj/2Ps6CI70SmcmsnaBXEAMVM5KgE47EwkkpqfAH8CThsE7k+IsJzuE+AJ8Eh5KBPH7I4u/aUV+cYzJntK9ct7I9A5phwYKT831t9QluidllKp/m794F7owvmdU7N8VfbC2ZV1ayqDqe/K23Pl23cO7AQn16Hc7S64JmriSvpmxFY5JUkaSKsUlwriq1uShvZZs/sWx2WnmfUZGfrkpOipfE75hZtmJa0rVL9iSNgGBxoqu8lswEjdYVRKsM3nLnzPnzZzrLvQbavjCbAf3PBUQ5aSZBL01rwpbuO5t3uKd+3bTEs31zq+/IgFPldGG9r2t3Y2gVunloXUVeSEWvXzZCZuuJc9CqasbLy6ecAYLms+8orTC74LQqFFYnzDJYldg3Y3zsGxCI0JKpz2TI7/rL5AGanwKJpfhNXI+oqGl9C/6mwnkVZm80BxWJOTJhVfAWzV17PruvysnjtQvZoLQWz725afpsDNrke2gTA9XyLTYYdmo1Ru8vQHmSQisBuWKD5hi5QxQtlemFYOcRlVFEnhMbDKnniAtj9/OloEmiIIekWp7AqCAFUhl4QCkkdbAFgDwE22iGTxhjNWgl4sLVHEhg+ob4gvE5bik16Wjt1QFsYh+JJvVWv50nTN/R2rNOpyxsnJ1as6Yp6WzvnMTqLOvZjlnBhcnYN7bewuZFs301nih3x55WqheXrTJmzciinlYuL84OCW+MC9i2emLbhqltiYLHB24MDsh8fun0qYOD9l+4CPKSI9apeesAKqd8tD2Sv01ccG5Nfv6acwsWnFtbULD23IK7Dxy4u2Kw3GYrH8SJsm0Xli1/fltp6bbnly+7sK1sbPkr53/5qqdjz/Tpu2d7qLb2kaO4GGczvlJOSz45OkgnxwZKC3HeyXm0rxw83j1rsxtIaVdZsouKDeQoUWFbXt2ev+kiHR0CfjIX//3k6EDrSI5iLzDtMj052UfD7BaY7KNfOJt7vG/cQ3fc4RXw7ORJKigtZXw09s3V8+B/y6aP++mi3Grb2C7KTef6GDc93k/oVbpdup9U4UFCpwvC/dStV+ECz0hPfIFezY4SZXhmronHvlFFH+5fJpdu1sjn9oRW0bwCMPaLYT9lwQLrv9gOoG8LNGK7r8LjLHFHO8tmzZlV5kzt2D2z/3RWPEclk8X6a7M9VR6Ns6xtTluZkzqd73wgA6tSqaIhxCXN6PDY9ebYrKbsomVNqYXeAqFIZ9FFJ2VZ4n0OvSkuMCMvY6DWleOjZEyEuYSniQCFgCEgcIRZYvlozAidaFGobsRj8MLyDSslqofiUJV0OoVJCaTo4gxKjojvSdoo2bIWnStXFCuBXywnj28IHckNiGVi6bSEFKqdldAWL2Df0N6MZur10XvqSPCVgsT+gartGWfpaXCiH+4+E7BvQiuH1pYF0X+P8W3zSlt8nbsb0S20bWVwPv0v5HfrvYRsn1LHAkAkYXNkIoCzohU7yDlHYSeJQ4tjSqzWkhh0p0Q5xo/sJYgvsO+QpDAvOc2LMcKUIpSVXlBC34WxEoBop0pHXOSICI6C/zahkVcqtMQf+VIOIeG+SOjkW8gnd2l5f+PwCILH+ZBv2BKWIN9iyY9B7xQrFOLQoLXAbC4xMvJY0MfUyWq1Sx2qsyDjezXsDahnZF8hh0ifG/sKLLyyBevIRx5RKTjfc6Xv8BTiEzARN+cRuKu4zhZ9zlMrHkDZ4D8iITms04FckZTUhb5Qi8AuvZo8Gd5TiOB8+xK2o4IFGkYEbrLqM9xo3fBT5KxDai0LiLlCgtpFsVl66W7yT4oosA97Wi0KbVQlqtWJanSNREnzLYLyT4N8xfR5X3hv4aU2F2Zsmogfeg+NCxFCAeoIfYB+iY3KraKQfUeZ0CpBP9hJj0/yAxQhQkgu7Bvo1tJoL0O7gUxA7ziY6c9kazH4AR9VVLfpI/7il0X5+UUSuSSuflVdmk6gqGwRyUSqOJ/Z7ItTwceWSoVAl1a3qj4OVgKjObUDNbmpHR2dnsLFDUnVCllXY3rvnI5Ue57bxuXaPLm21I45velNnTJFTXLD4kLPnDkdTF99TI6CQSJEn/PDsf3x9u1E6PvTzHfNUI9ERg8QljcBpFG7mhsa+Rj4B52RgNMw4mahRm6lhQWOQ/ni635aibp4WIlSGIxCMedQOiTXKGSdTbQOtlwPpYM7z07r0NglU1QnUTp0dnSk5tYM1NKyLgaHcRmGUGOOcrLucHShvJ81vDpAv8srBXfaCrtzPd1tjTFMoSuPKqBd04ryB2sSTQ5zQzF8cJodZsanvwPt8xZOjOPtKI3dsM9uxtuxIni7P8FzkGitkzoXcdLnIuQoqndOa2r1eFqbpjlDH+IfUFS6FnN6AtvZfl2Jo/jHcD5DF0fchCSjHQ4NHKP9uwgwaDJMoaJAZGhK670Lc4Jrn1xGo8MkdcPeJI5YJDA7c+I9OdMy7RK+jHBlPcWAxz7ZusJTMVTl4POqh3+1aMEz22uxcwr9Z4KclACfL42KYodYuNGi47JzSsrYj8n16D+PPa9Gv2f552xjxgUMsvgM4mEkAMcMvccN24IRM4KRorfXVuofNgV2oC1lpsADUqvHpN/inX9iftWKWYVRJTwlT6ThK+LcQWdOe64JPGVQkav8qXq/AT3BV+hkY1mWgEt/CT2ijQHErAdXFTsKpsPQQ/BFmmSrMr5qfgH5Q4nM8FX5PCfBrhBFq0VDPIu7MAmE+3AY+RuO4+2IFfHREvscPjUTIX1qaF1KQDXbwcjOdsCVvW/K+dQHZv3IjHsSezP83QkjLfcYLWb9wRkHE3v9/q5EWDZYhq2B2uTk+uyYmOz65OTagBU9Qn01/SCsahiBVXuon97TetAAf8qUk2qp2rVJyXUBqzVQR/sNaNd6JqctN9/sy6AbUkaQQWnmfSCV7L1La+QBhUjBhkAnIOeYNXeTPcBNngYN5OlzzAe6EIvVKEKvWjP0+kwL6pXqxv7c3ddDvgAye/po+9zwAWzGC0gZT0D5grGPyb+P/ZOx46Lrm7CtEA9YgkyfujqInM7fco0Q2TXROkHjQqXSmJ0TlhJeN7gq03Qp1d193dUpVQ0pgdTZe1rh2iGOo5bKYjOm5aRWe3Wpdb3ze+tSG2em5oTXD6EniuYNB7wug6eouiE26MUvU+sJTXy60e5PTkjyFbdm166z2zoKb6wqrDqNM2B3Bt3xie6imblVa6z2vvKMgRpXwBc64S72pxm15ckx6Ul2q1VhKKX1FuGH0EZiFZMHn7rnIKaUv5CZ4tSqWKNMZoxVqeNMMtBDHU2q4wwymYH6NMoIrjqWKsWq1fFUvXj1lDLsiYLrV4gf4BxLQsoQ6KqZFd3UBAP75iwEuHFqisPvcDiUcaYfmJM4nMXhs/gcVrb/ocUdR4dyClee7Jh70J9ESAQiY2pFJsR2JEDUQMAVdNnG6jxtW4493dX1zLEtbR7q+Zmurqep587EukU7jzUPf/LIHGfd0M7jzcMfn+oAfyDYLFZusLRg5cOdXaMr8gt8eSwB7A8nPEKuXFGXIIARl9v1zPHN7R5P++bjz3R1PnOMeYaNtJzYA1EonY9+tqXloT1L65O6Hvs3nYvCctAG4hQSh6RBK/ysXJSXSUWp0IYsmYwjiEpKTbfYIU7U3rx3IMNvT7XpJSIFofKsKPU2ZBjIv7vLYopmZ2k9WAlflqI0qaEnyoqz5KdZUVtOlkwpFfPiU5IsWQ1u8m27tQ+VRkOfY0Eon41swAB2DFFA6RB5mpyBQGIsNr3+orIItyRu/yFDJOI9IBKJhQ8QhC4jeUoZZanBZh1bJZRKyGtRQpGKvMaRcXRCHdj8I19QuAaQiX2JfogQUBLaRRzAWu8JZaIfks3A/JN4Pjwy1qIRN1JKZVbltxlEBH02oWImvVrOrC+tjnGXmQAK/ruB8/F9wHT6oYF+qYb/0QGz5BWuRluz2FeZrJQnFHmG0df+izHzN/IwtnrNylnDGp5BQZ7VgCShaJEyNsNug5k3aAcF/ge0jigYt4MCDYQuEgVL6HlehDnQN4hT4Xk+JcBPjQlFqc3LCguXNaeOf64zeEvj40u8BoO3JD6+1GvAe/OXNqWmNi3NDy5pcrubluRBqtFI1SrzGY2+MqrNTqQG4j7PInxEPBn5CeDjBPQnOYD9ZiyInyW3bSPvBIPbwPIx21aoTx02jNayuiIZOhpozmwCGGwhXERgTEoqAtYDYLpnWpaZgpkdUycrLynVJOAJ/qpJNMmznEl+EUcuxblEsXg7q8vgrUyOLQxkGB5kcVSKygShTvCuxpOWFu32ueJFEgAE/f30mqABW43WQTmyx+WYiiKcjCAEU0TCQIe7LtO0LFgYXzjD5W/IThD7xCI9nyUzJJiMySaJ1JGX3FSc4XL5BRypGIqXz07Ma2B16d0Fseud8qqAr8Gv16SUJEex1EIIEFAYY5WGBJ2oCWR5Uj3JsRIxlDWtOi0ayvpbfAc6jcmFA3onQsUrdNpnomhl/wGR2USMkqRYeEWtpPaA5Ci9B9Tfcg9od1CHq/CT2grO7RvfCubvaiobhDnoFnsc3A7On7d8fDtYUuBOim+yk5/FxhDMWir+uo9QwZgvhwWlVcocsY+7eEL17v3kv+/vfWhJTs6Sh3qJkZGrPuKVqz5sZnbf7trGXV3pNI/V4NfgJPopIr951K5Wx3kNxvTYqKjYdKPBG6dGayeW4Lfw98PkUfAFwqN0VMPfhrMiDp97Ykj3nmZJVCZlfIIqLsueMBg1vdbkr3HFlUFI1ndsLtuslWtlAmJXjaLQa3LHyKUin4ySbTkcnwWsNkRMryx8bBZlOh9MUyjNj+7HBwQiNdfx/tyNZB/2F/BkQjNXlP6b0Mpp4XwKloX+gj5/Nv54zogFPT1YW7SwJjGxZmFR8aLaxMTaRcUN9fUNTfX1xGhCzVAxBWtMqF1cUjxUkxAK9XV29vZ2dvYxbdwNfbgQ+nAZlbPx0Zg0uFuFm1T4lAPkEC2ATSV+nqHjPSAUCcQP8HQZP4DYHyaWN0B3LJUCIkrA1wJCKoVFcpVarSZX3fwF5Xu7EYRYTRxCJIgJsSOuCGZVaU0LY1ZtU8xGwNUU5iYiwGlCPE8krJtH/l6mRHmgcfW1nZPsirNR7PLnIYk8UV+BpcqSTJWAn8cXP/64ROAHb2VOMPoleaKafOpto4po1ZsQBKNlmwllc8JZXfzf+JepIssjwuLdP8/zjN03SYl/35Ae/fvP8UnuCXqFljIqMbEO6rSGOALtXYU0ILNuYe//N/c1tVMkkztlLPj/4t6wjXTfKW7dd+hL/7XzG2ud3Mcokkjeh6E4gcRRnpuILK3wHOBWU+GfWVeGV+5TnAuGGsube38cVWgXiKRscuFUXOFbFKwwsW5peUV/hdeVYj50UpAYSE3OqslMLKRhhQI+LrkJV3j9OoOjY32L2pEY2JdswAUDt6QLJtHfi9CFYOkE+hsRumwS/UqEzptIZzsjdCkYgp/o9U8RhPUOjQ2IQhAqXsvDf+PwPuqDjf4VC4XkWWhy6KNsdPbYWErorXN8m/YAeAf8cZZAL4pAx8A28kGFBlWgl+MKjcxZ8lEaX1cO25/ol5PQ24DsmNSnGEx03+imCf47Zsc/Hmi8LfxOAqF69Z8dk9za1S8VLHkOICM/BcwT1s8eZPkmRQRoTwYbR/dXbLgffbekCybR34vQhSA4gX4lQucx9OuvQeM9S/NJhHQW4H7PtAsRQOj2CXQBQ7/+BaSvovkzdCHG0K9A+nKaP0PnoUzMSIX98Uf6joGZjmo0zFAZxhxabWG8oZLBHKa+gKpphBANjQp99gL+ZwoqBJOda8hNYBoFFcIE6C4adEgDENFDqRT4kJQsIjGIP2T0JNLp8ZoSHq/v0PrQ+Cxan9SwHT+8JV0wif5ehC4E/5lAfyNCl02iX4nQeRQdAcha5F0cw5spTCAXZXOBA3YgF2A/kA+DjjbyMHlvG+gkT7aBFtCMfUs+TD7QDjrI+9pBJ2hpJx8CzQiCQd77IbbsHWhBJ5IeQZfB/AudyLXfGOA+OgemkhEKGtVGbz88dgdQTQCczX22ulOVoa96bnAVjcgaerm+TmEydZ7uGbyWV16I7s860ERhs7Dv87JCCxffNwGEluLaptcCvAOYztHorAzvgmj1vzvIfz2y9c1SbFN8AoXSWvtKydhwEY3TgnZhMEa0fdPDdr//lnTBJPp7EboQPDyBfiVC5zF0BitD88kK8/EjyAQ8nITOctJpGvctEXEXPr4JEQck5JfECPn9zZg4gDwN714shefrJZEYT7l9/NbZHHwi0pw+Cgyg6NGeezqSE3LLcxPSambWpPk7t1bPPhxO3vjK0xIhXDy9oaMh3Zlfle/UpLfkFCyoTjhXuP48cSZr5nx3VmMw1eU2OTzO5KLuqqqV05w3ToBybelF7viM+mBadY43q9hlyvOY4xvWNozZsb/1nloZhPai8SrEKLRXAWUvJB/5K4Lcgr50En0kQn93Ev2OCP0fk+irIvT+SfT3I/S/Ie/DT4yis8Q4JUct0noL5ISKgU7YHT+RyaCwYIBOY9B2B/A7GmGB767b1ZMp0YR24UmVfXmFrdl2iUjGSjY3zen3LHnOF93UvyyzcFH9TbibXy5cvs/sfZT8FYW56az1zymNB89mtxfGscGYMasJJ3JXPjYYp5+xdXqiPkbP5WRTcIyFiwPN6RprUX9J1uLWTDx16VprvJXG5XTPaO4J/Z2wppfEN9XElM0vA19Q+Mi8BTVOhLnLeZTGypRMjV3YTySvIPnmwAXunBC4bPW7ujPCsJnkW6Jr+FJWauap2dJbB60VfJjzXsjAanKnom64nLySMk7G1HjF4GDocVQSHl9f35K+dBJ9JEJ/dxJ9VYTez9Cv/wANtoXm8zKks5D8N5l2YXYGjZ1AX8rQr78B6V6aP0N/9w2G/ndIj6P5M/T+N5l4VXH9K5wgtiAeeoZTmdgc+K+DeTAAmAVXUXkp5ihqYn4RVmLLqRXFDcw5OIoT6h5nl1+mIRTt52tPWjmq2VlzihyBVU8s7zi1piSw+MHezl/kKZbMerKteKg2CZN4yucEyhfCSxY1fXgcW8hSiUsUFhERrRaLApIs10q/kK+U5Kesvvep+Xs+OtIYXHV2cNbJtWWNTdt+k7t1bKd33oMLEmpzbKlNywpq1zU6aV0ZbAI9V2uZuQpQmk7jDGib1YX76tot6Usn0Uci9Hcn0e+I0P8xib4qQu+n6HDOdyK/hnmc9TT2JYHJLYHb3LDqpDI6oENunnhaZJZPLaMfbgUPTVkOh+qnEGgZcq+fx514KYypCXS2lJlFkagazsFHgipQqAHtdBjUEgyp2J3ZQQp3UbHJ61Nl6vP3Boso+EX11vQCGE6nj72SCc6XLqhYXB0LfOVD1bEesroIW1zw3FIKj2Exlek1vy28uJoCZditM6LVoV8cmY1WpXs795Ix8Bb79HvaQ0+4oA3pc3W6L5rDffQNgtyCvnQSfSRCf3cSfVWE3s/QmXNhmk9rmM9HSAQXAmE1CsRK40KkP40KOZtzom8cEtI2PBUSwo4KHS2LAAYLc0j3ZEhIRI5VETn6w3LwyFPEPhjHHUgyghCMzwu/EGPS3SBrxP9Hrgl1srmozjDT3dxVnaWZdGEIzbYp4i2qlHi1QSEcyxm/PfQmhwiq9dXBjC77jYtEV3v4Rkey1p7A5nLQT8YvFYXx8aewT+nYVY8g5ogA7oiUdLT6LxGhNwQjIvKrHGnGKN6tcaJa7q1xojekDmulT3c75WzTf4kehWOEubtEr7Hs4TXWZxEfvY4eO0XhsfMVc7+CPIV7YJ/Zp/YYs9Jn/m50GM6a0FGh6djQ+FWhGTdsMaFrInvAGxpS+EvYFy/RWJzCKa1GwujNmEzAjgiBjaMyP4sIE/T0PLq2COIP598SqJm6v07hMCsY+X49jtQcFzRtpg0t2f7yBgqgOQW7mVUs4hsh1pAWHZ82jt4MY9uwbyZg2xjA3/h5pzKMe7bBlAtBm5FNRSWpG4yC9dHkvdQFm2c0xy5itt9u0IueJS3H0fi2zVphI/oa3S9eOGjL4ZyWUPx90BhiqhmGBxg5KxDfc/YXmoMQsnixsluiZOeHCPSpij49v4C6rxTZW30b2VsJwOsT4stoJL4sBazwnZgrHAdzf2TSbbC0yS8mUKnTsCkXSDiOyHWxEw3k0d3/eri19eF/7T5KNqhzl4329o4uz8tbTn0uy40Mhy+Xbxm4MH5xZOuKL0Pu4TcPVFcfeHN4+M39VVX7qQCPUTGJtQQnoES5SPmPInWnXsMMAArGERFSdWOJ+fWkJWZ2S65TphS46RXmsud83gt3dJ5Ykpu77GT3pt+kpT4TOrljm6Wgt7C4t9ByB9YFl5TxNy8pIwDfoWWDK8eReyvm962l0HvT93R4KPze+VcwIrKIhH1A301hfQvnnDfcNyy6b2iMGt03jeE5ehK5Uf89dLy+CEgm1B+J1H8PuWfCPutKZJ/FAwU0nb5bQI+J7HC7VTSdxgXR7c4Mt3v+Rn22PFJfApon1H86Uv8D5JcT+L8XqS+aVH8kUv89ij8CkH7yCHYF7s+szHmFNc1Dp3nkDBTaF6BTmFQvioFZiR5t0XzxdpazNieR03KvUvknZdS/39EZk2pznVwVCGJIyP4/T83yazNaC9DXxahGXvrwi8916NXw9TcFxzbQ7SH4XrQzfLcCJnHDby6Su9HOZUr5eqlkA0slWPXBQ/he0VqpdC3BBRxk0u/gfGZgiNQgY0AsmHWVQMVaz2cRbGI9S81f9sFDxAiPWMPlETx8DYtLfg/1D5/NoSxkIc3PhO9ECyA/ZfgmvZuZSdQDtWip7M3TrRVZ/AkJfotorS6vD9+ZUNrhM/tj1epYv9nXUZrAyHUe/zX4BfE0fcYyFTH8CxogTC+3GIAwkREpReDAcN734wPgGvE+dRZxq7NBlXv8OKLf5CuJjStNN5nSS+NiS3ymTm+y0+dzJnsJa3xBanQ0DENxBdRbiwriEtPTE53p6cy7dU6By9DiusmeHnaz+sYq4FLEj2sSMi2tN4cSY6Y3WS6cEEQY3CF+Bm0h7kC0U7FREWgUOBrjAHM1yXmx1myvS12CLoBIcQd8Tiac8YnJ1elGvUXf7Kr2U5+0PWbBM7RP6DM0+cRTNHPkCTz6kkCvLNsuNJvB41+JohWN5yUGM3W0JhHAozX6hE2louVzXf8afwz7hkZYRV7YIVWwmOQDRkO9rXSP4Y8Z9NvOkkMrNliCRjbKkWgVQf+vuVKtFPumRB0zthtbFNq47A6BtJzLJ0AgiK7O5UfJhbCN+1Ah9iy6Z/zc9z7MNPY3dA9ErDPfEb+f8B2RehUWme8ysK+Bg/iByvDKmVcQMQf6dKeoVfBpkT66pcbHIXgSQ5RIrmZHY1+7ZrumP1hoIQQsEU+RmOI1mArsfEEUj8rpYh+AIuIjih9goEf0PsxHH6LQJ01ArNe2VE9kSHzkanfNGGcod4YZ8qPCWNDp5OegCLlM8bT9XJ6Xf5QlSumMNtE6p/yo1uqfaYxLP986iT9qNgSl7IYupe2W8qOW+9nKg/t/vokTf8r2KGV7dClymZHL9n8u1+X/XiyALCUP4TLiIuOpvDQyD4MfaiwAfPSxnVROXSSXS81L4xIsFTU1jqjYNJ9dXXW0MDGWXK62+9Jio8hl2N1GF5cnwMCnajUZxdYClzGLbB/7Tq3GuODIhHaSf7QdGgGYBBxMeyLAZi7D3bpdsC02sfBoFdN81bHChDhwx62lCD2cZXQBDZvUqNXgE7aGoqHN9Fx4Hfkb9gT28q3Owl/P7NxaUbmtKzOza1tlxdbOTLR+vFQJS/BbBKPebUU0Ip/TGJDMm9+SYptavt37r3BiKiUUut2bVKJvU0YQNvVuPs5Tk97NNw/Z8H/5fj7b/8H7+zZzdf/F+/uw3ttyvP0r/tYIpT/rFX95t/kempLCd4G/0Pgu5DZArtsAtxBA4QzAP2mcAQJuhhSAf04CEaD6H8ELgOtwhYpZmfdKOCKnzRMOiNMiZ92Ael8MvgiOkWLqlCqATUq6stgMOlcElDqgZp6p1EcAn4AzdFjT3HYP5eetlv2Ktl1Pzt3ym6JsjkQktQVml++7YEKt0VEkDgAAb+qiyH7d8/u8dVkJJo2AI+CUF72+Z/HT25oku7fA77dim9b+bk9FZ3MBV2hPsr/8vE+mV8QqJQZxulT/+98rTTaTks0u6l5Yvf/NTd1ig0QRp6D8ay5WSsRBfQ3UzhtMuNUA1wg+jH6nAqYOv1HBQQNorGnYJRYfJzicUa5E0j+f+4TQKDMKnuTM75eK+F+fX3senybSiOD/IFnICT0O5pWTj+t0oLKE3I/WcITKPlIDPulj7hgTa4lRCjVslkK/PWEGqKVm2pWlJWGTXvCkpC2JFdRum+MrXDXa2Tm6qtDXcUctyTHEgOPt987NnPPYlT17rjw2J3Peve3gRIwB/Eqc17Nn5sDxeenp844PzNzTkycmy6y6zjPq9m1nuta/faix8dDb67vObGtXn+nUWek96Fd4KsTrxVMIbDD+HiB06vbuRlrGMTWJ2+oorWp0Tz/Q6y/d/9cDjXt7Myq2PTvYe8iFgu2r44vT44V8OX95cFl7sYJnDzRlNGxsdpqyphH+6HidqGznq+tfJR/7aqt/4GDb0KsHGlsabfnaF3+n0CgEsmt3+AZPDSXW59oD8+5qyusustFxkr6v0kG/F0RA33I228yAuZOCtj+G1l89DTCsklzPVXC5ci6VoboPe06dYbFkqpk1ToAcJTTw9/yJOClrGqF55kmS/+QzEBr1wyirifobYfBosD5Gn80zuVjl+C0OLpUAb8AfG+tCs0OXsHuv1XJ56JLQDj4H8ghlekKZI3kivQBD0ZBQL6J5HUBbaWwlsz6kkJVjJ2BWlv4uCUHw/4/1OH1HiLnqHbl9E7nKb3hEFweqVTriboEAJ/hc8DihUwyF3r4Lvccc51eJyS5TgSU6XU8US5Q/1CD0nj4DIQkTdoSOQtUIYqNmowib6JDVkRdAobbJ3WueAFNkGzDsX+kzKvN0+ryKVl9g4bTU1GkLA77Wijy9Lq9yRnpgsDE1tXEwVB0T8KVqNKm+QExMjkunc+Wgd8bkJOt0yTkxMYF06qv0AGnJrIiPr8i0wDfTVVSsbk4ZL6c0U+UW1z5DWqHDUegxRiWXuFwQkDL+afRQ9DQD5cPuJo9hrcQovZ8N31SjVKOuBWGRNT/UCCxVnt9nLzRxUI7MENW5QLxRmDdnQ7m1zMDDuAqTJqMp28bB8888KZI0ckU8Yt7Sa1e797U5hZIKgZAFojNnBumx9zhYi/0ZewGJpmYyoDirb5w9sR1MylL+I3RMrvcmWbga62C2p6erzWlIhyW9dWEwrbezzfkT32HTRcoo/qLkJHOsWajUCOa5U2BakjwjhNSFriT4LGKo8HsoJh0jnsEu42vptYsZou8gcopthn9WHwSE+sx3g88WbVh0mXy9DewhU5dtWEZ+DcrbyEZs1+XLW1/eOja29WVmrh1AarBD+J2IFFFG3nLGuvGSMyk9hlkyLVmc5NamKsFTGvnYVYwF/9RgxUpJtOAPMgEh5v1REC1ZCVaRvK2Q538gz6/HeQIlvfi3eSOvMaPvRn09dlWuAU/FpUenKMlirYxmycLUZeRmiusf5Xy4Vv0DXydZee15iuf663fgHOIKQtARFri5wIqFXTyXef/FerBlNdhCrlx9BSg4YoIQcUEU+amMR4g56K+xtLHfjb2GeULPqO0ymV2NFqJFCVaZXUWNMZIcRVDmTi0G8ZoojhMXvv80cp8c+x3xHGKefJ88Eh+pbbweUA4mfKc8Y/GjQ/ZqPQtVyPlR4l8cRTvPkg3hW+XpM+8dDPB4M4VssP+Ae8yItY8dCbdxhTiPGG9qgw5d9B3QCbfWPb339daPlHSe9c6L3bgTcEgyzN7bcM9gUHi1hYhHWXdt8cJb64wOr5F3ge3XH0eEdL6Ajj3MFbheNZ8Qa+Q8vSaQUqMU8AypJR6VCERDm7zF4oHfsr6d9A4I2/0mk+LNHcooKfkX1rdCxe/Ygr9Q2KYvWSp0KevKz7vz8Bp1s0HpoO4wOJTUTQdwSmaIVVGvLpcaYtWqWIOMtVHloEoO1fhNiCllqFMBy4FaWHvH/WwBeJ+ERQZffIzFQ/dB2Sn/T8PsKCeB7iPfkWqV29/kSWUqKevbPws4v+MJOBj1zg5YfznrPUQyfmvA7mAxeSyfG12+VaDjbuTgHHwjVyfY+p/HWTw2qw3HWWgbiw0PUyf8Xkb93kGviQwgks4C2x//D80DY6MoG6O5sHhvsFmzUBaGsdBZLDaUWUd8h5ZBHlQeDSZz3HSWCH6wgPuO3UNVjY1VQ3uI74YWZWZnZ/atZvr1SZYRnGbLb5mrOg2zUpqoROqIMDFKA7NUrIOwpFBQpURqh5DIzP+lxP+Ay2zn7XNVS43uAjvllSmvbS9wG1vGc1WsVY5gMsyABR32XGqTkmtP8PsTwrkqLYuDNrLe+Km7duARqw10qOIDsdbcTE+UxQY61Qk5Dmtuhoe1Ls6WUJKm1xq1CTEJpR4DfGDkroI2v8r6dzinxI7klCJP4OGXqETSbondDF6CL9ZRtp+Tx5pY/35RJPylIupFoQj+S72DDF8NjhGXaLtPmhsbVHy2zKSh5oafuAQnhzlzehBOjmLY/P8PlVN+rwAAAQAAAAEaoCzhj/JfDzz1ABkH0AAAAADKk15wAAAAAMrfLoX/RP6TCLkHLQAAAAkAAgAAAAAAAHgBY2BkYGDf9i+MgYGT6b/Lf2eOnUARFMAoCgCHvwV7eAFtk09IFHEUx7/7+zNuHeYgHmTZg4hYiIVIeBhEJBZZJEIWkWER8SBLiESEiEiIiEh4CFmWbYlFREI6xNBBIqKThER4CJGITtUhRGSTCKkQp+9bZkHThQ/f93sz+968950xV3AN0S82D6gAn3UCJfMQXWTcaUHaziIT20ZJ+Vgk/boJo7w2FnuGEfVSFL7aD38x103ekztkglwVjbhLRkkh9htzgsSkSCo6iWZnAkN2AJeti8BmkbXfEJglMsHzG573EKgcdvQ0um0Gm8YgqOtAIHmnG8NmC5uiNs5rLfBMGUm7gVXWjNcdwbUOXLOPuPmCIc7xSFXCA2qW/Vd0A8DarfqIdUZQ0uvop6ZNI/rVGhL6BJ3GR14B87Hj8B3zJcbrzjjyzBPeO0Dlf3Qr8noMPWof7czPGKDeHsPVh0gaUMvoY9928p347D9Z2z3jJXKDLJDqPbqC+yoHl7Ol1HMM6xXIPQXZveR4rYGe9YknqoQMGWTurfS2HtpUMx7wvMD8tPqLNP9ftMvIVckjxd23y94vou5muCdeiA+nUblwmzWfUH+Qn04bOms+/A+fa1ZUvDiNeCGemU28lr1fhDNKFS8az6IQ/lHAY+oO+WoyuFXz4RzcC7WXzJwBcMUzUZlV+sms1X5PEUgf8dj00Id5dMl80iO+zOfaYt00PPHZtEQavVvi7znlt8R9IaKBNJENIvlFUk9GzC462KPM96rM78ojWUF9gkeyAmtNRXywAfxLCmk1jSVSpBcp5pvtKnrtRwwxHrb3OJ+PHjLIc8HM4DpjTzeFRZ5fENECqZA5IDwxk0hwBwmVA30Od8kh4xRZY3xACJLkFZkiCXKb7PwDzIIHXgAAeAEc0j1I43ccx/H/DQ7aC5rMRxclQ6YjBIqpJR3KKaXcIC4tN9zYwSPgZMAsp0bdbsgTWYT6eD4s4hNOxSp2aBy0lBtdLuepICRwcNOv77yXFx++kW9+5vONouhJFE3eRE8Sg6+j6OnTq6gn6g0/Y394hgPhJcbNCeeD4QqHzElzStOa0eHoOWZ1JPoWc+afwp/4IqziqI7puE7oG78xrwUt6lu/cVbndF5LuqCLuuQbylrRqta0rg1d9m1/+KoVXdU1XdcN3dT3vnBLt3VHd3VP9/VAD/VIj/VET33nX+488yXnzi+06eTSfO0LP/oLtPSzXTzoo5O2dvQrm/uiXqVBpEGMmxPOaRCHzElzStOaURrErNIg5sw0iDSIozqm4zqhNIh5LWhRaRBndU7ntaQLuqg0iGWtaFVrWteG0iDSIK7oqq7pum7optIgbum27uiu7um+HuihHumxnigNIg0iDeK58wttOrk00yDSILaUBvFBH520tdPVBr+how+Y1JSmNaMvwg2O6piO64Qu+TdlrWhVa1rXhr7377d0W3d0V/d0Xw/0UI/0WE/0zG3n5gttOrkkx7rXiFwjco0YNyecc404ZE6aU5rWjHKNmFWuEXNmrhG5RhzVMR3XCeUaMa8FLSrXiLM6p/Na0gVdVK4Ry1rRqta0rg3lGpFrxBVd1TVd1w3dVK4Rt3Rbd3RX93RfD/RQj/RYT5RrRK4RuUY8d36hTSeXZq4RuUZsKdeID/ropK2drl5jf9QTnmGfxnQgTONg+BuTmtK0ZvS78AsOazaUcCT8jjknv4YZ/C2c4ivzpJvfuDmvU04K5hlz0bzk/rJWtKo1rWtDl/3GM3NTr518dE9LP7n5Vu/0Xh/9tK0d/cJ8gF/jJfaGf7DPHNP+MI1xTfjpkPI74HB4h9lwg9+HUxwJr/GHcIU5P510z5TO6Fs3zOqczmtJF3RRl912ar42/+vm//SDfnLnrX72nXfme31w8sX8lT3xbu/YpzGld6R3TGpK05pR/l8cVnpHesecE3pHesdXZnpHese8TjkpmGfMRTO9Y1krWtWa1rWh9I5n5qZeO6F3bCm9463e6b3SO7a1o93eE1FP9Bx7wzT2mWPaH37EgfAO4+F/DuwlJM67i+O4m7y8lYqZ2ceFDpZKTWFqY2JTzELUSBeJMRcTU1yGoljENJWMm7kLXY6jmEQhV68hGG9MLouJYhbjUKqIi9KFoHMFQWHATU9/8918+HGew/n/n+HwCBazk54zNiUrsJLOKktIF0+ryTVYa/ekm1yHTfaHbMYWbMXLtifbmHCFyVexnafXyB3k6+QbFpU3bUfeotJpf8o7nNJFvmuvZQ837OUt+rCfykBJg7yPD5gwyNOHVDz0DFHxcisf+jGAQQxhGIc5PYIjGMVRHMNxfMq7PMPn+AJf4iucwmmcwVmcw3lcwLfcf5G8hMu4gqsYw3d0vscP+BHj3P8TPWvccJ28gQl6Nqknqezzyxxgit8qjRn2JEvOYZ7KIZ1HeIwFnp7o3KqSU/aX/MJ2ZCn5S9uVZeRy+ywd6KTHhfU2IS9YQv5ge/KivZE/Wkw2Ur/EnG7sYVo/etDLHB/6MYBBDGEYJ5kcJ2+RtzllB3cxxcw0ZrhtlpzDPJUC+URzXHrrNlmKZXjaErLSPssqeqqxBmtL3NJNrsN688jz9F+w32WDzcmL1iUbqXTaa9mFPZzSyyl92E9lwFrlfRyk/pDs4ekQlWFOjOAIRnEUx3AcH3Gfx/gEJ3CSW63Rs4lbVPaZf4ApTkxjFnN4yNMjPMaC6tX6xX6RvdiHgziE+3iAh3iEx/Kr4tZJbZ0sJWvrZBlZWycd6KTHhdo6qa2T2jqprZPaOtlIXVsnu7GHaf3oQS9zfOjHAAYxhGGcZHKcvEXe5pQd3MUUM9OY4bZZcg7zVArk4tZ9rff1yHL7STrQSeWMrckKrCypkC7qtdYgmy0mW7AVr9B5FdupXCN3kK+Tb+ED9DLNh34MYBBDGMZpJszgLM7hPC7gW2YukpdwGVdwFWP4js73+AE/Ypyz1unZwAT1JDnDL5PHE3XW6nf7LMstKR3opOJCL/rQjwEMYgjDGMcME/J4ospZbXJcVtmerMYadGMdNtvfsgVb8bIlZDu5A2/aa9lpH+VtJneRe5nfh4M4hMNMjuAIRnEUx3Acp5k/g7M4h/O4gIu4hMu4gqsYwzWmrZM3cJNKkrzPrQ7wEI/wWH5bcurff2QplmF5yTl52hqkg1xpSVllb2Q11qAb67DeOuQFa5MNdk9etG9kIxX9zrIFW7EdO7DTIvI2c7rIPdyklzv0YT+VATsn7+Mg9YdkD0+HqAwzJ4IjGMVRHMNxnOSG09xhBmdxDudxARdxCZdxBVcxhmvMXCdv4CaVJHmLs/a54QGmuHMaM/zOWXIO81QO6TzCYyzoqbv4pZX60spSsr60soysL610oJMeF+pLK/WllfrSSn1ppb60spH6JeZ0Yw/T+tGDXub40I8BDGIIwzjJ5Dh5i7zNKTu4iylmpjHDbbPkHOapFMgnmvOd3vc3WW7/lw50UnFhrbXJJkvKZtuTLdiK7diBXvp96McABjGEYXzKtGf4HF/gS3yFUzjN5BmcxTmcxwVcxCVcxhVcxRjGOfcTM9epbGASM7x1Hk/UWVfcBKlNkKVkbYIsI2sTpAOd9LhQmyC1CVKbILUJUpsgG6lrE2Q39jCtHz3oZY4P/RjAIIYwjJNMjpO3yNucsoO7mGJmGjPcNkvOYZ5KgVzchO+L/wuS1ViDbqzDekvI83QOU4ngCEZxFMdwHB/R/xif4ASu8XRT1hf/1kv9rZen0YFO6mesW1ZglU1IF/Vqcg3W2nnpJtdhk/1PNttZ2YKt2GZN8grTrmI79WvkDvJ18g37Wd4id3Kf2zYg79ivsovKXQvLXnIfPqB/kDyEXm7rQz8GMIghDOMwN4/gCEZxFMdwHJ/yds/wOb7Al/gKp3CaN/qPAztJdSqKAij6p6BjcBDZ0/OX9q2wae1P0klNqkZU7KizUAgEBJ2AZHU2j8sl7+S1DutehzrSsU50auaZ57kudKkrXevGza3udK8H83/2xi8m/Or+N/3uzg/nP5388mV+61FP+kf/6r9zbTUDW83AVjO4eKAPnTzSx3qpV3qtN3qrd3rQo184nWuriS3EFmILsYXYQmwhthBbiC3EFmILsYXYQmwhthBbiC3EFmILsYXYQmwhthBbiC3EFmILsYXYQmwhthBbiC3EFmILsYXYQmwhthBbiC3EFmILsYXYQmwhthBbiC10calXeq03eqt3+sTbn+ozfa4v9KW+0tf+yxt9q+/0vX7Qj/pJ73WoIx3rRKfmn3me60KXutK1btzc6k73eraF2EJsIbYQW4gtxBZiC7GF2EJsIbYQW4gtxBZiC7GF2EJsIbYQW/jPcb27JBiFcRxvTRAvew4iDkKLOFmjqDSKNDk0NiRC1CAlRJe32rvh0GA3r4t4w7ESpxz6C1qSbiD4QtB0+vldPvx4zuE5gg/oE2UCo5rAknSQnegylnSbN+khe7njn/PLAHnRFGXMlGWcmwlM4oq5lilyGlfNq9ygf5ZKDjepbOE25qnvkHexQGWfdw/wEI/QwmM8wRKf6gZv8Q7v8QHLWKFzFWtYxwY2sYVt7GAXe9jHR959oueAyhBH+I5j1LcmP/DTWPKL/I0/VCbcnKKNv5z+6ZWl2TYktQ3JIIYwjBHUv3SZwCRqG5Ipchq1DUltQ1LbkMyQs/TPYR4LeErnMzzHC7zEKyxihf5VrGEdG9jEFraxg13sYR+f6TYgD/GFyoisbUiOcYJTtOWyZtsn501GOshOdJl16TZr0kP2cmfBWNKHmnOpLUkGOA2SQ6jffRkmRzBm9mT8n0N7943qzMMATD3a0cr7L+yKgtKi2EXamIJgJ5EiMAbFMAVFykFII1sR8pCCu6WUvskiKcBcfEvh+CbnUoAdN7GbNBEVRfCMZywRgTQS1ck7T/Po1W++873neI4Afdie/Rzgp8VQPGfP8xw0vyAPyRflS3b4Qh4uHsbLxVy8UtRjxaTq/q+56jprJiPHeuMov7LDDZ+OmdStuWlyy7Pc5h3e5T3e5wOOe64JTnKK05zhLB+588ec4xM+5TM+57x7WOAil7jMFf7g/lflNa5zg5vc4o9W/sSf+QtfuP+XGrfd4Y71u/zNmj3zfZM3PGDDz6rJQ+9GS27zyOStle/4nh2ffkjv//NebcW8P/Hfxa/xOE+wlyd5tngV+znAQQ7xUvFnHC7+iBVes/N13uBNjtttgpOc4jRnOMt5Oy9wkUtc5gpXucZ1bnCTW9y22468yz2TffmNuzrgW77j+/hR9/+443GeYC9PMn+PxH4OcJBDHLdmgpOc4jRnOMt56xe4yCUuc4WrXOM6N7jJLW7bbUfe5Z7JfnJf94w6llhmzqhjzqhjzqjjcZ5gzqhjr3ySOaOO/7U+Z9QxZ9QxZ9SxzyRn1LHCqpZrWq6zZpIz6jjKG+Zjct2nN03GNU5wklOc5gxnmTPq+JDf8jvmjDpuW7PH303e2P+ADY1NttjmW5++43t2Mj+Tn+FmLLHM4eJ1vFz8FSty1bzGEY5yjHU22GSLbXbix2mZiyX+o3gdy/L/im/iKZM++bQ8XBzEK8V2rMhXzauuqrHOBptssc1OHOj2xhLTG8tyemN6Y3pjemN6Y3pjRU5vTG+ssc4Gm2yxzU78pPtbV7HEMv9ZfB17WDWpceTYl3GUY6ybN9jkoatacptHJp3kz7rfYCyxzHyDMd9grMhV8xpHOMox1tlgky222Ymf50+G7djPAQ5yiPNc4CKXuMwVrnKN69zgJre4w13ux3Pdp4sllpmni3m6WJGr5jWOcJRjrLPBJltssxPPp6VriWWmJaYlVuS0xBpHOMox1tlgky222YmDaZmLJeZtjGU5b2M8ZdInn5bzNsa8jbEiXzWvuqrGOhtsssU2O/FCeruWmN5YltMb0xvTG9Mb0xvTGytyemN6Y411Nthki2124sW88/XYwzPFq/iIjznHJ3zKZ3zOlzx07VEczr8kv4/ZM/bwXyb/4dniIPZzgIMc4i1rbvMO7/Ie7/MB561f4CKXuMwVrnKN69zgJrf4wm478i73mSeKR/yQNZfzRC9iDw95FP/m0N5VW7miMABPHUghPYM4xSmN+6STaqEuJuQBZtiDuoDT6O7eN9wYctetEbqhUrFQZTU2xi+Q2LIFgQRcn5mv+VjsMyztfw42wmt9l//EZZZZYZU19jngkCOOOeGUM8654JIrbrjlLvPEez7xnk+iAotOSszec2aZFVZZY8MzTbbYZodd9tj3/IBDjjjmhFPOOOeCS6641m2j3nLHvZsfcr3n7/NvPpmf+JlHPGb2zSezzAqrrPHMM+e84CWveM0b9j0/4JAjjjnhlDPOueCSK97ptlFvee9kl9Wx7b7Ydl9suy+OCuqi8+wvupkl9Sf1Zx7xmPl2X2y7L7bdF9vui233xbb74qjMCqusMfGJgT/yJzZ8YpMtttlhlz2eucM5L3jJK17zhrfu9rNb/cJf+Rt/5x/8k303HHDIEceccMoZ51xwyRXX7vmXnndusnG+5b2TnfrBDf/2Bv7h3v/Fgf86+Y//M9/uS+yzJfbZkugr9dfM9tkyCyz61xLz/a7EPlviN3Ziny2xz5bYZ0vssyVRrE+dp2zo0GSLbXbYZY+3uq3VD+pHnZ/4zBc9X7l3zzf1Ow9OPtT5PluQNEgaJA2SBkmDpEHSIGmQNEgaJA2SBkmDpEHSIGmI6jxlQ4cmW2yzwy57zJMGSYOkQdIgaZA0SBokDZIGSYOkQdIgaZA0NT9KzY9S86PU/Cg1P0rNj9KowKJnSsznR6n5UWp+lJofpeZHafSN82/1+YGxbnWesqFPky222WGXPd7qvFY/qB99yhOf+aLnK/du+6Z+58HJhzqfH9W/cGDvtpJUURiFKwZiwCAFEBIu2SBtUcZR/dvZ/cTnJZ65kAI5AGKMkWas8abrc5ZKXbp9rk5rLePXotKi0qLSotKi0qLSotKi0qLSotKi0qLSotKi0qLSotKi0qLSotKi0qLSotq+wYWN48QLXvGGd3zgE88WlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWlRaVFpUWffv6Bb9+8RP8FD+3CH+BX26fvfiV5/H2gle84R0f+MQ//dVfnv/2/OH1vDtrd9burN1Zu7N2Z+3O2rfx9oJXvOEdH/g86azdWbuzdmct5VnKs5RnKc9SnqU8S3mW8izlWcqzlGcpz1KepTxLeZbyrK0wOL7hgle84R0f+DypPEt5lvIs5VnKs5RnKc9SnqU8S3mW8izlWcqzlOdwq4dbPdzq4VYPt3q41cOtHtt4e8Er3vCOD3yedKuHWz3c6uFWw/fwPXwP38P38D18D9/D9/A9fA/fw/fwPXwP38P38D18D9/D9/A9fM+2sHGceMEr3vCOD3ye5Hv4Hr6H7+F7+B6+h+/he/gevofv4Xv4Hr6H7+F7+B6+h+/he/gevofv4Xv4Hr6H7+F7+B6+h+/he/gevofv4Xv4Hr6H7+F7+B6+Ny+aF82L5kXzonnRvGheNC+aF82L5kXzonnRvGhe9FYYHN9wwSve8I4PfJ7kRfOiedG8aF40L5oXzYvmRfOiedG8aF40L8ZCOBbCsRCOhXAshGMhHAvhWAjHQjgWwrEQjoVwLIRjIRwL4VgIx0I4FsKxEI6FcCyEYyEcC+FYCGfbcfn88Bxv2yffOfF7/AF/xJ/wZ/wFf/X//Ia/4x94LoRjIRwL4VgIx0I42z/4rxP/w//xDb719h2+x3Mh/MhxHdpEAABBFO2XhKARqN2dCfZ6BEsCDXB55hfw3B+Gw3AYDsNhOAyH4TAchsNwGA7DYTgMh+EwHIbDcBgOw2E4DIfhMByGw3AYDsNhOAyH4TAchsNwGA7DYTgMh+EwHIbDcBgOw2E4DIfhMByGw3AYDsNhOAyX4TJchstwGS7DZbgMl+EyXIbLcBkuw2W4DJfhMlyGy3AZLsNluAyX4TJchstwGS7DZbgMl+EyXIbLcBkuw2W4DJfhMlyGy3AZLsNluAyX4TJchstwGS7DY3gMj+ExPIbH8Bgew2N4DI/hMTyGx/AYHsNjeAyP4TE8hsfwGB7DY3gMj+ExPIbH8Bgew2N4DI/hMTyGx/AYHsNjeAyP4TE8hsfwGB7DY3gMj+ExPIbHMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDMAzDsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzLsAzL8PMp9vLsq77pu37ol37rj/7q37MPl/3457iOaQCAYRiA8X+ntgncSYbg05b9LPtZ9rPsZ9nPsp9lP8t+lv0s+1n2s+xn2c+yn2U/y36W/Sz7Wfaz7GfZz7KfZT/Lfpb9LPtZ9rPsZ9nPsp9lP8t+lv0s+1n2s+xn2c+yn2U/yx7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qoR7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpV7qpT7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qoz7qUIc61KEOdahDHepQhzrUoQ51qEMd6lCHOtShDnWoQx3qUIc61KEOdahDHepQhzrUoQ51qEMd6lCXutSlLnWpS13qUpe61KUudalLXepSl7rUpS51qUtd6lKXutSlLnWpS13qUpe61KUudalLXepSl/pzaMc0AMNAAAP5Y2gSvx5ppSPg0dN9ZO9H9n5k70f2fmTvR/Z+ZO9H9n5k70f2fmTvR/Z+ZO9H9n5k70f2Hv2jf/SP/tE/+kf/6B/9o3/0j/7RP/pH/+hf/at/9a/+1b/6V//qX/2rf/Wv/tW/+lf/6j/9p//0n/7Tf/pP/+k//af/9J/+03/6T//px+bF5sXmxebF5sXmxebF5sXmxebFVsXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmxebF5sXmjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN143XjdeN1y1bsmzJsiXLlixbsmzJsiXLlixbsmzJsiXLlixbsmzJsiXLluzPoZ2bQBADURTMP46di5FkjS5kiY5soSIoGtp6fNuSH+VH+VF+lB/lR/lRfpQf5Uf5UX6UH+VH+VF+lB/loByUg3JQDspBOSgH5aAclINyUA7KQTkoB+WgnJSTclJOykk5KSflpJyUk3JSTspJOSkn5aSclItyUS7KRbkoF+WiXJSLclEuykW5KBflolyUi3JTbspNuSk35abclJtyU27KTbkpN+Wm3JSbclMeC5/Hwuex8HksfB4Ln0ezfSx8Hgufx8LnsfB5LHweC5/Hwuex8HksfB4Ln8fC57HweSx8Hgufl/tyX+7Lfbkv9+W+3Jf7cl/uy325L/flvtyX+3Jf7stN3MRN3MRN3MRN3MRN3MRN3MRN3MRN3MRN3MRN3MTN3MzN3MzN3MzN3MzN3MzN3MzN3MzN3MzN3MzN3Mwt3MIt3MIt3MIt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') format('woff');
}

You can copy and paste this snippet as-is into any stylesheet to instantly have access to the font, but keep in mind that this approach significantly increases the size of your stylesheet files, and base64 encoding does not compress with binary data, so your font files will be upwards of 33% larger than if you delivered them on their own.

Download Font .WOFF Files And Host Them Yourself

Finally, FTPM gives you a way to simply get the .woff files when you want them with a simple command:

$ ftpm web Lato

new webfont: Lato.woff

From here you can either use ftpm css Lato to generate the CSS you need, then replace the host with where you’ll end up hosting the font file, or use that CSS as a template in your build process from which you can then generate the proprietary CSS you need for your @font-face.

 

Thank You

Helder Santana wrote this library 2 years ago, and continues to maintain it. His work has saved me lots of time, and will undoubtedly save you time in your font-related projects as well. Make sure you say thanks if you end up using FTPM, and contribute to his GitHub page if you encounter any issues.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s