Curacao Ocean Resort Penthouse 7

Willemstad East · Curaçao

Condos For Sale

US$ 893,000 ANƒ 1.607.400-¹¹ EU€ 757 495¹¹

Property Details

  • Ref# 512271
  • City Willemstad East
  • Country Curaçao
  • Bedrooms 3
  • Bathrooms 2
  • Living Space 250 m²
  • Property Class Residential

Property Remarks

Upon Entering this unique gem located at one of the nicest locations/resorts on Curacao you find yourself quickly standing on a spacious terrace with an increadibly beautiful view over the Caribbean Sea. The spacious porch offers plenty of room and has a great breeze. The open floor plan connects the terrace to the cozy living room and the spacious, fully equipped kitchen, the view can be enjoyed from every corner of the living area. The kitchen includes a large American fridge with freezer and ice maker, a built-in Siemens coffee machine, a dishwasher, a large gas stove and oven. To the back end of the apartment you will find two spacious guest bedrooms that share a large guest bathroom, both bedrooms feature build-in closets. saving the best for last is the master suite which is located on the second floor. The master suite offers a private balcony with even a full panorama view, spacious lounge area, a large build in closet, a high ceiling and a luxurious bathroom. The monthly costs for the resort amount up too ANG 400,- which is very reasonable. It is possible to purchase the apartment fully furnished. The penthouses offers a storage unit and a covered parking space at ground level. Don’t hesitate to contact us immediately to view this penthouse and enjoy this beauty for yourself. Curacao Ocean Resort The Curacao Ocean Resort is an one of a kind place. This gated resort is unique because of its mixture of a peaceful and quiet living on the moving and living Curacao Beach Boulevard. Curacao Ocean Resort is included with a private beach and a spacious swimming pool. From your own apartment you can see the dolphins from the Dolphin Academy. The most known and visited nightlife, stores, bars, restaurants, fitness, spa, casino, resorts, beach clubs and beaches are on a walking distance. The center of Willemstad is only a 5 minutes’ drive.

Features and Amenities

  • Condition
    • Just Painted
    • Recently Renovated
    • Well Maintained
  • Outdoor Features
    • Landscaped
    • Beach
    • Canal
    • Flower Garden
  • Appliances
    • All New!
    • Electric Stove
    • Dishwasher
    • Microwave
    • Garbage Disposal
    • Fridge + Water/Ice Dispenser
  • Furnished
    • Fully Furnished
  • Parking - Type
    • Driveway
  • Parking - Spots
    • 2 Assigned Spots
  • Parking - Visitors
    • Extra Visitor Parking
  • Storage
    • Good Storage
  • Security
    • Security System
    • Security Guard
    • Security Gate
    • Alarm System
  • Air Conditioning
    • Split Level A/C
  • Beach Access
    • Path to Beach
    • Private Beach Access
  • Boat Access
    • Boat Dock
    • Boat Access
  • Patio - Deck - Porch
    • Private Balcony
  • Near By
    • Playground
    • School(s)
    • Town
    • Fitness Center
    • Commercial Activities
    • Public Transportation
    • Airport
    • Restaurants
    • Casino(s)
  • Swimming Pool
    • On-Site Pool
  • Gym/Fitness Center
    • On-Site Gym
  • Rooms
    • Kitchen
    • Living Room
    • Dining Room
    • Laundry Room
    • Bedroom
    • Master Bedroom
    • Powder Room
    • Bathroom
    • En-Suite Bath
  • Distinctive Features
    • Luxurious
    • Gated Community
    • Balcony
    • Large Closet
    • Walk-In Closet
  • Location Features
    • Public Transportation
    • On Bus Route
    • Water Access
    • Quiet Area
    • Private street
    • No neighbours in the back
    • Convenience store
    • Water front

Directions

Click on the ‘directions’ button below for the directions to curacao ocean resort penthouse 3.
[  Directions ]

Map Location

