Connecting Drain Pipes

Sun, Mar 31, 2013

Home DIY, The Handyman

If you think professional plumbers can get the job right for you, think again!

When it comes to your own home, no one is going to be quite as meticulous as the owner – you. When I bought my first condo property, I needed someone to reroute the drain piping as I had wanted to relocate the kitchen sink from its original intended position. I searched through the classifieds in the newspaper and called a number – what looked like professional plumbing service.

So, this is the story.

connecting drain pipes

connecting drain pipes

What you see in the photos above were the final installation by the “professional” plumber. He said this was the best he could do. I disagreed, paid him the RM250 he requested for with much hesitation, and got to thinking how I could fix this in my own DIY way. Looking back, this situation had forced me into learning more about hydraulics and plumbing, and had set me on a path to a lot more DIY work on water pipes and plumbing around the house in the months and years to come.

So, this is what I did to fix it.

Fixing the Problem – Removing Existing Work

connecting drain pipes

1. First thing I did was to remove the plumber’s pipework at the last elbow before the bend
towards the floor trap.

 
connecting drain pipes

2. Next, I had to remove the section of pipe from the concrete into which it was cast into by the plumber, which required a little hacking with a hammer and chisel at the pipe sides, and I used a high speed rotary tool to remove some burrs and smoothen the concrete surface a little, to make way for a new section of pipe which I will connect and lay on my own.

connecting drain pipes

3. This is the new section of pipe which I had connected loosely without glue, just to make sure the lengths are correct, and that the pipe-end would ultimately lead to the floor trap at the correct setting out.

connecting drain pipes

4. This is probably the most important part of the whole exercise to keep the pipe submerged – using 45-deg. elbows instead of the 90-deg. ones used by the plumber. A pair of 45-deg. elbows allowed me to add a short length of pipe between these fittings, which made it possible to submerge the pipe into the floor deeper and slightly earlier along the route. This provided a more gentle slope such that the pipe-end terminates at the floor trap at the correct point – not too low and not too high. Also, a 45-deg. elbow offers lower losses compared to a 90-deg. elbow, allowing for a smoother water flow. The plumber’s work with a pair of 90-deg. elbows is placed next to my work for comparison in this photo.

connecting drain pipes

5. My plan was to have the pipe submerge into the floor deeper at the joints, so that the pipe-end closer to the floor trap could be fully concealed under the floor. To do that, I also had to hack the trench near the pipe joints a little deeper, easily done with a hammer and chisel. The hammer and chisel were also used to hack and remove the leftover tiles within this area. Next, to get the tile prepared…

Replacement Tile

connecting drain pipes

6. Knowing that the tile needed to be replaced, the next step was to cut the tile to fit the space and the floor trap. Fortunately, I was able to obtain a couple of replacement tiles from the developer. Only one tile needed to be replaced. The section next to it will later be concealed beneath the kitchen cabinet, so was ok to remain tileless. Furthermore, that section was also the point of entry for the pipe into the floor.
In the photo above, I used a square and marker pen to draw straight perpendicular lines from the edge of the tile, and drew hatch lines on the wasted area to be discarded.

connecting drain pipes

7. I used another tile as a guide, and clamped the actual tile to be cut below it.

connecting drain pipes

8. I used a special hacksaw designed for cutting tile. Cut tile it did, but very slowly. Too slow in fact!
Later I realised that this hacksaw works very well with ceramic wall tiles,
but not so well for the more hard-wearing floor tiles. Another tool was definitely required…

connecting drain pipes

9. …so I bought a Bosch GDM 12-34 marble cutter. The diamond-coated blade was perfect for cutting anything hard. Buying a circulaw saw to cut a piece of tile probably doesn’t make good economic sense, but I was willing to give it a try. I had not worked on a circular saw prior to this, and didn’t know what to expect, only that it was a very powerful tool and a dangerous one to handle if you’re not careful or do not have much experience. Anyway, I saw this as an opportunity (excuse) to add this new power tool to my collection. As seen in the photo above, the tile was eventually cut, and the circular saw cut it like hot knife on butter!
CAUTION: WORKING WITH POWER TOOLS SUCH AS A HANDHELD CIRCULAR SAW CAN BE DANGEROUS
AND REQUIRES STEADY HANDS, A FIRM GRIP AND GOOD EYE-HAND COORDINATION, EVEN WITH EXPERIENCE. WITHOUT EXPERIENCE, IT IS BEST TO GET SOMEONE WHO IS EXPERIENCED TO DO THIS FOR YOU, OR AT LEAST SHOW YOU ITS PROPER HANDLING AND USAGE.

 
connecting drain pipes

10. I placed the cut tile over the mock-up pipe just to be sure the fit was right. Apparently, the fit was perfect. Now, it’s time to lay the pipe down for good…

Connecting and Laying Down the Pipe

connecting drain pipes

11. Once I was sure the setting out was correct, I proceeded to glue the joints together using a suitable adhesive for uPVC pipes. You will notice the blue marker lines on each section – a good practice for measuring and twisting the pipework correctly during the jointing process – something which I had learned in a few plumbing books. A good solid joint is important to prevent leaks in the future, which you do not want to be concerned with, not when these pipes will be concealed beneath kitchen cabinets later!

connecting drain pipes

12. Once the glue has set, it was time to pour concrete into the hollow of the floor. I used
a scraper (with red handle) to spread the wet concrete but this is probably best done with a trowel. I didn’t have a trowel handy then – but the scraper worked just as well since the area being worked on was small.