Open
(¹) Listed Amount was converted based on recent interbank exchange rates. We do not guarantee the accuracy of these amounts.
'd.1.en.1138986'
YXJyYXkgKAogICdhbXAnID0+IGZhbHNlLAogICdsaWQnID0+ICcxMTM4OTg2JywKICAndXFpZCcgPT4gTlVMTCwKICAncGFnZScgPT4gJ2RldGFpbCcsCiAgJ2NvbnRyb2xsZXInID0+ICdkZXRhaWwnLAogICdmdW5jdGlvbicgPT4gJ2luZGV4JywKICAncGFyYW1zJyA9PiAKICBhcnJheSAoCiAgKSwKICAndXJpJyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtMTEzODk4NicsCiAgJ3VyaV9iYXNlJyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtJywKICAndXJpX3BhdGgnID0+ICcvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtMTEzODk4NicsCiAgJ3VyaV9xdWVyeScgPT4gTlVMTCwKICAndXJpX2Nhbm9uaWNhbCcgPT4gTlVMTCwKICAndXJpX29yaWdpbmFsJyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtMTEzODk4NicsCiAgJ3VyaV9yZXF1ZXN0JyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtMTEzODk4NicsCiAgJ2lzVXJpSUQnID0+IHRydWUsCiAgJ2lzQ2Fub25pY2FsJyA9PiBmYWxzZSwKICAnaXNQT1NUJyA9PiBmYWxzZSwKICAnaXNYSFInID0+IDAsCiAgJ2lzSlNPTicgPT4gMCwKICAnbGFuZycgPT4gJ2VuJywKICAnY3RybCcgPT4gJ2QnLAogICdiYXNlJyA9PiAnL2VuL2QnLAogICdwYXRoJyA9PiAnY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUnLAogICdzZWFyY2hfdHlwZScgPT4gTlVMTCwKICAncXVlcnlfc2VnbWVudCcgPT4gJycsCiAgJ3NlZ21lbnRzJyA9PiAKICBhcnJheSAoCiAgKSwKICAnc2VnbWVudENvbHMnID0+IE5VTEwsCiAgJ29wdHMnID0+IE5VTEwsCiAgJ3NvcnRTdHInID0+ICcnLAogICdkZWZTb3J0U3RyJyA9PiAnL2hnYScsCiAgJ2RhdGEnID0+IAogIGFycmF5ICgKICAgICdjb3VudHJ5JyA9PiAnQ1YnLAogICksCiAgJ2FyZ3MnID0+IAogIGFycmF5ICgKICApLAogICdocmVmX2dvYmFjaycgPT4gTlVMTCwKICAnc2VsZl9yZWZlcmVkJyA9PiBOVUxMLAogICdyZWZlcmVkX3JlcScgPT4gTlVMTCwKICAnc29ydEFycicgPT4gCiAgYXJyYXkgKAogICAgJ2J5JyA9PiAncHJpY2UnLAogICAgJ2N1cnInID0+ICcnLAogICAgJ2RpcicgPT4gJ2Rlc2MnLAogICAgJ29wdHMnID0+ICdoZ2EnLAogICAgJ3BhZ2VPZmZzZXQnID0+IDAsCiAgICAncGFnZV9ubycgPT4gMSwKICAgICdwZXJfcGFnZScgPT4gMTIsCiAgICAncm93cycgPT4gJ2EnLAogICAgJ3NvcnQnID0+ICdoaWxvJywKICAgICdzb3J0U3RyJyA9PiAnL2hnYScsCiAgICAnc3R5bGUnID0+ICdncmlkJywKICApLAogICd1cmlfc29ydCcgPT4gJy9lbi9kL2N1cmFjYW8tb2NlYW4tcmVzb3J0LXBlbnRob3VzZS03LWNvbmRvLWZvci1zYWxlJywKICAnaHR0cF9yZXNwb25zZV9zdGF0dXMnID0+IDIwMCwKICAnbWV0YUFycicgPT4gCiAgYXJyYXkgKAogICAgJ3RleHQnID0+IAogICAgYXJyYXkgKAogICAgICAnY291bnRyeScgPT4gJ0N1cmHDp2FvJywKICAgICAgJ3NpdGVfbmFtZScgPT4gJ0NFTlRVUlkgMjEgTnVtYmVyIE9uZScsCiAgICAgICdyZWFsX2VzdGF0ZScgPT4gJ1JlYWwgRXN0YXRlJywKICAgICksCiAgKSwKICAnaXNGb3JtJyA9PiBmYWxzZSwKICAnbEFycicgPT4gCiAgYXJyYXkgKAogICAgJ2xpZCcgPT4gJzExMzg5ODYnLAogICAgJ3JlZm5vJyA9PiAnMDAwMDUxMjI3MScsCiAgICAnY291bnRyeScgPT4gJ0NWJywKICAgICdwY2xhc3MnID0+ICdSRVMnLAogICAgJ2V4Y2wnID0+ICcxJywKICAgICdyZWNpcCcgPT4gJzAnLAogICAgJ2Z0cmQnID0+ICcwJywKICAgICdicmFuZDEnID0+ICdDRU4nLAogICAgJ29maWQxJyA9PiAnMTAwMDM5OScsCiAgICAnYWdpZDEnID0+ICcxMDAxOTg4JywKICAgICdicmFuZDInID0+ICcnLAogICAgJ29maWQyJyA9PiAnMCcsCiAgICAnYWdpZDInID0+ICcwJywKICAgICdsYXN0dXBkYXRlJyA9PiAnMjAxOS0wNC0xMiAxODowODozNCcsCiAgICAnc3RhbXAnID0+ICcyMDE4LTExLTIwIDE5OjAzOjE5JywKICAgICdkZXRhaWxzJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ1JFRk5PX0xBQkVMJyA9PiAnUmVmIycsCiAgICAgICdSRUZOT19WQUxVRScgPT4gJzUxMjI3MScsCiAgICAgICdESURfTEFCRUwnID0+ICdDaXR5JywKICAgICAgJ0RJRF9WQUxVRScgPT4gJ1dpbGxlbXN0YWQgRWFzdCcsCiAgICAgICdDT1VOVFJZX0xBQkVMJyA9PiAnQ291bnRyeScsCiAgICAgICdDT1VOVFJZX1ZBTFVFJyA9PiAnQ3VyYcOnYW8nLAogICAgICAnQkVEU19MQUJFTCcgPT4gJ0JlZHJvb21zJywKICAgICAgJ0JFRFNfVkFMVUUnID0+IDMsCiAgICAgICdCQVRIU19MQUJFTCcgPT4gJ0JhdGhyb29tcycsCiAgICAgICdCQVRIU19WQUxVRScgPT4gMiwKICAgICAgJ0xTUEFDRV9MQUJFTCcgPT4gJ0xpdmluZyBTcGFjZScsCiAgICAgICdMU1BBQ0VfVkFMVUUnID0+ICcyNTAgbcKyJywKICAgICAgJ1BDTEFTU19MQUJFTCcgPT4gJ1Byb3BlcnR5IENsYXNzJywKICAgICAgJ1BDTEFTU19WQUxVRScgPT4gJ1Jlc2lkZW50aWFsJywKICAgICAgJ0hUTUwnID0+ICc8bGk+PGI+UmVmIzwvYj4gNTEyMjcxPC9saT4KPGxpPjxiPkNpdHk8L2I+IFdpbGxlbXN0YWQgRWFzdDwvbGk+CjxsaT48Yj5Db3VudHJ5PC9iPiBDdXJhw6dhbzwvbGk+CjxsaT48Yj5CZWRyb29tczwvYj4gMzwvbGk+CjxsaT48Yj5CYXRocm9vbXM8L2I+IDI8L2xpPgo8bGk+PGI+TGl2aW5nIFNwYWNlPC9iPiAyNTAgbcKyPC9saT4KPGxpPjxiPlByb3BlcnR5IENsYXNzPC9iPiBSZXNpZGVudGlhbDwvbGk+JywKICAgICksCiAgICAnZmVhdHVyZXMnID0+ICcKPGxpPjxiPkNvbmRpdGlvbjwvYj48c3Bhbj48dWw+PGxpPkp1c3QgUGFpbnRlZDwvbGk+PGxpPlJlY2VudGx5IFJlbm92YXRlZDwvbGk+PGxpPldlbGwgTWFpbnRhaW5lZDwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPk91dGRvb3IgRmVhdHVyZXM8L2I+PHNwYW4+PHVsPjxsaT5MYW5kc2NhcGVkPC9saT48bGk+QmVhY2g8L2xpPjxsaT5DYW5hbDwvbGk+PGxpPkZsb3dlciBHYXJkZW48L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5BcHBsaWFuY2VzPC9iPjxzcGFuPjx1bD48bGk+QWxsIE5ldyE8L2xpPjxsaT5FbGVjdHJpYyBTdG92ZTwvbGk+PGxpPkRpc2h3YXNoZXI8L2xpPjxsaT5NaWNyb3dhdmU8L2xpPjxsaT5HYXJiYWdlIERpc3Bvc2FsPC9saT48bGk+RnJpZGdlICsgV2F0ZXIvSWNlIERpc3BlbnNlcjwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPkZ1cm5pc2hlZDwvYj48c3Bhbj48dWw+PGxpPkZ1bGx5IEZ1cm5pc2hlZDwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPlBhcmtpbmcgLSBUeXBlPC9iPjxzcGFuPjx1bD48bGk+RHJpdmV3YXk8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5QYXJraW5nIC0gU3BvdHM8L2I+PHNwYW4+PHVsPjxsaT4yIEFzc2lnbmVkIFNwb3RzPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+UGFya2luZyAtIFZpc2l0b3JzPC9iPjxzcGFuPjx1bD48bGk+RXh0cmEgVmlzaXRvciBQYXJraW5nPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+U3RvcmFnZTwvYj48c3Bhbj48dWw+PGxpPkdvb2QgU3RvcmFnZTwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPlNlY3VyaXR5PC9iPjxzcGFuPjx1bD48bGk+U2VjdXJpdHkgU3lzdGVtPC9saT48bGk+U2VjdXJpdHkgR3VhcmQ8L2xpPjxsaT5TZWN1cml0eSBHYXRlPC9saT48bGk+QWxhcm0gU3lzdGVtPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+QWlyIENvbmRpdGlvbmluZzwvYj48c3Bhbj48dWw+PGxpPlNwbGl0IExldmVsIEEvQzwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPkJlYWNoIEFjY2VzczwvYj48c3Bhbj48dWw+PGxpPlBhdGggdG8gQmVhY2g8L2xpPjxsaT5Qcml2YXRlIEJlYWNoIEFjY2VzczwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPkJvYXQgQWNjZXNzPC9iPjxzcGFuPjx1bD48bGk+Qm9hdCBEb2NrPC9saT48bGk+Qm9hdCBBY2Nlc3M8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5QYXRpbyAtIERlY2sgLSBQb3JjaDwvYj48c3Bhbj48dWw+PGxpPlByaXZhdGUgQmFsY29ueTwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPk5lYXIgQnk8L2I+PHNwYW4+PHVsPjxsaT5QbGF5Z3JvdW5kPC9saT48bGk+U2Nob29sKHMpPC9saT48bGk+VG93bjwvbGk+PGxpPkZpdG5lc3MgQ2VudGVyPC9saT48bGk+Q29tbWVyY2lhbCBBY3Rpdml0aWVzPC9saT48bGk+UHVibGljIFRyYW5zcG9ydGF0aW9uPC9saT48bGk+QWlycG9ydDwvbGk+PGxpPlJlc3RhdXJhbnRzPC9saT48bGk+Q2FzaW5vKHMpPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+U3dpbW1pbmcgUG9vbDwvYj48c3Bhbj48dWw+PGxpPk9uLVNpdGUgUG9vbDwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPkd5bS9GaXRuZXNzIENlbnRlcjwvYj48c3Bhbj48dWw+PGxpPk9uLVNpdGUgR3ltPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+Um9vbXM8L2I+PHNwYW4+PHVsPjxsaT5LaXRjaGVuPC9saT48bGk+TGl2aW5nIFJvb208L2xpPjxsaT5EaW5pbmcgUm9vbTwvbGk+PGxpPkxhdW5kcnkgUm9vbTwvbGk+PGxpPkJlZHJvb208L2xpPjxsaT5NYXN0ZXIgQmVkcm9vbTwvbGk+PGxpPlBvd2RlciBSb29tPC9saT48bGk+QmF0aHJvb208L2xpPjxsaT5Fbi1TdWl0ZSBCYXRoPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+RGlzdGluY3RpdmUgRmVhdHVyZXM8L2I+PHNwYW4+PHVsPjxsaT5MdXh1cmlvdXM8L2xpPjxsaT5HYXRlZCBDb21tdW5pdHk8L2xpPjxsaT5CYWxjb255PC9saT48bGk+TGFyZ2UgQ2xvc2V0PC9saT48bGk+V2Fsay1JbiBDbG9zZXQ8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5Mb2NhdGlvbiBGZWF0dXJlczwvYj48c3Bhbj48dWw+PGxpPlB1YmxpYyBUcmFuc3BvcnRhdGlvbjwvbGk+PGxpPk9uIEJ1cyBSb3V0ZTwvbGk+PGxpPldhdGVyIEFjY2VzczwvbGk+PGxpPlF1aWV0IEFyZWE8L2xpPjxsaT5Qcml2YXRlIHN0cmVldDwvbGk+PGxpPk5vIG5laWdoYm91cnMgaW4gdGhlIGJhY2s8L2xpPjxsaT5Db252ZW5pZW5jZSBzdG9yZTwvbGk+PGxpPldhdGVyIGZyb250PC9saT48L3VsPjwvc3Bhbj48L2xpPicsCiAgICAncmVtYXJrcycgPT4gJ1Vwb24gRW50ZXJpbmcgdGhpcyB1bmlxdWUgZ2VtIGxvY2F0ZWQgYXQgb25lIG9mIHRoZSBuaWNlc3QgbG9jYXRpb25zL3Jlc29ydHMgb24gQ3VyYWNhbyB5b3UgZmluZCB5b3Vyc2VsZiBxdWlja2x5IHN0YW5kaW5nIG9uIGEgc3BhY2lvdXMgdGVycmFjZSB3aXRoIGFuIGluY3JlYWRpYmx5IGJlYXV0aWZ1bCB2aWV3IG92ZXIgdGhlIENhcmliYmVhbiBTZWEuIFRoZSBzcGFjaW91cyBwb3JjaCBvZmZlcnMgcGxlbnR5IG9mIHJvb20gYW5kIGhhcyBhIGdyZWF0IGJyZWV6ZS4gVGhlIG9wZW4gZmxvb3IgcGxhbiBjb25uZWN0cyB0aGUgdGVycmFjZSB0byB0aGUgY296eSBsaXZpbmcgcm9vbSBhbmQgdGhlIHNwYWNpb3VzLCBmdWxseSBlcXVpcHBlZCBraXRjaGVuLCB0aGUgdmlldyBjYW4gYmUgZW5qb3llZCBmcm9tIGV2ZXJ5IGNvcm5lciBvZiB0aGUgbGl2aW5nIGFyZWEuIFRoZSBraXRjaGVuIGluY2x1ZGVzIGEgbGFyZ2UgQW1lcmljYW4gZnJpZGdlIHdpdGggZnJlZXplciBhbmQgaWNlIG1ha2VyLCBhIGJ1aWx0LWluIFNpZW1lbnMgY29mZmVlIG1hY2hpbmUsIGEgZGlzaHdhc2hlciwgYSBsYXJnZSBnYXMgc3RvdmUgYW5kIG92ZW4uIFRvIHRoZSBiYWNrIGVuZCBvZiB0aGUgYXBhcnRtZW50IHlvdSB3aWxsIGZpbmQgdHdvIHNwYWNpb3VzIGd1ZXN0IGJlZHJvb21zIHRoYXQgc2hhcmUgYSBsYXJnZSBndWVzdCBiYXRocm9vbSwgYm90aCBiZWRyb29tcyBmZWF0dXJlIGJ1aWxkLWluIGNsb3NldHMuIHNhdmluZyB0aGUgYmVzdCBmb3IgbGFzdCBpcyB0aGUgbWFzdGVyIHN1aXRlIHdoaWNoIGlzIGxvY2F0ZWQgb24gdGhlIHNlY29uZCBmbG9vci4gVGhlIG1hc3RlciBzdWl0ZSBvZmZlcnMgYSBwcml2YXRlIGJhbGNvbnkgd2l0aCBldmVuIGEgZnVsbCBwYW5vcmFtYSB2aWV3LCBzcGFjaW91cyBsb3VuZ2UgYXJlYSwgYSBsYXJnZSBidWlsZCBpbiBjbG9zZXQsIGEgaGlnaCBjZWlsaW5nIGFuZCBhIGx1eHVyaW91cyBiYXRocm9vbS4gCgpUaGUgbW9udGhseSBjb3N0cyBmb3IgdGhlIHJlc29ydCBhbW91bnQgdXAgdG9vIEFORyA0MDAsLSB3aGljaCBpcyB2ZXJ5IHJlYXNvbmFibGUuIEl0IGlzIHBvc3NpYmxlIHRvIHB1cmNoYXNlIHRoZSBhcGFydG1lbnQgZnVsbHkgZnVybmlzaGVkLiBUaGUgcGVudGhvdXNlcyBvZmZlcnMgYSBzdG9yYWdlIHVuaXQgYW5kIGEgY292ZXJlZCBwYXJraW5nIHNwYWNlIGF0IGdyb3VuZCBsZXZlbC4KCkRvbuKAmXQgaGVzaXRhdGUgdG8gY29udGFjdCB1cyBpbW1lZGlhdGVseSB0byB2aWV3IHRoaXMgcGVudGhvdXNlIGFuZCBlbmpveSB0aGlzIGJlYXV0eSBmb3IgeW91cnNlbGYuCgo8dT5DdXJhY2FvIE9jZWFuIFJlc29ydDwvdT4KVGhlIEN1cmFjYW8gT2NlYW4gUmVzb3J0IGlzIGFuIG9uZSBvZiBhIGtpbmQgcGxhY2UuIFRoaXMgZ2F0ZWQgcmVzb3J0IGlzIHVuaXF1ZSBiZWNhdXNlIG9mIGl0cyBtaXh0dXJlIG9mIGEgcGVhY2VmdWwgYW5kIHF1aWV0IGxpdmluZyBvbiB0aGUgbW92aW5nIGFuZCBsaXZpbmcgQ3VyYWNhbyBCZWFjaCBCb3VsZXZhcmQuIEN1cmFjYW8gT2NlYW4gUmVzb3J0IGlzIGluY2x1ZGVkIHdpdGggYSBwcml2YXRlIGJlYWNoIGFuZCBhIHNwYWNpb3VzIHN3aW1taW5nIHBvb2wuIEZyb20geW91ciBvd24gYXBhcnRtZW50IHlvdSBjYW4gc2VlIHRoZSBkb2xwaGlucyBmcm9tIHRoZSBEb2xwaGluIEFjYWRlbXkuIFRoZSBtb3N0IGtub3duIGFuZCB2aXNpdGVkIG5pZ2h0bGlmZSwgc3RvcmVzLCBiYXJzLCByZXN0YXVyYW50cywgZml0bmVzcywgc3BhLCBjYXNpbm8sIHJlc29ydHMsIGJlYWNoIGNsdWJzIGFuZCBiZWFjaGVzIGFyZSBvbiBhIHdhbGtpbmcgZGlzdGFuY2UuIFRoZSBjZW50ZXIgb2YgV2lsbGVtc3RhZCBpcyBvbmx5IGEgNSBtaW51dGVz4oCZIGRyaXZlLicsCiAgICAncmVudGFsaW5mbycgPT4gJycsCiAgICAnZGlyZWN0aW9ucycgPT4gJ0NsaWNrIG9uIHRoZSDigJhkaXJlY3Rpb25z4oCZIGJ1dHRvbiBiZWxvdyBmb3IgdGhlIGRpcmVjdGlvbnMgdG8gY3VyYWNhbyBvY2VhbiByZXNvcnQgcGVudGhvdXNlIDMuIDxicj5bIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vbWFwcy9kaXIvQ3VyYSVDMyVBN2FvJTJCSW50ZXJuYXRpb25hbCUyQkFpcnBvcnQlMkMlMkJDdXJhJUMzJUE3YW8vMTIuMDg0NTI3NjA1MTUxMDQ3MCwtNjguODk0NDYwNzgzNzc2NjAwMC9AMTIuMTQwNzAxMywtNjguOTY1ODM4MywxM3oiIHRhcmdldD0iX2JsYW5rIj48aSBjbGFzcz0iZmEgZmEtZ2xvYmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+Jm5ic3A7RGlyZWN0aW9uczwvYT4gXScsCiAgICAnbWV0YScgPT4gCiAgICBhcnJheSAoCiAgICAgICdsaWQnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnTUxTJywKICAgICAgICAndmFsdWUnID0+ICcxMTM4OTg2JywKICAgICAgICAnc2hvdycgPT4gJ01MUyAxMTM4OTg2JywKICAgICAgKSwKICAgICAgJ3JlZm5vJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ1JlZiMnLAogICAgICAgICd2YWx1ZScgPT4gJzUxMjI3MScsCiAgICAgICAgJ3Nob3cnID0+ICdSZWYjIDUxMjI3MScsCiAgICAgICksCiAgICAgICdjb3VudHJ5JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnQ1YnLAogICAgICAgICdsYWJlbCcgPT4gJ0NvdW50cnknLAogICAgICAgICdsYWJlbDInID0+ICdDb3VudHJ5JywKICAgICAgICAndmFsdWUnID0+ICdDdXJhw6dhbycsCiAgICAgICksCiAgICAgICdwY2xhc3MnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvZGUnID0+ICdSRVMnLAogICAgICAgICdsYWJlbCcgPT4gJ1Byb3BlcnR5IENsYXNzJywKICAgICAgICAnbGFiZWwyJyA9PiAnQ2xhc3MnLAogICAgICAgICd2YWx1ZScgPT4gJ1Jlc2lkZW50aWFsJywKICAgICAgICAndmFsdWUyJyA9PiAnUmVzaWRlbnRpYWwnLAogICAgICApLAogICAgICAnZXhjbCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdFeGNsdXNpdmUnLAogICAgICAgICdsYWJlbDInID0+ICdFeGNsdXNpdmUnLAogICAgICAgICd2YWx1ZScgPT4gJzEnLAogICAgICApLAogICAgICAncGh0Y250JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJzI2JywKICAgICAgKSwKICAgICAgJ3N0YXR1cycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJ0FSJywKICAgICAgICAnbGFiZWwnID0+ICdMaXN0aW5nIFN0YXR1cycsCiAgICAgICAgJ2xhYmVsMicgPT4gJ1N0YXR1cycsCiAgICAgICAgJ3ZhbHVlJyA9PiAnUHJpY2UgUmVkdWNlZCcsCiAgICAgICAgJ3ZhbHVlMicgPT4gJ1JlZHVjZWQnLAogICAgICApLAogICAgICAnY2F0ZWdvcnknID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvZGUnID0+ICc0NDknLAogICAgICAgICdsYWJlbCcgPT4gJ1Byb3BlcnR5IENhdGVnb3J5JywKICAgICAgICAnbGFiZWwyJyA9PiAnQ2F0ZWdvcnknLAogICAgICAgICd2YWx1ZScgPT4gJ0NvbmRvcy9BcGFydG1lbnRzJywKICAgICAgICAndmFsdWUyJyA9PiAnQ29uZG9zJywKICAgICAgKSwKICAgICAgJ3RyYW5zJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnTVMnLAogICAgICAgICdsYWJlbCcgPT4gJ1RyYW5zYWN0aW9uIFR5cGUnLAogICAgICAgICdsYWJlbDInID0+ICdUcmFuc2FjdGlvbicsCiAgICAgICAgJ3ZhbHVlJyA9PiAnRm9yIFNhbGUnLAogICAgICAgICd2YWx1ZTInID0+ICdTYWxlJywKICAgICAgKSwKICAgICAgJ3ByaWNlJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnODkzMDAwLjAwJywKICAgICAgICAnbGFiZWwnID0+ICdBc2tpbmcgUHJpY2UnLAogICAgICAgICdsYWJlbDInID0+ICdQcmljZScsCiAgICAgICAgJ3ZhbHVlJyA9PiAnVVMkIDg5MywwMDAnLAogICAgICApLAogICAgICAnem9uZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzEwMDA3JywKICAgICAgICAnbGFiZWwnID0+ICdBcmVhJywKICAgICAgICAndmFsdWUnID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICApLAogICAgICAnZGlkJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnMTAwMDcnLAogICAgICAgICdsYWJlbCcgPT4gJ0NpdHknLAogICAgICAgICd2YWx1ZScgPT4gJ1dpbGxlbXN0YWQgRWFzdCcsCiAgICAgICksCiAgICAgICdnbGF0JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJzEyLjA4NDUyNzYwNTE1MTA0NzAnLAogICAgICApLAogICAgICAnZ2xuZycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAndmFsdWUnID0+ICctNjguODk0NDYwNzgzNzc2NjAwMCcsCiAgICAgICksCiAgICAgICdiZWRzJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnMycsCiAgICAgICAgJ2xhYmVsJyA9PiAnQmVkcm9vbXMnLAogICAgICAgICdsYWJlbDInID0+ICdCZWRzJywKICAgICAgICAndmFsdWUnID0+IDMsCiAgICAgICksCiAgICAgICdiYXRocycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzIuMCcsCiAgICAgICAgJ2xhYmVsJyA9PiAnQmF0aHJvb21zJywKICAgICAgICAnbGFiZWwyJyA9PiAnQmF0aHMnLAogICAgICAgICd2YWx1ZScgPT4gMiwKICAgICAgKSwKICAgICAgJ2xzcGFjZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzI1MC4wMDAwMDAwMDAwMDAnLAogICAgICAgICdsYWJlbCcgPT4gJ0xpdmluZyBTcGFjZScsCiAgICAgICAgJ2xhYmVsMicgPT4gJ0wuU3BhY2UnLAogICAgICAgICd2YWx1ZScgPT4gJzI1MCBtwrInLAogICAgICApLAogICAgICAnY2l0eScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzEwMDA3JywKICAgICAgICAnbGFiZWwnID0+ICdDaXR5JywKICAgICAgICAndmFsdWUnID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICApLAogICAgICAnc3RhdGUnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvZGUnID0+ICdXaWxsZW1zdGFkJywKICAgICAgICAnbGFiZWwnID0+ICdBcmVhJywKICAgICAgICAndmFsdWUnID0+ICdXaWxsZW1zdGFkJywKICAgICAgKSwKICAgICAgJ3RpdGxlJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3JywKICAgICAgKSwKICAgICAgJ2Rpc3RyaWN0JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJzEwMDA3JywKICAgICAgKSwKICAgICAgJ2N1cnInID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnVVNEJywKICAgICAgKSwKICAgICAgJ2Z1cm5pc2hlZCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdGdXJuaXNoZWQnLAogICAgICAgICdsYWJlbDInID0+ICdGdXJuaXNoZWQnLAogICAgICAgICd2YWx1ZScgPT4gMSwKICAgICAgKSwKICAgICAgJ3ZpZGVvLXRvdXInID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnVmlydHVhbCBUb3VyJywKICAgICAgICAnbGFiZWwyJyA9PiAnVmlkZW8nLAogICAgICAgICd2YWx1ZScgPT4gMSwKICAgICAgKSwKICAgICAgJ3Bvb2wnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnU3dpbW1pbmcgUG9vbCcsCiAgICAgICAgJ2xhYmVsMicgPT4gJ1Bvb2wnLAogICAgICAgICd2YWx1ZScgPT4gMSwKICAgICAgKSwKICAgICAgJ19pZCcgPT4gJzExMzg5ODYnLAogICAgICAnc2VjdGlvbicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAndmFsdWUnID0+ICdtbHMnLAogICAgICApLAogICAgICAnbG9jYWxpdHknID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnV2lsbGVtc3RhZCBFYXN0JywKICAgICAgKSwKICAgICAgJ3JlZ2lvbicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAndmFsdWUnID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICApLAogICAgKSwKICAgICdhY2NvdW50cycgPT4gCiAgICBhcnJheSAoCiAgICAgICdvZmlkMScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnZnRpZCcgPT4gJzEwMDAzOTknLAogICAgICAgICdmdHlwZScgPT4gJ08nLAogICAgICAgICdsYW5ncycgPT4gJ0VOLEVTLERFLE5MJywKICAgICAgICAnbmFtZScgPT4gJ0NFTlRVUlkgMjEgIzEgUmVhbCBFc3RhdGUnLAogICAgICAgICd3d3cnID0+ICdjZW50dXJ5MjFudW1iZXJvbmUuY29tJywKICAgICAgICAnYWRkcmVzcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgMCA9PiAnNjkgQ2FzIENvcmF3ZWcnLAogICAgICAgICAgMSA9PiAnV2lsbGVtc3RhZCBXZXN0LCBCYW5kYSBCb3UnLAogICAgICAgICAgMiA9PiAnQ3VyYcOnYW8nLAogICAgICAgICksCiAgICAgICAgJ3Bob25lcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ29mZmljZScgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjb2RlJyA9PiAnNjYzJywKICAgICAgICAgICAgJ2xhYmVsJyA9PiAnT2ZmaWNlJywKICAgICAgICAgICAgJ2FiYnJ2JyA9PiBOVUxMLAogICAgICAgICAgICAndmFsdWUnID0+ICcwMDE6NTk5IDk6NzM3LTAyMDE6JywKICAgICAgICAgICAgJ3RlbCcgPT4gJzAwMTU5OTk3MzcwMjAxJywKICAgICAgICAgICAgJ3Nob3cnID0+ICcwMDEoNTk5IDkpIDczNy0wMjAxJywKICAgICAgICAgICksCiAgICAgICAgICAnb2ZmaWNlLWZheCcgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjb2RlJyA9PiAnNjY1JywKICAgICAgICAgICAgJ2xhYmVsJyA9PiAnT2ZmaWNlIEZheCcsCiAgICAgICAgICAgICdhYmJydicgPT4gTlVMTCwKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnMDAxOjU5OSA5OjczNy0yMTYwOicsCiAgICAgICAgICAgICd0ZWwnID0+ICcwMDE1OTk5NzM3MjE2MCcsCiAgICAgICAgICAgICdzaG93JyA9PiAnMDAxKDU5OSA5KSA3MzctMjE2MCcsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICksCiAgICAgICdhZ2lkMScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnZnRpZCcgPT4gJzEwMDE5ODgnLAogICAgICAgICdmdHlwZScgPT4gJ0EnLAogICAgICAgICdvZmlkJyA9PiAnMTAwMDM5OScsCiAgICAgICAgJ3RpdGxlJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnbGFiZWwnID0+ICdTYWxlcyBBZ2VudC9Db25zdWx0YW50JywKICAgICAgICApLAogICAgICAgICdmbmFtZScgPT4gJ0FsZXhhbmRlcicsCiAgICAgICAgJ2xuYW1lJyA9PiAnZGUgUm9vaWonLAogICAgICAgICdmdWxsbmFtZScgPT4gJ0FsZXhhbmRlciBkZSBSb29paicsCiAgICAgICAgJ2VtYWlsJyA9PiAnYWxleGRlcm9vaWpAY2VudHVyeTIxbnVtYmVyb25lLmNvbScsCiAgICAgICAgJ3d3dycgPT4gJ2NlbnR1cnkyMW51bWJlcm9uZS5jb20nLAogICAgICAgICdwaG90bycgPT4gJy9pbWFnZXMvYWdlbnRzLzEwMDE5ODgvZi8wLmpwZycsCiAgICAgICAgJ3Bob25lcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ29mZmljZScgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjb2RlJyA9PiAnNjYzJywKICAgICAgICAgICAgJ2xhYmVsJyA9PiAnT2ZmaWNlJywKICAgICAgICAgICAgJ2FiYnJ2JyA9PiBOVUxMLAogICAgICAgICAgICAndmFsdWUnID0+ICcwMDE6NTk5IDk6NzM3LTAyMDE6JywKICAgICAgICAgICAgJ3RlbCcgPT4gJzAwMTU5OTk3MzcwMjAxJywKICAgICAgICAgICAgJ3Nob3cnID0+ICcwMDEoNTk5IDkpIDczNy0wMjAxJywKICAgICAgICAgICksCiAgICAgICAgICAnbW9iaWxlJyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NvZGUnID0+ICc2NzInLAogICAgICAgICAgICAnbGFiZWwnID0+ICdNb2JpbGUnLAogICAgICAgICAgICAnYWJicnYnID0+IE5VTEwsCiAgICAgICAgICAgICd2YWx1ZScgPT4gJzAwMTo1OTkgOTo1MTMtNzkzMzonLAogICAgICAgICAgICAndGVsJyA9PiAnMDAxNTk5OTUxMzc5MzMnLAogICAgICAgICAgICAnc2hvdycgPT4gJzAwMSg1OTkgOSkgNTEzLTc5MzMnLAogICAgICAgICAgKSwKICAgICAgICApLAogICAgICApLAogICAgKSwKICAgICdpc19zb2xkJyA9PiBmYWxzZSwKICAgICdzb2xkX2xhYmVsJyA9PiAnJywKICAgICdoZWFkZXJzJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2dhbGxlcnknID0+ICdQaG90byBHYWxsZXJ5JywKICAgICAgJ21hcGxvYycgPT4gJ01hcCBMb2NhdGlvbicsCiAgICAgICdtYXBzYXQnID0+ICdTYXRlbGl0ZSBWaWV3JywKICAgICAgJ3ZpZGVvcycgPT4gJ1ZpZGVvJywKICAgICAgJ3Z0b3VycycgPT4gJ1ZpcnR1YWwgVG91cicsCiAgICAgICdkaXJlY3Rpb25zJyA9PiAnRGlyZWN0aW9ucycsCiAgICAgICdkZXRhaWxzJyA9PiAnUHJvcGVydHkgRGV0YWlscycsCiAgICAgICdmZWF0dXJlcycgPT4gJ0ZlYXR1cmVzIGFuZCBBbWVuaXRpZXMnLAogICAgICAnZGlhZ25vc3RpY3MnID0+ICdFbmVyZ3kgUGVyZm9ybWFuY2UnLAogICAgICAncmVtYXJrcycgPT4gJ1Byb3BlcnR5IFJlbWFya3MnLAogICAgICAnZGlzY2xvc3VyZXMnID0+ICdEaXNjbG9zdXJlcycsCiAgICAgICdzaW1pbGFyJyA9PiAnU2ltaWxhciBQcm9wZXJ0aWVzJywKICAgICAgJ2ZlYXR1cmVkJyA9PiAnRmVhdHVyZWQgUHJvcGVydGllcycsCiAgICAgICdhZ2VudCcgPT4gJ0FnZW50IERldGFpbHMnLAogICAgICAncmVudGFsaW5mbycgPT4gJ1JlbnRhbCBJbmZvcm1hdGlvbicsCiAgICApLAogICAgJ2hlYWRpbmcnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNycsCiAgICAnc3ViaGVhZGluZycgPT4gJ1dpbGxlbXN0YWQgRWFzdCDCtyBXaWxsZW1zdGFkIEVhc3QgwrcgQ3VyYcOnYW8nLAogICAgJ2lkc2hlYWRpbmcnID0+ICdNTFMjIDExMzg5ODYnLAogICAgJ2J1dHRvbnMnID0+IAogICAgYXJyYXkgKAogICAgICAnZ2VuZXJhbCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdDb250YWN0IFVzJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9jL2NvbnRhY3QtdXMvMTEzODk4NicsCiAgICAgICksCiAgICAgICdpbnF1aXJ5JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ0lucXVpcnknLAogICAgICAgICdocmVmJyA9PiAnL2VuL2MvaW5xdWlyeS8xMTM4OTg2JywKICAgICAgKSwKICAgICAgJ3NlbmR0bycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdTZW5kIHRvJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9jL3NlbmQvMTEzODk4NicsCiAgICAgICksCiAgICAgICdhbGVydCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdBbGVydCcsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9hbGVydC8xMTM4OTg2JywKICAgICAgKSwKICAgICAgJ29wdGluJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ05ld3NsZXR0ZXIgU2lnbi11cCcsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9uZXdzbGV0dGVyLzExMzg5ODYnLAogICAgICApLAogICAgICAnZmF2cycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdGYXZvcml0ZScsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9mYXZvcml0ZXMvMTEzODk4NicsCiAgICAgICksCiAgICAgICdzaGFyZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdTaGFyZScsCiAgICAgICAgJ2hyZWYnID0+IE5VTEwsCiAgICAgICksCiAgICAgICdwZGYnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnUERGJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9hL2Rvd25sb2FkL2N1cmFjYW8tb2NlYW4tcmVzb3J0LXBlbnRob3VzZS03LWNvbmRvLWZvci1zYWxlLTExMzg5ODYucGRmP3YxNTU1MDkyNTE0JywKICAgICAgKSwKICAgICAgJ3NhdmVmYXYnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsX29mZicgPT4gJ1NhdmUnLAogICAgICAgICdsYWJlbF9vbicgPT4gJ1NhdmVkIScsCiAgICAgICksCiAgICAgICdnb2JhY2snID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnR28gQmFjaycsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vZC9jdXJhY2FvLW9jZWFuLXJlc29ydC1wZW50aG91c2UtNy1jb25kb3MtZm9yLXNhbGUtMTEzODk4NicsCiAgICAgICksCiAgICAgICdwcmludCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdQcmludCcsCiAgICAgICAgJ2hyZWYnID0+IE5VTEwsCiAgICAgICksCiAgICApLAogICAgJ3BhZ2VsaW5rJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2xhYmVsJyA9PiAnR28gQmFjaycsCiAgICAgICdocmVmJyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG9zLWZvci1zYWxlLTExMzg5ODYnLAogICAgKSwKICAgICdhZ2VudHMnID0+IAogICAgYXJyYXkgKAogICAgICAxID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvdXJ0ZXN5T2YnID0+IGZhbHNlLAogICAgICAgICdjb21wYW55JyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnYnJhbmQnID0+ICdDRU5UVVJZIDIxJywKICAgICAgICAgICdsZWdhbCcgPT4gJzxzcGFuPiMxPC9zcGFuPiA8c3Bhbj5SZWFsIEVzdGF0ZTwvc3Bhbj4nLAogICAgICAgICAgJ2xvZ28nID0+ICcvYXNzZXRzL2ltYWdlcy90cGwvY2VudHVyeS0yMS1sb2dvLnN2ZycsCiAgICAgICAgICAnbG9nb19hbHQnID0+ICdDRU5UVVJZIDIxICMxIFJlYWwgRXN0YXRlLCBDdXJhJmNjZWRpbDthbycsCiAgICAgICAgKSwKICAgICAgICAndGl0bGUnID0+ICdTYWxlcyBBZ2VudC9Db25zdWx0YW50JywKICAgICAgICAnZnVsbG5hbWUnID0+ICdBbGV4YW5kZXIgZGUgUm9vaWonLAogICAgICAgICdwaG90bycgPT4gJy9pbWFnZXMvYWdlbnRzLzEwMDE5ODgvZi8wLmpwZycsCiAgICAgICAgJ3Bob3RvX2FsdCcgPT4gJ0FsZXhhbmRlciBkZSBSb29paiAtIFNhbGVzIEFnZW50L0NvbnN1bHRhbnQsIENFTlRVUlkgMjEgIzEgUmVhbCBFc3RhdGUnLAogICAgICAgICdwaG9uZXMnID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgICdvZmZpY2UnID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnaWNvbicgPT4gJ2ZhLXZvbHVtZS1jb250cm9sLXBob25lJywKICAgICAgICAgICAgJ2xhYmVsJyA9PiAnT2ZmaWNlJywKICAgICAgICAgICAgJ3RpdGxlJyA9PiAnT2ZmaWNlJywKICAgICAgICAgICAgJ3RlbCcgPT4gJzU5OTk3MzcwMjAxJywKICAgICAgICAgICAgJ3Nob3cnID0+ICcoNTk5IDkpIDczNy0wMjAxJywKICAgICAgICAgICksCiAgICAgICAgICAnbW9iaWxlJyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2ljb24nID0+ICdmYS1tb2JpbGUnLAogICAgICAgICAgICAnbGFiZWwnID0+ICdNb2JpbGUnLAogICAgICAgICAgICAndGl0bGUnID0+ICdNb2JpbGUnLAogICAgICAgICAgICAndGVsJyA9PiAnNTk5OTUxMzc5MzMnLAogICAgICAgICAgICAnc2hvdycgPT4gJyg1OTkgOSkgNTEzLTc5MzMnLAogICAgICAgICAgKSwKICAgICAgICApLAogICAgICAgICdlbWFpbCcgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ2ljb24nID0+ICdmYS1lbnZlbG9wZScsCiAgICAgICAgICAnbGFiZWwnID0+ICdFbWFpbCcsCiAgICAgICAgICAndGl0bGUnID0+ICdlbWFpbCBBbGV4YW5kZXIgZGUgUm9vaWonLAogICAgICAgICAgJ3Nob3cnID0+ICdhbGV4QGMyMWN1cmFjYW8uY29tJywKICAgICAgICAgICdsaW5rJyA9PiAnIycsCiAgICAgICAgKSwKICAgICAgICAndm9pcCcgPT4gTlVMTCwKICAgICAgICAnc29jaWFsJyA9PiBOVUxMLAogICAgICApLAogICAgKSwKICAgICdwcmljZXMnID0+IAogICAgYXJyYXkgKAogICAgICAnYXNraW5nJyA9PiAnVVMkIDg5MywwMDAnLAogICAgICAnb3RoZXJzJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdBTkcnID0+ICdBTsaSIDEuNjA3LjQwMC08c3VwPsK5PC9zdXA+wrknLAogICAgICAgICdFVVInID0+ICdFVeKCrCA3NTcgNDk1PHN1cD7CuTwvc3VwPsK5JywKICAgICAgKSwKICAgICAgJ2NsYXNzJyA9PiAnJywKICAgICAgJ3Bvc3RmaXgnID0+ICcnLAogICAgICAnZXh0cmEnID0+IGZhbHNlLAogICAgKSwKICAgICdpdGVtcHJvcCcgPT4gCiAgICBhcnJheSAoCiAgICAgICdhZGRyZXNzJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdzdHJlZXRBZGRyZXNzJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcnLAogICAgICAgICdhZGRyZXNzTG9jYWxpdHknID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICAgICdhZGRyZXNzUmVnaW9uJyA9PiAnV2lsbGVtc3RhZCBFYXN0JywKICAgICAgICAnYWRkcmVzc0NvdW50cnknID0+ICdDdXJhw6dhbycsCiAgICAgICksCiAgICAgICdvZmZlcicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAncHJpY2UnID0+ICc4OTMwMDAuMDAnLAogICAgICAgICdwcmljZUN1cnJlbmN5JyA9PiAnVVNEJywKICAgICAgICAncHJpY2VWYWxpZFVudGlsJyA9PiAnMjAyMC0xMS0wOFQwNjo0MjoxOCswMDAwJywKICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2MvaW5xdWlyeS8xMTM4OTg2JywKICAgICAgICAndmFsaWRGcm9tJyA9PiAnMjAxOC0xMS0yMFQxMjowMCcsCiAgICAgICAgJ2F2YWlsYWJpbGl0eScgPT4gJ2h0dHA6Ly9zY2hlbWEub3JnL0luU3RvY2snLAogICAgICApLAogICAgICAncHJvZHVjdCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnc2t1JyA9PiAnUkVTMTEzODk4NicsCiAgICAgICAgJ3Byb2R1Y3RJRCcgPT4gJzExMzg5ODYnLAogICAgICAgICduYW1lJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcnLAogICAgICAgICdkZXNjcmlwdGlvbicgPT4gJ1Vwb24gZW50ZXJpbmcgdGhpcyB1bmlxdWUgZ2VtIGxvY2F0ZWQgYXQgb25lIG9mIHRoZSBuaWNlc3QgbG9jYXRpb25zL3Jlc29ydHMgb24gY3VyYWNhbyB5b3UgZmluZCB5b3Vyc2VsZiBxdWlja2x5IHN0YW5kaW5nIG9uIGEgc3BhY2lvdXMgdGVycmFjZSB3aXRoIGFuIGluY3JlYWRpYmx5IGJlYXV0aWZ1bCB2aWV3IG92ZXIgdGhlIGNhcmliYmVhbiBzZWEuIFRoZSBzcGFjaW91cyBwb3JjaCBvZmZlcnMgcGxlbnR5IG9mIHJvb20gYW5kIGhhcyBhIGdyZWF0IGJyZWV6ZS4gVGhlIG9wZW4gZmxvb3IgcGxhbiBjb25uZWN0cyB0aGUgdGVycmFjZSB0byB0aGUgY296eSBsaXZpbmcgcm9vbSBhbmQgdGhlIHNwYWNpb3VzLCBmdWxseSBlcXVpcHBlZCBraXRjaGVuLCB0aGUgdmlldyBjYW4gYmUgZW5qb3llZCBmcm9tIGV2ZXJ5IGNvcm5lciBvZiB0aGUgbGl2aW5nIGFyZWEuIFRoZSBraXRjaGVuIGluY2x1ZGVzIGEgbGFyZ2UgYW1lcmljYW4gZnJpZGdlIHdpdGggZnJlZXplciBhbmQgaWNlIG1ha2VyLCBhIGJ1aWx0LWluIHNpZW1lbnMgY29mZmVlIG1hY2hpbmUsIGEgZGlzaHdhc2hlciwgYSBsYXJnZSBnYXMgc3RvdmUgYW5kIG92ZW4uIFRvIHRoZSBiYWNrIGVuZCBvZiB0aGUgYXBhcnRtZW50IHlvdSB3aWxsIGZpbmQgdHdvIHNwYWNpb3VzIGd1ZXN0IGJlZHJvb21zIHRoYXQgc2hhcmUgYSBsYXJnZSBndWVzdCBiYXRocm9vbSwgYm90aCBiZWRyb29tcyBmZWF0dXJlIGJ1aWxkLWluIGNsb3NldHMuIFNhdmluZyB0aGUgYmVzdCBmb3IgbGFzdCBpcyB0aGUgbWFzdGVyIHN1aXRlIHdoaWNoIGlzIGxvY2F0ZWQgb24gdGhlIHNlY29uZCBmbG9vci4gVGhlIG1hc3RlciBzdWl0ZSBvZmZlcnMgYSBwcml2YXRlIGJhbGNvbnkgd2l0aCBldmVuIGEgZnVsbCBwYW5vcmFtYSB2aWV3LCBzcGFjaW91cyBsb3VuZ2UgYXJlYSwgYSBsYXJnZSBidWlsZCBpbiBjbG9zZXQsIGEgaGlnaCBjZWlsaW5nIGFuZCBhIGx1eHVyaW91cyBiYXRocm9vbS4gVGhlIG1vbnRobHkgY29zdHMgZm9yIHRoZSByZXNvcnQgYW1vdW50IHVwIHRvbyBhbmcgNDAwLC0gd2hpY2ggaXMgdmVyeSByZWFzb25hYmxlLiBJdCBpcyBwb3NzaWJsZSB0byBwdXJjaGFzZSB0aGUgYXBhcnRtZW50IGZ1bGx5IGZ1cm5pc2hlZC4gVGhlIHBlbnRob3VzZXMgb2ZmZXJzIGEgc3RvcmFnZSB1bml0IGFuZCBhIGNvdmVyZWQgcGFya2luZyBzcGFjZSBhdCBncm91bmQgbGV2ZWwuIERvblwndCBoZXNpdGF0ZSB0byBjb250YWN0IHVzIGltbWVkaWF0ZWx5IHRvIHZpZXcgdGhpcyBwZW50aG91c2UgYW5kIGVuam95IHRoaXMgYmVhdXR5IGZvciB5b3Vyc2VsZi4gQ3VyYWNhbyBvY2VhbiByZXNvcnQgdGhlIGN1cmFjYW8gb2NlYW4gcmVzb3J0IGlzIGFuIG9uZSBvZiBhIGtpbmQgcGxhY2UuIFRoaXMgZ2F0ZWQgcmVzb3J0IGlzIHVuaXF1ZSBiZWNhdXNlIG9mIGl0cyBtaXh0dXJlIG9mIGEgcGVhY2VmdWwgYW5kIHF1aWV0IGxpdmluZyBvbiB0aGUgbW92aW5nIGFuZCBsaXZpbmcgY3VyYWNhbyBiZWFjaCBib3VsZXZhcmQuIEN1cmFjYW8gb2NlYW4gcmVzb3J0IGlzIGluY2x1ZGVkIHdpdGggYSBwcml2YXRlIGJlYWNoIGFuZCBhIHNwYWNpb3VzIHN3aW1taW5nIHBvb2wuIEZyb20geW91ciBvd24gYXBhcnRtZW50IHlvdSBjYW4gc2VlIHRoZSBkb2xwaGlucyBmcm9tIHRoZSBkb2xwaGluIGFjYWRlbXkuIFRoZSBtb3N0IGtub3duIGFuZCB2aXNpdGVkIG5pZ2h0bGlmZSwgc3RvcmVzLCBiYXJzLCByZXN0YXVyYW50cywgZml0bmVzcywgc3BhLCBjYXNpbm8sIHJlc29ydHMsIGJlYWNoIGNsdWJzIGFuZCBiZWFjaGVzIGFyZSBvbiBhIHdhbGtpbmcgZGlzdGFuY2UuIFRoZSBjZW50ZXIgb2Ygd2lsbGVtc3RhZCBpcyBvbmx5IGEgNSBtaW51dGVzXCcgZHJpdmUuJywKICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2QvMTEzODk4NicsCiAgICAgICAgJ2ltYWdlJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYveGxnLzAuanBnJywKICAgICAgICAnb2ZmZXJzJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAncHJpY2UnID0+ICc4OTMwMDAuMDAnLAogICAgICAgICAgJ3ByaWNlQ3VycmVuY3knID0+ICdVU0QnLAogICAgICAgICAgJ3ByaWNlVmFsaWRVbnRpbCcgPT4gJzIwMjAtMTEtMDhUMDY6NDI6MTgrMDAwMCcsCiAgICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2MvaW5xdWlyeS8xMTM4OTg2JywKICAgICAgICAgICd2YWxpZEZyb20nID0+ICcyMDE4LTExLTIwVDEyOjAwJywKICAgICAgICAgICdhdmFpbGFiaWxpdHknID0+ICdodHRwOi8vc2NoZW1hLm9yZy9JblN0b2NrJywKICAgICAgICApLAogICAgICAgICdicmFuZCcgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ25hbWUnID0+ICdDRU5UVVJZIDIxJywKICAgICAgICApLAogICAgICAgICdzZWxsZXInID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgICdsZWdhbE5hbWUnID0+ICdDRU5UVVJZIDIxICMxIFJlYWwgRXN0YXRlJywKICAgICAgICAgICdsb2dvJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL21scy5jZG4vaW1hZ2VzL2xvZ29zLzEwMDAzOTkvMTUweDUwLmpwZycsCiAgICAgICAgICAnZW1wbG95ZWUnID0+ICdBbGV4YW5kZXIgZGUgUm9vaWonLAogICAgICAgICAgJ3RlbGVwaG9uZScgPT4gJzAwMSg1OTkgOSkgNzM3LTAyMDEnLAogICAgICAgICAgJ3VybCcgPT4gJ2h0dHA6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tJywKICAgICAgICApLAogICAgICAgICdhZGRpdGlvbmFsUHJvcGVydHknID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgIDAgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnQ291bnRyeScsCiAgICAgICAgICAgICd2YWx1ZScgPT4gJ0N1cmHDp2FvJywKICAgICAgICAgICksCiAgICAgICAgICAxID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnbmFtZScgPT4gJ1Byb3BlcnR5IENsYXNzJywKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnUmVzaWRlbnRpYWwnLAogICAgICAgICAgKSwKICAgICAgICAgIDIgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnUHJvcGVydHkgQ2F0ZWdvcnknLAogICAgICAgICAgICAndmFsdWUnID0+ICdDb25kb3MvQXBhcnRtZW50cycsCiAgICAgICAgICApLAogICAgICAgICAgMyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdUcmFuc2FjdGlvbiBUeXBlJywKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnRm9yIFNhbGUnLAogICAgICAgICAgKSwKICAgICAgICAgIDQgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnQmVkcm9vbXMnLAogICAgICAgICAgICAndmFsdWUnID0+IDMsCiAgICAgICAgICApLAogICAgICAgICAgNSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdCYXRocm9vbXMnLAogICAgICAgICAgICAndmFsdWUnID0+IDIsCiAgICAgICAgICApLAogICAgICAgICAgNiA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdMaXZpbmcgU3BhY2UnLAogICAgICAgICAgICAndmFsdWUnID0+ICcyNTAgbcKyJywKICAgICAgICAgICksCiAgICAgICAgKSwKICAgICAgKSwKICAgICAgJ2V2ZW50JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICduYW1lJyA9PiAnRm9yIFNhbGU6IENvbmRvcy9BcGFydG1lbnRzIC0gV2lsbGVtc3RhZCBFYXN0LCBDdXJhJmNjZWRpbDthbycsCiAgICAgICAgJ2xvY2F0aW9uJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnbmFtZScgPT4gJ1dpbGxlbXN0YWQgRWFzdCBDb25kb3MvQXBhcnRtZW50cycsCiAgICAgICAgICAnYWRkcmVzcycgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdzdHJlZXRBZGRyZXNzJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcnLAogICAgICAgICAgICAnYWRkcmVzc0xvY2FsaXR5JyA9PiAnV2lsbGVtc3RhZCBFYXN0JywKICAgICAgICAgICAgJ2FkZHJlc3NSZWdpb24nID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICAgICAgICAnYWRkcmVzc0NvdW50cnknID0+ICdDdXJhw6dhbycsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICAgJ29mZmVycycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ3ByaWNlJyA9PiAnODkzMDAwLjAwJywKICAgICAgICAgICdwcmljZUN1cnJlbmN5JyA9PiAnVVNEJywKICAgICAgICAgICdwcmljZVZhbGlkVW50aWwnID0+ICcyMDIwLTExLTA4VDA2OjQyOjE4KzAwMDAnLAogICAgICAgICAgJ3VybCcgPT4gJ2h0dHBzOi8vY2VudHVyeTIxbnVtYmVyb25lLmNvbS9lbi9jL2lucXVpcnkvMTEzODk4NicsCiAgICAgICAgICAndmFsaWRGcm9tJyA9PiAnMjAxOC0xMS0yMFQxMjowMCcsCiAgICAgICAgICAnYXZhaWxhYmlsaXR5JyA9PiAnaHR0cDovL3NjaGVtYS5vcmcvSW5TdG9jaycsCiAgICAgICAgKSwKICAgICAgICAnaW1hZ2UnID0+ICdodHRwczovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20vbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni94bGcvMC5qcGcnLAogICAgICAgICdkZXNjcmlwdGlvbicgPT4gJ1Vwb24gZW50ZXJpbmcgdGhpcyB1bmlxdWUgZ2VtIGxvY2F0ZWQgYXQgb25lIG9mIHRoZSBuaWNlc3QgbG9jYXRpb25zL3Jlc29ydHMgb24gY3VyYWNhbyB5b3UgZmluZCB5b3Vyc2VsZiBxdWlja2x5IHN0YW5kaW5nIG9uIGEgc3BhY2lvdXMgdGVycmFjZSB3aXRoIGFuIGluY3JlYWRpYmx5IGJlYXV0aWZ1bCB2aWV3IG92ZXIgdGhlIGNhcmliYmVhbiBzZWEuIFRoZSBzcGFjaW91cyBwb3JjaCBvZmZlcnMgcGxlbnR5IG9mIHJvb20gYW5kIGhhcyBhIGdyZWF0IGJyZWV6ZS4gVGhlIG9wZW4gZmxvb3IgcGxhbiBjb25uZWN0cyB0aGUgdGVycmFjZSB0byB0aGUgY296eSBsaXZpbmcgcm9vbSBhbmQgdGhlIHNwYWNpb3VzLCBmdWxseSBlcXVpcHBlZCBraXRjaGVuLCB0aGUgdmlldyBjYW4gYmUgZW5qb3llZCBmcm9tIGV2ZXJ5IGNvcm5lciBvZiB0aGUgbGl2aW5nIGFyZWEuIFRoZSBraXRjaGVuIGluY2x1ZGVzIGEgbGFyZ2UgYW1lcmljYW4gZnJpZGdlIHdpdGggZnJlZXplciBhbmQgaWNlIG1ha2VyLCBhIGJ1aWx0LWluIHNpZW1lbnMgY29mZmVlIG1hY2hpbmUsIGEgZGlzaHdhc2hlciwgYSBsYXJnZSBnYXMgc3RvdmUgYW5kIG92ZW4uIFRvIHRoZSBiYWNrIGVuZCBvZiB0aGUgYXBhcnRtZW50IHlvdSB3aWxsIGZpbmQgdHdvIHNwYWNpb3VzIGd1ZXN0IGJlZHJvb21zIHRoYXQgc2hhcmUgYSBsYXJnZSBndWVzdCBiYXRocm9vbSwgYm90aCBiZWRyb29tcyBmZWF0dXJlIGJ1aWxkLWluIGNsb3NldHMuIFNhdmluZyB0aGUgYmVzdCBmb3IgbGFzdCBpcyB0aGUgbWFzdGVyIHN1aXRlIHdoaWNoIGlzIGxvY2F0ZWQgb24gdGhlIHNlY29uZCBmbG9vci4gVGhlIG1hc3RlciBzdWl0ZSBvZmZlcnMgYSBwcml2YXRlIGJhbGNvbnkgd2l0aCBldmVuIGEgZnVsbCBwYW5vcmFtYSB2aWV3LCBzcGFjaW91cyBsb3VuZ2UgYXJlYSwgYSBsYXJnZSBidWlsZCBpbiBjbG9zZXQsIGEgaGlnaCBjZWlsaW5nIGFuZCBhIGx1eHVyaW91cyBiYXRocm9vbS4gVGhlIG1vbnRobHkgY29zdHMgZm9yIHRoZSByZXNvcnQgYW1vdW50IHVwIHRvbyBhbmcgNDAwLC0gd2hpY2ggaXMgdmVyeSByZWFzb25hYmxlLiBJdCBpcyBwb3NzaWJsZSB0byBwdXJjaGFzZSB0aGUgYXBhcnRtZW50IGZ1bGx5IGZ1cm5pc2hlZC4gVGhlIHBlbnRob3VzZXMgb2ZmZXJzIGEgc3RvcmFnZSB1bml0IGFuZCBhIGNvdmVyZWQgcGFya2luZyBzcGFjZSBhdCBncm91bmQgbGV2ZWwuIERvblwndCBoZXNpdGF0ZSB0byBjb250YWN0IHVzIGltbWVkaWF0ZWx5IHRvIHZpZXcgdGhpcyBwZW50aG91c2UgYW5kIGVuam95IHRoaXMgYmVhdXR5IGZvciB5b3Vyc2VsZi4gQ3VyYWNhbyBvY2VhbiByZXNvcnQgdGhlIGN1cmFjYW8gb2NlYW4gcmVzb3J0IGlzIGFuIG9uZSBvZiBhIGtpbmQgcGxhY2UuIFRoaXMgZ2F0ZWQgcmVzb3J0IGlzIHVuaXF1ZSBiZWNhdXNlIG9mIGl0cyBtaXh0dXJlIG9mIGEgcGVhY2VmdWwgYW5kIHF1aWV0IGxpdmluZyBvbiB0aGUgbW92aW5nIGFuZCBsaXZpbmcgY3VyYWNhbyBiZWFjaCBib3VsZXZhcmQuIEN1cmFjYW8gb2NlYW4gcmVzb3J0IGlzIGluY2x1ZGVkIHdpdGggYSBwcml2YXRlIGJlYWNoIGFuZCBhIHNwYWNpb3VzIHN3aW1taW5nIHBvb2wuIEZyb20geW91ciBvd24gYXBhcnRtZW50IHlvdSBjYW4gc2VlIHRoZSBkb2xwaGlucyBmcm9tIHRoZSBkb2xwaGluIGFjYWRlbXkuIFRoZSBtb3N0IGtub3duIGFuZCB2aXNpdGVkIG5pZ2h0bGlmZSwgc3RvcmVzLCBiYXJzLCByZXN0YXVyYW50cywgZml0bmVzcywgc3BhLCBjYXNpbm8sIHJlc29ydHMsIGJlYWNoIGNsdWJzIGFuZCBiZWFjaGVzIGFyZSBvbiBhIHdhbGtpbmcgZGlzdGFuY2UuIFRoZSBjZW50ZXIgb2Ygd2lsbGVtc3RhZCBpcyBvbmx5IGEgNSBtaW51dGVzXCcgZHJpdmUuJywKICAgICAgICAnc3RhcnREYXRlJyA9PiAnMjAxOC0xMS0yMFQxMjowMCcsCiAgICAgICAgJ2VuZERhdGUnID0+ICcyMDIwLTExLTA4VDA2OjQyOjE4KzAwMDAnLAogICAgICAgICd1cmwnID0+ICdodHRwczovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20vZW4vZC9jdXJhY2FvLW9jZWFuLXJlc29ydC1wZW50aG91c2UtNy1jb25kb3MtZm9yLXNhbGUtMTEzODk4NicsCiAgICAgICAgJ3BlcmZvcm1lcicgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ25hbWUnID0+ICdDRU5UVVJZIDIxICMxIFJlYWwgRXN0YXRlJywKICAgICAgICApLAogICAgICApLAogICAgKSwKICAgICdtYXAnID0+IAogICAgYXJyYXkgKAogICAgICAnbGF0JyA9PiAnMTIuMDg0NTI3NjA1MTUxMDQ3MCcsCiAgICAgICdsbmcnID0+ICctNjguODk0NDYwNzgzNzc2NjAwMCcsCiAgICAgICdjb29yZHMnID0+ICcxMi4wODQ1Mjc2MDUxNTEwNDcwLC02OC44OTQ0NjA3ODM3NzY2MDAwJywKICAgICAgJ2RpcmVjdGlvbnMnID0+ICdodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZGlyL0N1cmElQzMlQTdhbyUyQkludGVybmF0aW9uYWwlMkJBaXJwb3J0JTJDJTJCQ3VyYSVDMyVBN2FvLzEyLjA4NDUyNzYwNTE1MTA0NzAsLTY4Ljg5NDQ2MDc4Mzc3NjYwMDAvQDEyLjE0MDcwMTMsLTY4Ljk2NTgzODMsMTN6JywKICAgICksCiAgICAnbWVkaWEnID0+IAogICAgYXJyYXkgKAogICAgICAnZ2FsbGVyeScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWxzJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAncHJldicgPT4gJ1ByZXZpb3VzJywKICAgICAgICAgICduZXh0JyA9PiAnTmV4dCcsCiAgICAgICAgICAnbm9fcGhvdG9zJyA9PiAnU29ycnkuIE5vIFBob3RvcyBBdmFsYWlibGUuJywKICAgICAgICApLAogICAgICAgICdwaG90b3MnID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgIDAgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcnLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8wLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygyKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzEuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAyID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDMpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMi5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDMgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoNCknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8zLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgNCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNyg1KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzQuanBnJywKICAgICAgICAgICksCiAgICAgICAgICA1ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDYpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvNS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDYgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoNyknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi82LmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgNyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNyg4KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzcuanBnJywKICAgICAgICAgICksCiAgICAgICAgICA4ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDkpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvOC5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDkgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMTApJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvOS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDEwID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDExKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzEwLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTEgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMTIpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMTEuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxMiA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygxMyknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8xMi5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDEzID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDE0KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzEzLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTQgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMTUpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMTQuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxNSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygxNiknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8xNS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDE2ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDE3KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzE2LmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTcgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMTgpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMTcuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxOCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygxOSknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8xOC5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDE5ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDIwKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzE5LmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMjAgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMjEpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMjAuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAyMSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygyMiknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8yMS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDIyID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDIzKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzIyLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMjMgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnQ3VyYWNhbyBPY2VhbiBSZXNvcnQgUGVudGhvdXNlIDcoMjQpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTM4OTg2L2YvMjMuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAyNCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdDdXJhY2FvIE9jZWFuIFJlc29ydCBQZW50aG91c2UgNygyNSknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExMzg5ODYvZi8yNC5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDI1ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3KDI2KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTEzODk4Ni9mLzI1LmpwZycsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICksCiAgICAgICdtYXBsb2MnID0+ICdodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZW1iZWQ/cGI9ITFtMTghMW0xMiExbTMhMWQxNTA2My42OTY0MDY4OCEyZC02OC44OTQ0NjA3ODM3NzY1OSEzZDEyLjA4NDUyNzYwNTE1MTA1ITJtMyExZjAhMmYwITNmMCEzbTIhMWkxMDI0ITJpNzY4ITRmMTMuMSEzbTMhMW0yITFzMHgwJTNBMHgwITJ6TVRMQ3NEVW5NRFF1TXlKT0lEWTR3ckExTXljME1DNHhJbGMhNWUwITNtMiExc2VuITJzY2EhNHYxNTk2ODY4OTM4NzcwITVtMiExc2VuITJzY2EnLAogICAgICAndmlkZW9zJyA9PiBmYWxzZSwKICAgICAgJ3Z0b3VycycgPT4gZmFsc2UsCiAgICApLAogICksCiAgJ2VUYWcnID0+ICdkLjEuZW4uMTEzODk4NicsCiAgJ21heEFnZScgPT4gMTQ0MDAsCiAgJ21heERlZkhvdXJzJyA9PiA0LAogICdlVGFnQXJyJyA9PiAKICBhcnJheSAoCiAgICAnaWNpZCcgPT4gJ3VzJywKICAgICd0aHJlYXQnID0+IDEsCiAgICAncm9ib3QnID0+IDAsCiAgICAnbGFuZycgPT4gJ2VuJywKICAgICdhY2N0SWQnID0+ICcxMDAwMzk5JywKICAgICdsaWQnID0+ICcxMTM4OTg2JywKICAgICdsYXN0dXBkYXRlJyA9PiAxNTU1MDkyNTE0LAogICAgJ3N0cmluZycgPT4gJ2QuMS5lbi4xMTM4OTg2JywKICAgICdtYXhBZ2UnID0+IDE0NDAwLAogICAgJ21heERlZkhvdXJzJyA9PiA0LAogICksCiAgJ01ldGFJbmZvJyA9PiAKICBhcnJheSAoCiAgICAnc2l0ZV9uYW1lJyA9PiAnQ0VOVFVSWSAyMSBOdW1iZXIgT25lJywKICAgICd0aXRsZScgPT4gJ0N1cmFjYW8gT2NlYW4gUmVzb3J0IFBlbnRob3VzZSA3IC0gQ29uZG9zIEZvciBTYWxlICBDdXJhw6dhbyB8IENlbnR1cnkgMjEgQ3VyYcOnYW8gUmVhbCBFc3RhdGUnLAogICAgJ2Rlc2NyaXB0aW9uJyA9PiAnVXBvbiBlbnRlcmluZyB0aGlzIHVuaXF1ZSBnZW0gbG9jYXRlZCBhdCBvbmUgb2YgdGhlIG5pY2VzdCBsb2NhdGlvbnNyZXNvcnRzIG9uIGN1cmFjYW8geW91IGZpbmQgeW91cnNlbGYgcXVpY2tseSBzdGFuZGluZyBvbiBhIHNwYWNpb3VzIHRlcnJhY2Ugd2l0aCBhbiBpbmNyLi4uJywKICAgICdjYW5vbmljYWwnID0+ICdodHRwczovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20vZW4vZC8xMTM4OTg2JywKICAgICdhbXBodG1sJyA9PiAnL2FtcC9lbi9kLzExMzg5ODYnLAogICAgJ2xvY2FsZScgPT4gJ2VuLVVTJywKICApLAogICd1cmlfYWx0ZXJuYXRlcycgPT4gCiAgYXJyYXkgKAogICAgJ2VuJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2xhbmcnID0+ICdlbicsCiAgICAgICdsYWJlbCcgPT4gJ0VuZ2xpc2gnLAogICAgICAnZmxhZycgPT4gJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBTENBSUFBQUQ1Z0pwdUFBQUFCR2RCVFVFQUFLL0lOd1dLNlFBQUFCbDBSVmgwVTI5bWRIZGhjbVVBUVdSdlltVWdTVzFoWjJWU1pXRmtlWEhKWlR3QUFBSHpTVVJCVkhqYVlreE9QOElBQi8vK01mejd3OER3aTRIaFA1Q2NKYi9uLzdldmIxNi9BUEwvZ1JGUURpQUF3M0p1QWdBSUJFRFEvaXN3RUVSakd6QlFMRXJ1OTdsbDBnMCszSHZxTW4xU3BxbHFHc1pNc1pzSWUwU0lDQTVndDVhL0FHSUVhckNQdEZoKzZOL2Zmd3hBOU92UC83Ly9RWXdmZi82ZlphaG1lUGVCNGROSGhpK2ZHYjU5WTR6eXZISG1DRUFBQVczWUR6UVlhSko5M2Erdlg3OWFWZjU4Ly82OWZ2RVBscElmbno1OSt2RGh3N3QzNzk2OGVmUDNiL1NYTDU5T25qd0lFRUFzRFArWWdZNTNiMmI4OSsrL2F3dkxuOThNRGkyY1Z4bCsvdmw2bWl0dUN0QmdoaTlmL3YvNDhlL1hMODZrcmo5WHp3RUVFRU55OGc2Z3UyMnJmbjc4K05HczVPZnIxNitaQzU4K2Z2eVl3WDhyeE94WHIxNjlmUG55K2ZQbjEvLzkzYkpsQlVBQXNRQURaTUVCeGo5L0dCeGIyUC85K1MvUjh1M3Z6eHV5YVg4Wkh2M2o4L1lHbXMzdzh5Y1FBUm1pMmVFMzd0NEFDQ0RHUjQvdVNrcktBUzM1QjNUVC8vLy93QURPZ0xPQklhWEl5akJsd3hLQUFHS1JYakNCMFNPRWFldSsveTlmTW56NEFIUXhDUDM0OFIvbytsKy8vc01aUUJOTEV2aWYzQWNJSU1aYnR5N0x5NnQ5Wm1YbCtmWGovMzhHb0hIL1VjR2ZQNzkvL0JCaVlIank5Kzgvb1VrTkFBSEV3dDFWL3ZJL0tCWS9RU0lTRnFNL0dCZytNekI4QTZQZllDNUVGaURBQUJxZ1c3NzZNUDByQUFBQUFFbEZUa1N1UW1DQycsCiAgICAgICdocmVmJyA9PiAnL2VuL2QvY3VyYWNhby1vY2Vhbi1yZXNvcnQtcGVudGhvdXNlLTctY29uZG8tZm9yLXNhbGUtMTEzODk4NicsCiAgICApLAogICAgJ25sJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2xhbmcnID0+ICdubCcsCiAgICAgICdsYWJlbCcgPT4gJ05lZGVybGFuZHMnLAogICAgICAnZmxhZycgPT4gJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBTENBSUFBQUQ1Z0pwdUFBQUFCR2RCVFVFQUFLL0lOd1dLNlFBQUFCbDBSVmgwVTI5bWRIZGhjbVVBUVdSdlltVWdTVzFoWjJWU1pXRmtlWEhKWlR3QUFBRlhTVVJCVkhqYVl2elBnQUQvVU5sWUVVQUFrdVRnQ0FBSUJnSmdncTVWb0FzMXFNMHZkem1NejM2MnZlempva3hQR2lta0VRNVdvQVFFS3VLNzF6d0NDS3lCNGMvL0o4K0JTaG4rL3Z2Lyt3L0QzOTlBRW94Ky8vOEZKSC85L3dVVStjVW9LdzIwQVNDQVdCaEVEZi9MeURPdzg0QlUvL2tEdGdHSS9vQVJtQUhSREpRU0Z3VnFBQWdneG84ZlAvTHk4b0tjOVA4L0F4amlBb3lNakE4ZVBBQUlJSlovLy81QlZJTTBNT0JXRHBSbFpQeno1dzlBQUxIOGd5dkNiejdRQnJDSkFBSEV5S0RZWDE1ci8rajExOTkvL3YzNSsrL1huNysvLy83N0RTVC93TWwvZjREazM3OEs0ang3TzJjQUJCQUx3N05QNzcvK2V2M3hCMGdPcE9IZnI5OUFkWDkvZ1RWQVNLQ0dQLy8rOFhDeU1qQzhBd2dnRm9aZklIV1N3cHdRazRDVy9BWWpzS2xBOHUrZmYvLy8vdjMzOTk4L1lQZ0JuUVFRUUl6QWFHTmcrQVZHZjVBWWY1QkUvb0NqR0VJeUFRUVlBR3ZLWjRDNit4WFJBQUFBQUVsRlRrU3VRbUNDJywKICAgICAgJ2hyZWYnID0+ICcvbmwvZC9jdXJhY2FvLW9jZWFuLXJlc29ydC1wZW50aG91c2UtNy1hcHBhcnRlbWVudC10ZS1rb29wLTExMzg5ODYnLAogICAgKSwKICAgICdlcycgPT4gCiAgICBhcnJheSAoCiAgICAgICdsYW5nJyA9PiAnZXMnLAogICAgICAnbGFiZWwnID0+ICdFc3Bhw7FvbCcsCiAgICAgICdmbGFnJyA9PiAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFMQ0FJQUFBRDVnSnB1QUFBQUJHZEJUVUVBQUsvSU53V0s2UUFBQUJsMFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1NXMWhaMlZTWldGa2VYSEpaVHdBQUFGblNVUkJWSGphWXZ6UGdBRC9VTmxZRVVBQW11VFlBQUFRaEFFWXFGL3pGYmU1MFJaMWNNbVM5VExpMHBKTFJqWm9oQU1UR0ZVTjlIZG5IZ0VFMXNEdy8vK1RwMENsSU5XL2YwTklLUG9GSkgvOS8vVUx5R2FVbFFYYUFCQkFMQXgvR2Y0ekF0MzFGNGkrZmZqMy9jTi9YckZmek94Ly92Ly8vZi8vTHpBQ00vNzlabUQ4L2U4VEEwQUFNWUhkRFZUOTU4dlhQMzhuTURCMHMzeDk0L1RqNXkrWWFoaGlBS0xmUUtVQUFjUUVkdEpmb0RITUYyTCt2UHpEbUZYTGVsZjU1MXRHRk9PaGV2NEEvUWdRUUV4Z0h3QWQ4SWRGVC9XejZqK0dobHBtWFNPVy8yei8vLzhFcS9zSjE4RHcvemRRQTBBQU1RRXh4SmpqZHk5eDIvNzZFZkx6NE1YZFAvaSt3c3lHa2tBM0F3Mzk4NGNCSUlBWWZ6SXdNS2VsL2J0M2p3RWFMTkF3Z1pJUXhwL2ZESC8rTXFxb3ZMMTRFU0NBV0lDZVp2cjloMEZTRWhTZ3dCZ0F5Z0ZERU1UK3d3QWhnUWdjNGtBRVZBd1FRSXhmVVNNU1R4eERBRUNBQVFBSldrZTh2NHUxdEFBQUFBQkpSVTVFcmtKZ2dnPT0nLAogICAgICAnaHJlZicgPT4gJy9lcy9kL2N1cmFjYW8tb2NlYW4tcmVzb3J0LXBlbnRob3VzZS03LWFwYXJ0YW1lbnRvLWVuLXZlbnRhLTExMzg5ODYnLAogICAgKSwKICAgICdkZScgPT4gCiAgICBhcnJheSAoCiAgICAgICdsYW5nJyA9PiAnZGUnLAogICAgICAnbGFiZWwnID0+ICdEZXV0c2NoJywKICAgICAgJ2ZsYWcnID0+ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQUxDQUlBQUFENWdKcHVBQUFBQkdkQlRVRUFBSy9JTndXSzZRQUFBQmwwUlZoMFUyOW1kSGRoY21VQVFXUnZZbVVnU1cxaFoyVlNaV0ZrZVhISlpUd0FBQUd6U1VSQlZIamFZdlR4Y1diNCs1M2gzejhHWnBaZmYvNzkrdjNuLzcvZkRBei9HSEFBZ0FCaStmMzdlM0Z4T1pEMUR3eisvdjN6OXkrRS9BTUZ2My8vK1F1bWZ2OWV0MjQxUUFDeE1ERXhBVldmT0hrSkpBRVcvZ1VFUDBFUURuNzgrQUhFL2dGT1FKVUFBY1FpeThBZzhPK2ZMRmoxbjErL1FEcCsvZ1Fpb0s3ZlAzNzgrdmtEcU9IMzl4OUEvUkovZ0U1bEFBaEFZaHpjQUFDQ1FCRGtnUlhSalAwMzRSMElhRFRaVEZabjBESXRvdDM3Uzk0S0xPSU5lckVjSTdhS0hBSEU4di8zci85Ly96SUExZjM2L1IrbzR0ZXZmMUFOWU5WQTlQMDdSRDlJSlFNRFFBQ3hBREhEM3o4SWc0R01IeitBcXFIYWdLcC8vZndMVkEwVS8vdjdMd01EUUFDeC9MWmlZRkQ3LzUvNTMvKy8vLzc5QnFLL0VNWi9VUEFDU1lhL3YvOER5WDlBMG9UeHgyRUdnQUJpK2EvSDhGL20zMzlCb0NvUStnOGtnUmFDUXZnUEpKaUJZbUF1dzM5aHhuK3VEQUFCeE1Md2krRS8wUHVzUmt3TXZ4aEJHb0RrSDRiL3YvK0QyRUR5ei8vL1FCMS9RTGI4K3NQMGxRRWdnRmgrdkdYWU0yL1NQNkEyWm9hZjMwRXgvSitQZ2VrSHd6OWdRREF6L1AwRllyQXlNZno3d2NEQXpQRHRGd05BZ0FFQWQzU0l5Uml0WDFnQUFBQUFTVVZPUks1Q1lJST0nLAogICAgICAnaHJlZicgPT4gJy9kZS9kL2N1cmFjYW8tb2NlYW4tcmVzb3J0LXBlbnRob3VzZS03LWFwcGFydGVtZW50LXp1LXZlcmthdWZlbi0xMTM4OTg2JywKICAgICksCiAgKSwKKQ==