connecting drain pipes

13. While the concrete was still wet, the tile was laid above it and pressed into place. I also used some other tiles and a box of sand to keep the pressure on the laid tile. Some of the excess concrete was squeezed into the adjacent tile area to the right as seen in the photo above. Some extra concrete was added to smoothen out this untiled area.

connecting drain pipes

14. Close-up, this was how the tile was positioned with respect to the floor trap and other adjacent tiles. A plastic tile spacer is conventionally used for tile-laying, but since only one tile was laid, a good eye is all that is usually required. Make sure that the spacing between tiles is consistent. After that, just wait for the concrete to dry. But that is not the end of it. Not yet…

Wedges for Gradient

connecting drain pipes

15. After the pipe was laid and the concrete dried, it was time to get the gradient right. I made my own wedges out of quite thin and small pieces of wood, taped together by yellow duct tape as shown above.

connecting drain pipes

16. This is a close-up of the wedge. A channel was created on the top of the wedge using my high speed rotary tool (used earlier to smoothen concrete in Photo 2 above), using a small drum sander (not shown). The wedge will help to hold the pipe in place. The number and thickness of pieces to be joined together is determined by the height of pipe to be raised, which for internal sanitary plumbing, could be as gentle as 1:100 or 1:150.

connecting drain pipes

17. A single-piece wedge was placed at the lowest end of the entire pipe length, near the elbow for adequate support, especially during water movement. Even though this was a single piece, I had taped it around to match the other multiple-piece ones for consistency. You cannot see it in the photo above, but a channel was also made on the wedge to keep the pipe in place.

connecting drain pipes

18. The other two wedges (higher and highest) were placed on the other elbows earlier along the pipe route. The drain water inlet point nearest to the sink location should be the highest, of course. Now, we are done and all that is needed is a set of kitchen cabinets and a good sink to go above it all.

Conclusion and Final Comparison

connecting drain pipes

This was the end result of my endeavour to correct the plumber’s work. Sure, it took a lot more time and effort, but I’d like to think it was a better job than…

connecting drain pipes

…the plumber’s final installation. He could probably have done better if he were paid more, and had more time and better power tools and resources. Maybe…

 

One UP for DIY!

Power and Manual Tools for Tile Cutting


High Speed Rotary Tool for Grinding and Shaping


Hacksaw for uPVC and PVC Pipe Cutting


PVC Cement and Glue for Pipe Jointing


, , , , ,

Leave a Reply

avatar

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  Subscribe  
Notify of
Do NOT follow this link or you will be banned from the site!
PHVsPjxsaT48c3Ryb25nPndvb19hYm91dDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2Fib3V0bGluazwvc3Ryb25nPiAtICM8L2xpPjxsaT48c3Ryb25nPndvb19hZF8zMDBfYWRzZW5zZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzMwMF9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTMwMHgyNTAtMi5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF8zMDBfdXJsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMTwvc3Ryb25nPiAtIGh0dHBzOi8vcm92ZXIuZWJheS5jb20vYXIvMS83MTEtNTMyMDAtMTkyNTUtMjAwLzE/Y2FtcGlkPTUzMzc3MjgxNTkmdG9vbGlkPTcxMTUzMjAwMTkyNTUyMDAmY3VzdG9taWQ9Jm1wdD1bQ0FDSEVCVVNURVJdJmFkdHlwZT0xJnNpemU9MTI1eDEyNSZtcHZjPTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzI8L3N0cm9uZz4gLSBodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vYWRzL2FtYXpvbi1oYXJyeS1wb3R0ZXJfMTI1eDEyNS5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8zPC9zdHJvbmc+IC0gaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL2Fkcy9hbWF6b24tb3V0ZG9vci0xMjV4MTI1LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzQ8L3N0cm9uZz4gLSBodHRwczovL3VhLnNpdGVncm91bmQuY29tL2ltZy9iYW5uZXJzL2dlbmVyYWwvY29tZm9ydC8xMjV4MTI1LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzU8L3N0cm9uZz4gLSBodHRwczovL3d3dy5sZWRnZXJ3YWxsZXQuY29tL2ltYWdlcy9wcm9tby9sZWRnZXItMTI1eDEyNS0wMS5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV82PC9zdHJvbmc+IC0gaHR0cHM6Ly9yb3Zlci5lYmF5LmNvbS9hci8xLzcxMS01MzIwMC0xOTI1NS0yMDYvMT9jYW1waWQ9NTMzNzcyODE1OSZ0b29saWQ9NzExNTMyMDAxOTI1NTIwNiZjdXN0b21pZD0mbXB0PVtDQUNIRUJVU1RFUl0mYWR0eXBlPTEmc2l6ZT0xMjV4MTI1Jm1wdmM9PC9saT48bGk+PHN0cm9uZz53b29fYWRfcGFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8xPC9zdHJvbmc+IC0gaHR0cHM6Ly9yb3Zlci5lYmF5LmNvbS9yb3Zlci8xLzcxMS01MzIwMC0xOTI1NS0yMDAvMT9jYW1waWQ9NTMzNzcyODE1OSZ0b29saWQ9NzExNTMyMDAxOTI1NTIwMCZjdXN0b21pZD0mbXB2Yz08L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMjwvc3Ryb25nPiAtIGh0dHBzOi8vcmNtLW5hLmFtYXpvbi1hZHN5c3RlbS5jb20vZS9jbT9vPTEmcD0yMCZsPXVyMSZjYXRlZ29yeT1oYXJyeXBvdHRlciZiYW5uZXI9MFFCS1FZMTFQOTFQQVhQU0Y2UjImZj1pZnImbGlua0lEPTkxNTg0M2IzNTZiMzgxZDBkYjQwMDYyZmY3YmZlNDViJnQ9bW9jYmQtMjAmdHJhY2tpbmdfaWQ9bW9jYmQtMjA8L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMzwvc3Ryb25nPiAtIGh0dHBzOi8vcmNtLW5hLmFtYXpvbi1hZHN5c3RlbS5jb20vZS9jbT90PWh0dHB3d3dkZXZvbmItMjAmbz0xJnA9MjEmbD11cjEmY2F0ZWdvcnk9b3V0ZG9vcnJlY3JlYXRpb24mYmFubmVyPTE2NEpSRDdONEMyVktUQVpERkcyJmY9aWZyJmxpbmtJRD01SEZZWFIzSkpaRFlLT0hFPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzQ8L3N0cm9uZz4gLSBodHRwczovL3d3dy5zaXRlZ3JvdW5kLmNvbS9pbmRleC5odG0/YWZjb2RlPTc3M2U5MTAxMDBlNTY3ODIyNzBkOGIxMTFhMzVmMTUwPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzU8L3N0cm9uZz4gLSBodHRwczovL3d3dy5sZWRnZXJ3YWxsZXQuY29tL3IvYmVhYTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF82PC9zdHJvbmc+IC0gaHR0cHM6Ly9yb3Zlci5lYmF5LmNvbS9yb3Zlci8xLzcxMS01MzIwMC0xOTI1NS0yMDYvMT9jYW1waWQ9NTMzNzcyODE1OSZ0b29saWQ9NzExNTMyMDAxOTI1NTIwNiZjdXN0b21pZD0mbXB2Yz08L2xpPjxsaT48c3Ryb25nPndvb19hZHNfcm90YXRlPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19hbHRfc3R5bGVzaGVldDwvc3Ryb25nPiAtIDMtZ3JleS5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19hcmNoaXZlczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FzaWRlc19jYXRlZ29yeTwvc3Ryb25nPiAtIFNlbGVjdCBhIGNhdGVnb3J5OjwvbGk+PGxpPjxzdHJvbmc+d29vX2F1dGhvcjwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYXV0b19pbWc8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NlbnRlcmVkPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jb250ZW50X2ZlYXQ8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2NvbnRlbnRfbGVmdDwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fY3VzdG9tX2Nzczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2N1c3RvbV9mYXZpY29uPC9zdHJvbmc+IC0gaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMjYtZmF2aWNvbi1kYi5wbmc8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fc2VvX3RlbXBsYXRlPC9zdHJvbmc+IC0gYTozOntpOjA7YTo1OntzOjQ6Im5hbWUiO3M6MTA6InNlb19pbmZvXzEiO3M6Mzoic3RkIjtzOjA6IiI7czo1OiJsYWJlbCI7czo0OiJTRU8gIjtzOjQ6InR5cGUiO3M6NDoiaW5mbyI7czo0OiJkZXNjIjtzOjE5MDoiQWRkaXRpb25hbCBTRU8gY3VzdG9tIGZpZWxkcyBhdmFpbGFibGU6IDxzdHJvbmc+Q3VzdG9tIFBhZ2UgVGl0bGVzPC9zdHJvbmc+LiBHbyB0byA8YSBocmVmPSJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtYWRtaW4vYWRtaW4ucGhwP3BhZ2U9d29vdGhlbWVzX3NlbyI+U0VPIFNldHRpbmdzPC9hPiBwYWdlIHRvIGFjdGl2YXRlLiI7fWk6MTthOjU6e3M6NDoibmFtZSI7czoxMDoic2VvX2ZvbGxvdyI7czozOiJzdGQiO3M6NToiZmFsc2UiO3M6NToibGFiZWwiO3M6MTY6IlNFTyAtIFNldCBmb2xsb3ciO3M6NDoidHlwZSI7czo4OiJjaGVja2JveCI7czo0OiJkZXNjIjtzOjc3OiJNYWtlIGxpbmtzIGZyb20gdGhpcyBwb3N0L3BhZ2UgPHN0cm9uZz5mb2xsb3dhYmxlPC9zdHJvbmc+IGJ5IHNlYXJjaCBlbmdpbmVzLiI7fWk6MjthOjU6e3M6NDoibmFtZSI7czoxMToic2VvX25vaW5kZXgiO3M6Mzoic3RkIjtzOjU6ImZhbHNlIjtzOjU6ImxhYmVsIjtzOjEzOiJTRU8gLSBOb2luZGV4IjtzOjQ6InR5cGUiO3M6ODoiY2hlY2tib3giO3M6NDoiZGVzYyI7czo1NjoiU2V0IHRoZSBQYWdlL1Bvc3QgdG8gbm90IGJlIGluZGV4ZWQgYnkgYSBzZWFyY2ggZW5naW5lcy4iO319PC9saT48bGk+PHN0cm9uZz53b29fZmVhdF9pbWFnZV9oZWlnaHQ8L3N0cm9uZz4gLSAxOTU8L2xpPjxsaT48c3Ryb25nPndvb19mZWF0X2ltYWdlX3dpZHRoPC9zdHJvbmc+IC0gNTQwPC9saT48bGk+PHN0cm9uZz53b29fZmVhdHVyZWRfY2F0ZWdvcnk8L3N0cm9uZz4gLSBTZWxlY3QgYSBjYXRlZ29yeTo8L2xpPjxsaT48c3Ryb25nPndvb19mZWF0dXJlZF9wb3N0czwvc3Ryb25nPiAtIFNlbGVjdCBhIG51bWJlcjo8L2xpPjxsaT48c3Ryb25nPndvb19mZWVkYnVybmVyX2lkPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl91cmw8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19mbGlja3JfZW50cmllczwvc3Ryb25nPiAtIFNlbGVjdCBhIE51bWJlcjo8L2xpPjxsaT48c3Ryb25nPndvb19mbGlja3JfaWQ8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19mbGlja3JfdXJsPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZnJhbWV3b3JrX3RlbXBsYXRlPC9zdHJvbmc+IC0gYToxNzp7aTowO2E6Mzp7czo0OiJuYW1lIjtzOjE4OiJGcmFtZXdvcmsgU2V0dGluZ3MiO3M6NDoiaWNvbiI7czo3OiJnZW5lcmFsIjtzOjQ6InR5cGUiO3M6NzoiaGVhZGluZyI7fWk6MTthOjY6e3M6NDoibmFtZSI7czoyMToiU3VwZXIgVXNlciAodXNlcm5hbWUpIjtzOjQ6ImRlc2MiO3M6MjQ1OiJFbnRlciB5b3VyIDxzdHJvbmc+dXNlcm5hbWU8L3N0cm9uZz4gdG8gaGlkZSB0aGUgRnJhbWV3b3JrIFNldHRpbmdzIGFuZCBVcGRhdGUgRnJhbWV3b3JrIGZyb20gb3RoZXIgdXNlcnMuIENhbiBiZSByZXNldCBmcm9tIHRoZSA8YSBocmVmPSdodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtYWRtaW4vb3B0aW9ucy5waHAnPldQIG9wdGlvbnMgcGFnZTwvYT4gdW5kZXIgPGVtPmZyYW1ld29ya193b29fc3VwZXJfdXNlcjwvZW0+LiI7czoyOiJpZCI7czoyNDoiZnJhbWV3b3JrX3dvb19zdXBlcl91c2VyIjtzOjM6InN0ZCI7czowOiIiO3M6NToiY2xhc3MiO3M6NDoidGV4dCI7czo0OiJ0eXBlIjtzOjQ6InRleHQiO31pOjI7YTo1OntzOjQ6Im5hbWUiO3M6MjE6IkRpc2FibGUgU0VPIE1lbnUgSXRlbSI7czo0OiJkZXNjIjtzOjYxOiJEaXNhYmxlIHRoZSA8c3Ryb25nPlNFTzwvc3Ryb25nPiBtZW51IGl0ZW0gaW4gdGhlIHRoZW1lIG1lbnUuIjtzOjI6ImlkIjtzOjI1OiJmcmFtZXdvcmtfd29vX3Nlb19kaXNhYmxlIjtzOjM6InN0ZCI7czowOiIiO3M6NDoidHlwZSI7czo4OiJjaGVja2JveCI7fWk6MzthOjU6e3M6NDoibmFtZSI7czozMzoiRGlzYWJsZSBTaWRlYmFyIE1hbmFnZXIgTWVudSBJdGVtIjtzOjQ6ImRlc2MiO3M6NzM6IkRpc2FibGUgdGhlIDxzdHJvbmc+U2lkZWJhciBNYW5hZ2VyPC9zdHJvbmc+IG1lbnUgaXRlbSBpbiB0aGUgdGhlbWUgbWVudS4iO3M6MjoiaWQiO3M6MjU6ImZyYW1ld29ya193b29fc2JtX2Rpc2FibGUiO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjg6ImNoZWNrYm94Ijt9aTo0O2E6NTp7czo0OiJuYW1lIjtzOjI4OiJEaXNhYmxlIEJ1eSBUaGVtZXMgTWVudSBJdGVtIjtzOjQ6ImRlc2MiO3M6Njg6IkRpc2FibGUgdGhlIDxzdHJvbmc+QnV5IFRoZW1lczwvc3Ryb25nPiBtZW51IGl0ZW0gaW4gdGhlIHRoZW1lIG1lbnUuIjtzOjI6ImlkIjtzOjMyOiJmcmFtZXdvcmtfd29vX2J1eV90aGVtZXNfZGlzYWJsZSI7czozOiJzdGQiO3M6MDoiIjtzOjQ6InR5cGUiO3M6ODoiY2hlY2tib3giO31pOjU7YTo1OntzOjQ6Im5hbWUiO3M6MjQ6IkVuYWJsZSBDdXN0b20gTmF2aWdhdGlvbiI7czo0OiJkZXNjIjtzOjE4MToiRW5hYmxlIHRoZSBvbGQgPHN0cm9uZz5DdXN0b20gTmF2aWdhdGlvbjwvc3Ryb25nPiBtZW51IGl0ZW0uIFRyeSB0byB1c2UgPGEgaHJlZj0naHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWFkbWluL25hdi1tZW51cy5waHAnPldQIE1lbnVzPC9hPiBpbnN0ZWFkLCBhcyB0aGlzIGZ1bmN0aW9uIGlzIG91dGRhdGVkLiI7czoyOiJpZCI7czoyMDoiZnJhbWV3b3JrX3dvb193b29uYXYiO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjg6ImNoZWNrYm94Ijt9aTo2O2E6NTp7czo0OiJuYW1lIjtzOjI1OiJUaGVtZSBVcGRhdGUgTm90aWZpY2F0aW9uIjtzOjQ6ImRlc2MiO3M6MTAxOiJUaGlzIHdpbGwgZW5hYmxlIG5vdGljZXMgb24geW91ciB0aGVtZSBvcHRpb25zIHBhZ2UgdGhhdCB0aGVyZSBpcyBhbiB1cGRhdGUgYXZhaWxhYmxlIGZvciB5b3VyIHRoZW1lLiI7czoyOiJpZCI7czozNToiZnJhbWV3b3JrX3dvb190aGVtZV92ZXJzaW9uX2NoZWNrZXIiO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjg6ImNoZWNrYm94Ijt9aTo3O2E6NTp7czo0OiJuYW1lIjtzOjI5OiJEaXNhYmxlIFNob3J0Y29kZXMgU3R5bGVzaGVldCI7czo0OiJkZXNjIjtzOjc2OiJUaGlzIGRpc2FibGVzIHRoZSBvdXRwdXQgb2Ygc2hvcnRjb2Rlcy5jc3MgaW4gdGhlIEhFQUQgc2VjdGlvbiBvZiB5b3VyIHNpdGUuIjtzOjI6ImlkIjtzOjMyOiJmcmFtZXdvcmtfd29vX2Rpc2FibGVfc2hvcnRjb2RlcyI7czozOiJzdGQiO3M6MDoiIjtzOjQ6InR5cGUiO3M6ODoiY2hlY2tib3giO31pOjg7YTo1OntzOjQ6Im5hbWUiO3M6MjY6IlJlbW92ZSBHZW5lcmF0b3IgTWV0YSBUYWdzIjtzOjQ6ImRlc2MiO3M6ODE6IlRoaXMgZGlzYWJsZXMgdGhlIG91dHB1dCBvZiBnZW5lcmF0b3IgbWV0YSB0YWdzIGluIHRoZSBIRUFEIHNlY3Rpb24gb2YgeW91ciBzaXRlLiI7czoyOiJpZCI7czozMToiZnJhbWV3b3JrX3dvb19kaXNhYmxlX2dlbmVyYXRvciI7czozOiJzdGQiO3M6MDoiIjtzOjQ6InR5cGUiO3M6ODoiY2hlY2tib3giO31pOjk7YTo1OntzOjQ6Im5hbWUiO3M6MTc6IkltYWdlIFBsYWNlaG9sZGVyIjtzOjQ6ImRlc2MiO3M6MTUxOiJTZXQgYSBkZWZhdWx0IGltYWdlIHBsYWNlaG9sZGVyIGZvciB5b3VyIHRodW1ibmFpbHMuIFVzZSB0aGlzIGlmIHlvdSB3YW50IGEgZGVmYXVsdCBpbWFnZSB0byBiZSBzaG93biBpZiB5b3UgaGF2ZW4ndCBhZGRlZCBhIGN1c3RvbSBpbWFnZSB0byB5b3VyIHBvc3QuIjtzOjI6ImlkIjtzOjI3OiJmcmFtZXdvcmtfd29vX2RlZmF1bHRfaW1hZ2UiO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjY6InVwbG9hZCI7fWk6MTA7YTozOntzOjQ6Im5hbWUiO3M6ODoiQnJhbmRpbmciO3M6NDoiaWNvbiI7czo0OiJtaXNjIjtzOjQ6InR5cGUiO3M6NzoiaGVhZGluZyI7fWk6MTE7YTo1OntzOjQ6Im5hbWUiO3M6MjA6Ik9wdGlvbnMgcGFuZWwgaGVhZGVyIjtzOjQ6ImRlc2MiO3M6NTA6IkNoYW5nZSB0aGUgaGVhZGVyIGltYWdlIGZvciB0aGUgV29vVGhlbWVzIEJhY2tlbmQuIjtzOjI6ImlkIjtzOjM0OiJmcmFtZXdvcmtfd29vX2JhY2tlbmRfaGVhZGVyX2ltYWdlIjtzOjM6InN0ZCI7czowOiIiO3M6NDoidHlwZSI7czo2OiJ1cGxvYWQiO31pOjEyO2E6NTp7czo0OiJuYW1lIjtzOjE4OiJPcHRpb25zIHBhbmVsIGljb24iO3M6NDoiZGVzYyI7czo1NjoiQ2hhbmdlIHRoZSBpY29uIGltYWdlIGZvciB0aGUgV29yZFByZXNzIGJhY2tlbmQgc2lkZWJhci4iO3M6MjoiaWQiO3M6MjY6ImZyYW1ld29ya193b29fYmFja2VuZF9pY29uIjtzOjM6InN0ZCI7czowOiIiO3M6NDoidHlwZSI7czo2OiJ1cGxvYWQiO31pOjEzO2E6NTp7czo0OiJuYW1lIjtzOjIwOiJXb3JkUHJlc3MgbG9naW4gbG9nbyI7czo0OiJkZXNjIjtzOjUxOiJDaGFuZ2UgdGhlIGxvZ28gaW1hZ2UgZm9yIHRoZSBXb3JkUHJlc3MgbG9naW4gcGFnZS4iO3M6MjoiaWQiO3M6MzE6ImZyYW1ld29ya193b29fY3VzdG9tX2xvZ2luX2xvZ28iO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjY6InVwbG9hZCI7fWk6MTQ7YTozOntzOjQ6Im5hbWUiO3M6MTU6IkltcG9ydCAvIEV4cG9ydCI7czo0OiJpY29uIjtzOjQ6Im1pc2MiO3M6NDoidHlwZSI7czo3OiJoZWFkaW5nIjt9aToxNTthOjU6e3M6NDoibmFtZSI7czoxNDoiSW1wb3J0IE9wdGlvbnMiO3M6NDoiZGVzYyI7czo1OToiSW1wb3J0IHRoZSBvcHRpb25zIGZyb20gYW5vdGhlciBpbnN0YWxsYXRpb24gb2YgdGhpcyB0aGVtZS4iO3M6MjoiaWQiO3M6Mjg6ImZyYW1ld29ya193b29faW1wb3J0X29wdGlvbnMiO3M6Mzoic3RkIjtzOjA6IiI7czo0OiJ0eXBlIjtzOjg6InRleHRhcmVhIjt9aToxNjthOjU6e3M6NDoibmFtZSI7czoxNDoiRXhwb3J0IE9wdGlvbnMiO3M6NDoiZGVzYyI7czo5NDoiRXhwb3J0IHRoZSBvcHRpb25zIHRvIGFub3RoZXIgaW5zdGFsbGF0aW9uIG9mIHRoaXMgdGhlbWUsIG9yIHRvIGtlZXAgYSBiYWNrdXAgb2YgeW91ciBvcHRpb25zLiI7czoyOiJpZCI7czoyODoiZnJhbWV3b3JrX3dvb19leHBvcnRfb3B0aW9ucyI7czozOiJzdGQiO3M6MTUxMjoiWVRveU9EcDdjem81T2lKM2IyOWZZV0p2ZFhRaU8zTTZNRG9pSWp0ek9qRXpPaUozYjI5ZllXSnZkWFJzYVc1cklqdHpPakU2SWlNaU8zTTZNVFE2SW5kdmIxOWhaSE5mY205MFlYUmxJanR6T2pRNkluUnlkV1VpTzNNNk1UUTZJbmR2YjE5aFpGOXBiV0ZuWlY4eElqdHpPalExT2lKb2RIUndPaTh2ZDNkM0xtUmxkbTl1WW5WNUxtTnZiUzloWkhNdlltaGZNVEkxZURFeU5WOHdNaTVuYVdZaU8zTTZNVFE2SW5kdmIxOWhaRjlwYldGblpWOHlJanR6T2pReE9pSm9kSFJ3T2k4dmQzZDNMbmR2YjNSb1pXMWxjeTVqYjIwdllXUnpMekV5TlhneE1qVmlMbXB3WnlJN2N6b3hORG9pZDI5dlgyRmtYMmx0WVdkbFh6TWlPM002TkRFNkltaDBkSEE2THk5M2QzY3VkMjl2ZEdobGJXVnpMbU52YlM5aFpITXZNVEkxZURFeU5XSXVhbkJuSWp0ek9qRTBPaUozYjI5ZllXUmZhVzFoWjJWZk5DSTdjem8wTVRvaWFIUjBjRG92TDNkM2R5NTNiMjkwYUdWdFpYTXVZMjl0TDJGa2N5OHhNalY0TVRJMVlpNXFjR2NpTzNNNk1USTZJbmR2YjE5aFpGOTFjbXhmTVNJN2N6b3pOem9pYUhSMGNEb3ZMM2QzZHk1aWJIVmxhRzl6ZEM1amIyMHZkSEpoWTJzdmFXNWthV2R2ZENJN2N6b3hNam9pZDI5dlgyRmtYM1Z5YkY4eUlqdHpPakkwT2lKb2RIUndPaTh2ZDNkM0xuZHZiM1JvWlcxbGN5NWpiMjBpTzNNNk1USTZJbmR2YjE5aFpGOTFjbXhmTXlJN2N6b3lORG9pYUhSMGNEb3ZMM2QzZHk1M2IyOTBhR1Z0WlhNdVkyOXRJanR6T2pFeU9pSjNiMjlmWVdSZmRYSnNYelFpTzNNNk1qUTZJbWgwZEhBNkx5OTNkM2N1ZDI5dmRHaGxiV1Z6TG1OdmJTSTdjem94T0RvaWQyOXZYMkZzZEY5emRIbHNaWE5vWldWMElqdHpPamc2SW1keVlYa3VZM056SWp0ek9qRTBPaUozYjI5ZlkzVnpkRzl0WDJOemN5STdjem93T2lJaU8zTTZNVGc2SW5kdmIxOWpkWE4wYjIxZlptRjJhV052YmlJN2N6b3dPaUlpTzNNNk1UZzZJbmR2YjE5bVpXVmtZblZ5Ym1WeVgzVnliQ0k3Y3pvd09pSWlPM002TWpBNkluZHZiMTluYjI5bmJHVmZZVzVoYkhsMGFXTnpJanR6T2pBNklpSTdjem80T2lKM2IyOWZhRzl0WlNJN2N6bzFPaUptWVd4elpTSTdjem94TnpvaWQyOXZYMmh2YldWZllYSmphR2wyWlhNaU8zTTZNRG9pSWp0ek9qSXhPaUozYjI5ZmFHOXRaVjltYkdsamEzSmZZMjkxYm5RaU8zTTZNRG9pSWp0ek9qRTVPaUozYjI5ZmFHOXRaVjltYkdsamEzSmZkWEpzSWp0ek9qQTZJaUk3Y3pveU1Eb2lkMjl2WDJodmJXVmZabXhwWTJ0eVgzVnpaWElpTzNNNk1Eb2lJanR6T2pFNU9pSjNiMjlmYUc5dFpWOXNhV1psYzNSeVpXRnRJanR6T2pBNklpSTdjem94TkRvaWQyOXZYMmh2YldWZmNHOXpkSE1pTzNNNk1Eb2lJanR6T2pnNkluZHZiMTlzYjJkdklqdHpPakE2SWlJN2N6b3hNem9pZDI5dlgyMWhhVzV5YVdkb2RDSTdjem8xT2lKbVlXeHpaU0k3Y3pvM09pSjNiMjlmYm1GMklqdHpPalE2SW5SeWRXVWlPM002T0RvaWQyOXZYM1JoWW5NaU8zTTZOVG9pWm1Gc2MyVWlPM002T1RvaWQyOXZYM1pwWkdWdklqdHpPalE2SW5SeWRXVWlPMzA9IjtzOjQ6InR5cGUiO3M6ODoidGV4dGFyZWEiO319PC9saT48bGk+PHN0cm9uZz53b29fZnJhbWV3b3JrX3ZlcnNpb248L3N0cm9uZz4gLSA0LjEuMDwvbGk+PGxpPjxzdHJvbmc+d29vX2dvb2dsZV9hbmFseXRpY3M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2FyY2hpdmVzPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9mbGlja3JfY291bnQ8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2ZsaWNrcl91cmw8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2ZsaWNrcl91c2VyPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9saWZlc3RyZWFtPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9vbmVfY29sPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX3Bvc3RzPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faW1hZ2VfZGlzYWJsZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29faW1hZ2VfaGVpZ2h0PC9zdHJvbmc+IC0gMTkwPC9saT48bGk+PHN0cm9uZz53b29faW1hZ2Vfc2luZ2xlPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX3dpZHRoPC9zdHJvbmc+IC0gMzUwPC9saT48bGk+PHN0cm9uZz53b29fbGF5b3V0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19sb2dvPC9zdHJvbmc+IC0gaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMzItbG9nby1kZXZvbmJ1eS0yMDE2LnBuZzwvbGk+PGxpPjxzdHJvbmc+d29vX21haW5yaWdodDwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fbWFudWFsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL3N1cHBvcnQvdGhlbWUtZG9jdW1lbnRhdGlvbi9mcmVzaC1uZXdzLzwvbGk+PGxpPjxzdHJvbmc+d29vX25hdjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19vcHRpb25zPC9zdHJvbmc+IC0gYToyODp7czoxODoid29vX2FsdF9zdHlsZXNoZWV0IjtzOjEyOiI2LXdoaXRleS5jc3MiO3M6ODoid29vX2xvZ28iO3M6NTg6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtbG9nby5wbmciO3M6MTg6Indvb19jdXN0b21fZmF2aWNvbiI7czowOiIiO3M6MjA6Indvb19nb29nbGVfYW5hbHl0aWNzIjtzOjA6IiI7czoxODoid29vX2ZlZWRidXJuZXJfdXJsIjtzOjA6IiI7czoxNDoid29vX2N1c3RvbV9jc3MiO3M6MDoiIjtzOjg6Indvb19ob21lIjtzOjU6ImZhbHNlIjtzOjE0OiJ3b29faG9tZV9wb3N0cyI7czowOiIiO3M6MTk6Indvb19ob21lX2xpZmVzdHJlYW0iO3M6MDoiIjtzOjIwOiJ3b29faG9tZV9mbGlja3JfdXNlciI7czowOiIiO3M6MjE6Indvb19ob21lX2ZsaWNrcl9jb3VudCI7czowOiIiO3M6MTk6Indvb19ob21lX2ZsaWNrcl91cmwiO3M6MDoiIjtzOjE3OiJ3b29faG9tZV9hcmNoaXZlcyI7czowOiIiO3M6MTM6Indvb19tYWlucmlnaHQiO3M6NToiZmFsc2UiO3M6Nzoid29vX25hdiI7czo0OiJ0cnVlIjtzOjg6Indvb190YWJzIjtzOjU6ImZhbHNlIjtzOjk6Indvb192aWRlbyI7czo0OiJ0cnVlIjtzOjk6Indvb19hYm91dCI7czowOiIiO3M6MTM6Indvb19hYm91dGxpbmsiO3M6MToiIyI7czoxNDoid29vX2Fkc19yb3RhdGUiO3M6NDoidHJ1ZSI7czoxNDoid29vX2FkX2ltYWdlXzEiO3M6NDY6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS9hZHMvYmhfMTI1eDEyNV8wMi5naWYiO3M6MTI6Indvb19hZF91cmxfMSI7czozNzoiaHR0cDovL3d3dy5ibHVlaG9zdC5jb20vdHJhY2svaW5kaWdvdCI7czoxNDoid29vX2FkX2ltYWdlXzIiO3M6NDY6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS9hZHMvaWNvb2xzb2Z0aXBhZC5qcGciO3M6MTI6Indvb19hZF91cmxfMiI7czo2ODoiaHR0cHM6Ly93d3cucmVnbm93LmNvbS9jaGVja291dC9jYXJ0L2FkZC8yNzE0OC03P2FmZmlsaWF0ZV9pZD01OTMwMDEiO3M6MTQ6Indvb19hZF9pbWFnZV8zIjtzOjQxOiJodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjViLmpwZyI7czoxMjoid29vX2FkX3VybF8zIjtzOjI0OiJodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20iO3M6MTQ6Indvb19hZF9pbWFnZV80IjtzOjQxOiJodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjViLmpwZyI7czoxMjoid29vX2FkX3VybF80IjtzOjI0OiJodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20iO308L2xpPjxsaT48c3Ryb25nPndvb19vdGhlcl9lbnRyaWVzPC9zdHJvbmc+IC0gNjwvbGk+PGxpPjxzdHJvbmc+d29vX3BvcHVsYXJfcG9zdHM8L3N0cm9uZz4gLSBTZWxlY3QgYSBudW1iZXI6PC9saT48bGk+PHN0cm9uZz53b29fcmVzaXplPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19yc3NfdGh1bWI8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3dfdmlkZW88L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3NpbmdsZV9oZWlnaHQ8L3N0cm9uZz4gLSAxMjA8L2xpPjxsaT48c3Ryb25nPndvb19zaW5nbGVfaW1hZ2VfaGVpZ2h0PC9zdHJvbmc+IC0gMTAwPC9saT48bGk+PHN0cm9uZz53b29fc2luZ2xlX2ltYWdlX3dpZHRoPC9zdHJvbmc+IC0gMTAwPC9saT48bGk+PHN0cm9uZz53b29fc2luZ2xlX3dpZHRoPC9zdHJvbmc+IC0gMjAwPC9saT48bGk+PHN0cm9uZz53b29fc3Vja2VyZmlzaDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb190YWJzPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb190aGVtZW5hbWU8L3N0cm9uZz4gLSBGcmVzaCBOZXdzPC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfaGVpZ2h0PC9zdHJvbmc+IC0gMTAwPC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfaW1hZ2VfaGVpZ2h0PC9zdHJvbmc+IC0gNzU8L2xpPjxsaT48c3Ryb25nPndvb190aHVtYl9pbWFnZV93aWR0aDwvc3Ryb25nPiAtIDc1PC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfd2lkdGg8L3N0cm9uZz4gLSAxMDA8L2xpPjxsaT48c3Ryb25nPndvb191cGxvYWRzPC9zdHJvbmc+IC0gYTozMDp7aTowO3M6NzM6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMyLWxvZ28tZGV2b25idXktMjAxNi5wbmciO2k6MTtzOjczOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8zMS1sb2dvLWRldm9uYnV5LTIwMTYucG5nIjtpOjI7czo3MzoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMzAtbG9nby1kZXZvbmJ1eS0yMDE1LnBuZyI7aTozO3M6NzM6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzI5LWxvZ28tZGV2b25idXktMjAxNS5wbmciO2k6NDtzOjczOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8yOC1sb2dvLWRldm9uYnV5LTIwMTUucG5nIjtpOjU7czo3MzoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMjctbG9nby1kZXZvbmJ1eS0yMDE1LnBuZyI7aTo2O3M6NjU6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzI2LWZhdmljb24tZGIucG5nIjtpOjc7czo2NjoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMjUtZmF2aWNvbjIwMTQucG5nIjtpOjg7czo2NToiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMjQtaGVhZGVyMjAxNC5wbmciO2k6OTtzOjY1OiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8yMy1oZWFkZXIyMDE0LnBuZyI7aToxMDtzOjY1OiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8yMi1oZWFkZXIyMDE0LnBuZyI7aToxMTtzOjY1OiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8yMS1oZWFkZXIyMDEzLnBuZyI7aToxMjtzOjcwOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8yMC1oZWFkZXIyMDEzdHlwZTIuanBnIjtpOjEzO3M6NzA6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzE5LWhlYWRlcjIwMTN0eXBlMi5qcGciO2k6MTQ7czo3MDoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTgtaGVhZGVyMjAxM3R5cGUyLmpwZyI7aToxNTtzOjcwOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xNy1oZWFkZXIyMDEzdHlwZTIuanBnIjtpOjE2O3M6NjU6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzE2LWhlYWRlcjIwMTMuanBnIjtpOjE3O3M6NjQ6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzE1LWxvZ29fY2FydC5wbmciO2k6MTg7czo2NDoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTQtbG9nb19jYXJ0LnBuZyI7aToxOTtzOjY0OiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMy1sb2dvX2NhcnQucG5nIjtpOjIwO3M6NjQ6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzEyLWxvZ29fY2FydC5wbmciO2k6MjE7czo2NDoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTEtbG9nb19jYXJ0LnBuZyI7aToyMjtzOjYxOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMC1sb2dvXzMucG5nIjtpOjIzO3M6NjA6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzktbG9nb18zLnBuZyI7aToyNDtzOjYwOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LWRiLWZhdi5wbmciO2k6MjU7czo2MDoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1sb2dvXzIucG5nIjtpOjI2O3M6NjA6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzYtbG9nb18yLnBuZyI7aToyNztzOjYwOiJodHRwczovL3d3dy5kZXZvbmJ1eS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy81LWxvZ29fMi5wbmciO2k6Mjg7czo2MDoiaHR0cHM6Ly93d3cuZGV2b25idXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNC1sb2dvXzIucG5nIjtpOjI5O3M6NTg6Imh0dHBzOi8vd3d3LmRldm9uYnV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtbG9nby5wbmciO308L2xpPjxsaT48c3Ryb25nPndvb192aWRlbzwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb192aWRlb19jYXRlZ29yeTwvc3Ryb25nPiAtIFNlbGVjdCBhIGNhdGVnb3J5OjwvbGk+PC91bD4=