Van Engelen Original Style Villa

Willemstad East · Curaçao

Home For Sale

ANƒ 895.000,- US$ 497,222¹ EU€ 421 048¹¹

Property Details

  • Ref# 512626
  • Neighborhood Willemstad East
  • Country Curaçao
  • Category Single Family Homes
  • View Garden View
  • Beds 3
  • Baths 2
  • L.Space 300 m²
  • Year Built ~1945
  • Land 1,050 m²
  • Class Residential

Property Remarks

STYLE is written in capital letters in this beautiful, classic tropical house in the popular residential area Van Engelen! Amidst a beautifully landscaped garden, the lover of a house where originality is paramount comes into its own. Think of the spacious roof with large overhangs and the windows with movable shutters that guarantee optimum ventilation and natural cooling. The high ceilings and doors, the richly decorated tiled floors, it is all a feast for the eyes! In addition, the house has a spacious and practical layout. A living room with dining room and a side room (very useful as a home office!) ensuite, three delightful bedrooms and two contemporary bathrooms that have been carefully matched to the design of the house. This certainly also applies to the kitchen that is equipped with all built-in appliances that could be desired. Inside the house the outside is always visible and tangible. Everywhere there is a view of the beautiful tropical garden. Indoor and outdoor space, including the spacious porches, merge smoothly and unnoticed. It is precisely this aspect that gives the house its special tropical character. But above all, it is of course a wonderful house to live in and enjoy everything this special place has to offer. The site offers sufficient parking space and a swimming pool is also possible. Moreover, your guests have been thought of in the form of a detached apartment. Do you want to see this house for yourself? Then make an appointment, free of obligation, for a viewing with one of our brokers. VAN ENGELEN Van Engelen, a highly desired neighborhood, is centrally located. It takes only a 10 minutes’ drive to the center of Willemstad. Because of its location and setting it is a very popular residential area on Curaçao. In the vicinity there are supermarkets, doctors, dentists and a fitness center. Van Engelen is also close to various shopping malls, restaurants and beaches.

Features and Amenities

  • Condition
    • Recently Renovated
  • Outdoor Features
    • Landscaped
  • Appliances
    • All New!
    • Gas Stove
    • Refrigerator
    • Dishwasher
  • Parking - Type
    • Driveway
  • Parking - Spots
    • 2 Assigned Spots
  • Parking - Visitors
    • With Visitor Parking
  • Storage
    • Good Storage
  • Security
    • Alarm System
  • Air Conditioning
    • Air Conditioning
  • Yard / Landscaping
    • Large Fenced Yard
    • Garden
  • Near By
    • School(s)
    • Town
    • Elementary School
    • Commercial Activities
    • Public Transportation
    • Recreational Activities
    • Restaurants
  • Rooms
    • Kitchen
    • Living Room
    • Dining Room
    • Bedroom
    • Bathroom
    • Home Office
    • Storage
    • Veranda

Directions

Click on the ‘directions’ button below for the directions to van engelen original style villa.
[  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.1144511'
YXJyYXkgKAogICdhbXAnID0+IGZhbHNlLAogICdsaWQnID0+ICcxMTQ0NTExJywKICAndXFpZCcgPT4gTlVMTCwKICAncGFnZScgPT4gJ2RldGFpbCcsCiAgJ2NvbnRyb2xsZXInID0+ICdkZXRhaWwnLAogICdmdW5jdGlvbicgPT4gJ2luZGV4JywKICAncGFyYW1zJyA9PiAKICBhcnJheSAoCiAgKSwKICAndXJpJyA9PiAnL2VuL2QvdmFuLWVuZ2VsZW4tb3JpZ2luYWwtc3R5bGUtdmlsbGEtaG9tZS1mb3Itc2FsZS1jdXJhY2FvLTExNDQ1MTEnLAogICd1cmlfYmFzZScgPT4gJy9lbi9kL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLWhvbWUtZm9yLXNhbGUtY3VyYWNhby0nLAogICd1cmlfcGF0aCcgPT4gJy92YW4tZW5nZWxlbi1vcmlnaW5hbC1zdHlsZS12aWxsYS1ob21lLWZvci1zYWxlLWN1cmFjYW8tMTE0NDUxMScsCiAgJ3VyaV9xdWVyeScgPT4gTlVMTCwKICAndXJpX2Nhbm9uaWNhbCcgPT4gTlVMTCwKICAndXJpX29yaWdpbmFsJyA9PiAnL2VuL2QvdmFuLWVuZ2VsZW4tb3JpZ2luYWwtc3R5bGUtdmlsbGEtaG9tZS1mb3Itc2FsZS1jdXJhY2FvLTExNDQ1MTEnLAogICd1cmlfcmVxdWVzdCcgPT4gJy9lbi9kL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLWhvbWUtZm9yLXNhbGUtY3VyYWNhby0xMTQ0NTExJywKICAnaXNVcmlJRCcgPT4gdHJ1ZSwKICAnaXNDYW5vbmljYWwnID0+IGZhbHNlLAogICdpc1BPU1QnID0+IGZhbHNlLAogICdpc1hIUicgPT4gMCwKICAnaXNKU09OJyA9PiAwLAogICdsYW5nJyA9PiAnZW4nLAogICdjdHJsJyA9PiAnZCcsCiAgJ2Jhc2UnID0+ICcvZW4vZCcsCiAgJ3BhdGgnID0+ICd2YW4tZW5nZWxlbi1vcmlnaW5hbC1zdHlsZS12aWxsYS1ob21lLWZvci1zYWxlLWN1cmFjYW8nLAogICdzZWFyY2hfdHlwZScgPT4gTlVMTCwKICAncXVlcnlfc2VnbWVudCcgPT4gJycsCiAgJ3NlZ21lbnRzJyA9PiAKICBhcnJheSAoCiAgKSwKICAnc2VnbWVudENvbHMnID0+IE5VTEwsCiAgJ29wdHMnID0+IE5VTEwsCiAgJ3NvcnRTdHInID0+ICcnLAogICdkZWZTb3J0U3RyJyA9PiAnL2hnYScsCiAgJ2RhdGEnID0+IAogIGFycmF5ICgKICAgICdjb3VudHJ5JyA9PiAnQ1YnLAogICksCiAgJ2FyZ3MnID0+IAogIGFycmF5ICgKICApLAogICdocmVmX2dvYmFjaycgPT4gTlVMTCwKICAnc2VsZl9yZWZlcmVkJyA9PiBOVUxMLAogICdyZWZlcmVkX3JlcScgPT4gTlVMTCwKICAnc29ydEFycicgPT4gCiAgYXJyYXkgKAogICAgJ2J5JyA9PiAncHJpY2UnLAogICAgJ2N1cnInID0+ICcnLAogICAgJ2RpcicgPT4gJ2Rlc2MnLAogICAgJ29wdHMnID0+ICdoZ2EnLAogICAgJ3BhZ2VPZmZzZXQnID0+IDAsCiAgICAncGFnZV9ubycgPT4gMSwKICAgICdwZXJfcGFnZScgPT4gMTIsCiAgICAncm93cycgPT4gJ2EnLAogICAgJ3NvcnQnID0+ICdoaWxvJywKICAgICdzb3J0U3RyJyA9PiAnL2hnYScsCiAgICAnc3R5bGUnID0+ICdncmlkJywKICApLAogICd1cmlfc29ydCcgPT4gJy9lbi9kL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLWhvbWUtZm9yLXNhbGUtY3VyYWNhbycsCiAgJ2h0dHBfcmVzcG9uc2Vfc3RhdHVzJyA9PiAyMDAsCiAgJ21ldGFBcnInID0+IAogIGFycmF5ICgKICAgICd0ZXh0JyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2NvdW50cnknID0+ICdDdXJhw6dhbycsCiAgICAgICdzaXRlX25hbWUnID0+ICdDRU5UVVJZIDIxIE51bWJlciBPbmUnLAogICAgICAncmVhbF9lc3RhdGUnID0+ICdSZWFsIEVzdGF0ZScsCiAgICApLAogICksCiAgJ2lzRm9ybScgPT4gZmFsc2UsCiAgJ2xBcnInID0+IAogIGFycmF5ICgKICAgICdsaWQnID0+ICcxMTQ0NTExJywKICAgICdyZWZubycgPT4gJzAwMDA1MTI2MjYnLAogICAgJ2NvdW50cnknID0+ICdDVicsCiAgICAncGNsYXNzJyA9PiAnUkVTJywKICAgICdleGNsJyA9PiAnMCcsCiAgICAncmVjaXAnID0+ICcwJywKICAgICdmdHJkJyA9PiAnMCcsCiAgICAnYnJhbmQxJyA9PiAnQ0VOJywKICAgICdvZmlkMScgPT4gJzEwMDAzOTknLAogICAgJ2FnaWQxJyA9PiAnMTAwMjE5NycsCiAgICAnYnJhbmQyJyA9PiBOVUxMLAogICAgJ29maWQyJyA9PiBOVUxMLAogICAgJ2FnaWQyJyA9PiBOVUxMLAogICAgJ2xhc3R1cGRhdGUnID0+ICcyMDE5LTEwLTE4IDE1OjM1OjMzJywKICAgICdzdGFtcCcgPT4gJzIwMTktMDktMjQgMTk6Mzg6MTgnLAogICAgJ2FjY291bnRzJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ29maWQxJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdmdGlkJyA9PiAnMTAwMDM5OScsCiAgICAgICAgJ2Z0eXBlJyA9PiAnTycsCiAgICAgICAgJ2xhbmdzJyA9PiAnRU4sRVMsREUsTkwnLAogICAgICAgICduYW1lJyA9PiAnQ0VOVFVSWSAyMSAjMSBSZWFsIEVzdGF0ZScsCiAgICAgICAgJ3d3dycgPT4gJ2NlbnR1cnkyMW51bWJlcm9uZS5jb20nLAogICAgICAgICdsb2dvJyA9PiAnL21heC5jZG4vaW1hZ2VzL2xvZ29zLzEwMDAzOTkvMTUweDUwLzAuanBnJywKICAgICAgICAnYWRkcmVzcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgMCA9PiAnNjkgQ2FzIENvcmF3ZWcnLAogICAgICAgICAgMSA9PiAnV2lsbGVtc3RhZCBXZXN0LCBCYW5kYSBCb3UnLAogICAgICAgICAgMiA9PiAnQ3VyYcOnYW8nLAogICAgICAgICksCiAgICAgICAgJ3Bob25lcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ29mZmljZScgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjb2RlJyA9PiAnNjYzJywKICAgICAgICAgICAgJ2xhYmVsJyA9PiAnT2ZmaWNlJywKICAgICAgICAgICAgJ2FiYnJ2JyA9PiBOVUxMLAogICAgICAgICAgICAnY2NvZGUnID0+ICcrMDExJywKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnOjU5OSA5OjczNy0wMjAxOicsCiAgICAgICAgICAgICd0ZWwnID0+ICc1OTk5NzM3MDIwMScsCiAgICAgICAgICAgICdzaG93JyA9PiAnKDU5OSA5KSA3MzctMDIwMScsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICksCiAgICAgICdhZ2lkMScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnZnRpZCcgPT4gJzEwMDIxOTcnLAogICAgICAgICdmdHlwZScgPT4gJ0EnLAogICAgICAgICdvZmlkJyA9PiAnMTAwMDM5OScsCiAgICAgICAgJ3RpdGxlJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnbGFiZWwnID0+ICdTYWxlcyBBZ2VudC9Db25zdWx0YW50JywKICAgICAgICApLAogICAgICAgICdmbmFtZScgPT4gJ0JlbmphbWluJywKICAgICAgICAnbG5hbWUnID0+ICdCcmVzdCcsCiAgICAgICAgJ2Z1bGxuYW1lJyA9PiAnQmVuamFtaW4gQnJlc3QnLAogICAgICAgICdlbWFpbCcgPT4gJ2JlbmphbWluQGMyMWN1cmFjYW8uY29tJywKICAgICAgICAnd3d3JyA9PiAnY2VudHVyeTIxbnVtYmVyb25lLmNvbScsCiAgICAgICAgJ3Bob3RvJyA9PiAnL2ltYWdlcy9hZ2VudHMvMTAwMjE5Ny9mLzAuanBnJywKICAgICAgICAncGhvbmVzJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnb2ZmaWNlJyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NvZGUnID0+ICc2NjMnLAogICAgICAgICAgICAnbGFiZWwnID0+ICdPZmZpY2UnLAogICAgICAgICAgICAnYWJicnYnID0+IE5VTEwsCiAgICAgICAgICAgICdjY29kZScgPT4gJyswMTEnLAogICAgICAgICAgICAndmFsdWUnID0+ICc6NTk5IDk6NzM3LTAyMDE6JywKICAgICAgICAgICAgJ3RlbCcgPT4gJzU5OTk3MzcwMjAxJywKICAgICAgICAgICAgJ3Nob3cnID0+ICcoNTk5IDkpIDczNy0wMjAxJywKICAgICAgICAgICksCiAgICAgICAgICAnbW9iaWxlJyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NvZGUnID0+ICc2NzInLAogICAgICAgICAgICAnbGFiZWwnID0+ICdNb2JpbGUnLAogICAgICAgICAgICAnYWJicnYnID0+IE5VTEwsCiAgICAgICAgICAgICdjY29kZScgPT4gJyswMTEnLAogICAgICAgICAgICAndmFsdWUnID0+ICc6NTk5IDk6NTIxLTMyODA6JywKICAgICAgICAgICAgJ3RlbCcgPT4gJzU5OTk1MjEzMjgwJywKICAgICAgICAgICAgJ3Nob3cnID0+ICcoNTk5IDkpIDUyMS0zMjgwJywKICAgICAgICAgICksCiAgICAgICAgKSwKICAgICAgKSwKICAgICksCiAgICAndmlkZW9zJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ3lvdXR1YmUnID0+ICdLSFM2endzZGFmRSZ0PTU4cycsCiAgICAgICd2dHVybCcgPT4gTlVMTCwKICAgICksCiAgICAnZGV0YWlscycgPT4gCiAgICBhcnJheSAoCiAgICAgICdSRUZOT19MQUJFTCcgPT4gJ1JlZiMnLAogICAgICAnUkVGTk9fVkFMVUUnID0+ICc1MTI2MjYnLAogICAgICAnRElEX0xBQkVMJyA9PiAnTmVpZ2hib3Job29kJywKICAgICAgJ0RJRF9WQUxVRScgPT4gJ1dpbGxlbXN0YWQgRWFzdCcsCiAgICAgICdDT1VOVFJZX0xBQkVMJyA9PiAnQ291bnRyeScsCiAgICAgICdDT1VOVFJZX1ZBTFVFJyA9PiAnQ3VyYcOnYW8nLAogICAgICAnUFRZUEVfTEFCRUwnID0+ICdDYXRlZ29yeScsCiAgICAgICdQVFlQRV9WQUxVRScgPT4gJ1NpbmdsZSBGYW1pbHkgSG9tZXMnLAogICAgICAnUFZJRVdfTEFCRUwnID0+ICdWaWV3JywKICAgICAgJ1BWSUVXX1ZBTFVFJyA9PiAnR2FyZGVuIFZpZXcnLAogICAgICAnQkVEU19MQUJFTCcgPT4gJ0JlZHMnLAogICAgICAnQkVEU19WQUxVRScgPT4gMywKICAgICAgJ0JBVEhTX0xBQkVMJyA9PiAnQmF0aHMnLAogICAgICAnQkFUSFNfVkFMVUUnID0+IDIsCiAgICAgICdMU1BBQ0VfTEFCRUwnID0+ICdMLlNwYWNlJywKICAgICAgJ0xTUEFDRV9WQUxVRScgPT4gJzMwMCBtwrInLAogICAgICAnWVJCVUlMVF9MQUJFTCcgPT4gJ1llYXIgQnVpbHQnLAogICAgICAnWVJCVUlMVF9WQUxVRScgPT4gJ34xOTQ1JywKICAgICAgJ0xBUkVBX0xBQkVMJyA9PiAnTGFuZCcsCiAgICAgICdMQVJFQV9WQUxVRScgPT4gJzEsMDUwIG3CsicsCiAgICAgICdQQ0xBU1NfTEFCRUwnID0+ICdDbGFzcycsCiAgICAgICdQQ0xBU1NfVkFMVUUnID0+ICdSZXNpZGVudGlhbCcsCiAgICAgICdIVE1MJyA9PiAnPGxpPjxiPlJlZiM8L2I+IDUxMjYyNjwvbGk+CjxsaT48Yj5OZWlnaGJvcmhvb2Q8L2I+IFdpbGxlbXN0YWQgRWFzdDwvbGk+CjxsaT48Yj5Db3VudHJ5PC9iPiBDdXJhw6dhbzwvbGk+CjxsaT48Yj5DYXRlZ29yeTwvYj4gU2luZ2xlIEZhbWlseSBIb21lczwvbGk+CjxsaT48Yj5WaWV3PC9iPiBHYXJkZW4gVmlldzwvbGk+CjxsaT48Yj5CZWRzPC9iPiAzPC9saT4KPGxpPjxiPkJhdGhzPC9iPiAyPC9saT4KPGxpPjxiPkwuU3BhY2U8L2I+IDMwMCBtwrI8L2xpPgo8bGk+PGI+WWVhciBCdWlsdDwvYj4gfjE5NDU8L2xpPgo8bGk+PGI+TGFuZDwvYj4gMSwwNTAgbcKyPC9saT4KPGxpPjxiPkNsYXNzPC9iPiBSZXNpZGVudGlhbDwvbGk+JywKICAgICksCiAgICAnZmVhdHVyZXMnID0+ICcKPGxpPjxiPkNvbmRpdGlvbjwvYj48c3Bhbj48dWw+PGxpPlJlY2VudGx5IFJlbm92YXRlZDwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPk91dGRvb3IgRmVhdHVyZXM8L2I+PHNwYW4+PHVsPjxsaT5MYW5kc2NhcGVkPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+QXBwbGlhbmNlczwvYj48c3Bhbj48dWw+PGxpPkFsbCBOZXchPC9saT48bGk+R2FzIFN0b3ZlPC9saT48bGk+UmVmcmlnZXJhdG9yPC9saT48bGk+RGlzaHdhc2hlcjwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPlBhcmtpbmcgLSBUeXBlPC9iPjxzcGFuPjx1bD48bGk+RHJpdmV3YXk8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5QYXJraW5nIC0gU3BvdHM8L2I+PHNwYW4+PHVsPjxsaT4yIEFzc2lnbmVkIFNwb3RzPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+UGFya2luZyAtIFZpc2l0b3JzPC9iPjxzcGFuPjx1bD48bGk+V2l0aCBWaXNpdG9yIFBhcmtpbmc8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5TdG9yYWdlPC9iPjxzcGFuPjx1bD48bGk+R29vZCBTdG9yYWdlPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+U2VjdXJpdHk8L2I+PHNwYW4+PHVsPjxsaT5BbGFybSBTeXN0ZW08L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5BaXIgQ29uZGl0aW9uaW5nPC9iPjxzcGFuPjx1bD48bGk+QWlyIENvbmRpdGlvbmluZzwvbGk+PC91bD48L3NwYW4+PC9saT4KPGxpPjxiPllhcmQgLyBMYW5kc2NhcGluZzwvYj48c3Bhbj48dWw+PGxpPkxhcmdlIEZlbmNlZCBZYXJkPC9saT48bGk+R2FyZGVuPC9saT48L3VsPjwvc3Bhbj48L2xpPgo8bGk+PGI+TmVhciBCeTwvYj48c3Bhbj48dWw+PGxpPlNjaG9vbChzKTwvbGk+PGxpPlRvd248L2xpPjxsaT5FbGVtZW50YXJ5IFNjaG9vbDwvbGk+PGxpPkNvbW1lcmNpYWwgQWN0aXZpdGllczwvbGk+PGxpPlB1YmxpYyBUcmFuc3BvcnRhdGlvbjwvbGk+PGxpPlJlY3JlYXRpb25hbCBBY3Rpdml0aWVzPC9saT48bGk+UmVzdGF1cmFudHM8L2xpPjwvdWw+PC9zcGFuPjwvbGk+CjxsaT48Yj5Sb29tczwvYj48c3Bhbj48dWw+PGxpPktpdGNoZW48L2xpPjxsaT5MaXZpbmcgUm9vbTwvbGk+PGxpPkRpbmluZyBSb29tPC9saT48bGk+QmVkcm9vbTwvbGk+PGxpPkJhdGhyb29tPC9saT48bGk+SG9tZSBPZmZpY2U8L2xpPjxsaT5TdG9yYWdlPC9saT48bGk+VmVyYW5kYTwvbGk+PC91bD48L3NwYW4+PC9saT4nLAogICAgJ3JlbWFya3MnID0+ICdTVFlMRSBpcyB3cml0dGVuIGluIGNhcGl0YWwgbGV0dGVycyBpbiB0aGlzIGJlYXV0aWZ1bCwgY2xhc3NpYyB0cm9waWNhbCBob3VzZSBpbiB0aGUgcG9wdWxhciByZXNpZGVudGlhbCBhcmVhIFZhbiBFbmdlbGVuISBBbWlkc3QgYSBiZWF1dGlmdWxseSBsYW5kc2NhcGVkIGdhcmRlbiwgdGhlIGxvdmVyIG9mIGEgaG91c2Ugd2hlcmUgb3JpZ2luYWxpdHkgaXMgcGFyYW1vdW50IGNvbWVzIGludG8gaXRzIG93bi4gVGhpbmsgb2YgdGhlIHNwYWNpb3VzIHJvb2Ygd2l0aCBsYXJnZSBvdmVyaGFuZ3MgYW5kIHRoZSB3aW5kb3dzIHdpdGggbW92YWJsZSBzaHV0dGVycyB0aGF0IGd1YXJhbnRlZSBvcHRpbXVtIHZlbnRpbGF0aW9uIGFuZCBuYXR1cmFsIGNvb2xpbmcuIFRoZSBoaWdoIGNlaWxpbmdzIGFuZCBkb29ycywgdGhlIHJpY2hseSBkZWNvcmF0ZWQgdGlsZWQgZmxvb3JzLCBpdCBpcyBhbGwgYSBmZWFzdCBmb3IgdGhlIGV5ZXMhCgpJbiBhZGRpdGlvbiwgdGhlIGhvdXNlIGhhcyBhIHNwYWNpb3VzIGFuZCBwcmFjdGljYWwgbGF5b3V0LiBBIGxpdmluZyByb29tIHdpdGggZGluaW5nIHJvb20gYW5kIGEgc2lkZSByb29tICh2ZXJ5IHVzZWZ1bCBhcyBhIGhvbWUgb2ZmaWNlISkgZW5zdWl0ZSwgdGhyZWUgZGVsaWdodGZ1bCBiZWRyb29tcyBhbmQgdHdvIGNvbnRlbXBvcmFyeSBiYXRocm9vbXMgdGhhdCBoYXZlIGJlZW4gY2FyZWZ1bGx5IG1hdGNoZWQgdG8gdGhlIGRlc2lnbiBvZiB0aGUgaG91c2UuIAoKVGhpcyBjZXJ0YWlubHkgYWxzbyBhcHBsaWVzIHRvIHRoZSBraXRjaGVuIHRoYXQgaXMgZXF1aXBwZWQgd2l0aCBhbGwgYnVpbHQtaW4gYXBwbGlhbmNlcyB0aGF0IGNvdWxkIGJlIGRlc2lyZWQuCgpJbnNpZGUgdGhlIGhvdXNlIHRoZSBvdXRzaWRlIGlzIGFsd2F5cyB2aXNpYmxlIGFuZCB0YW5naWJsZS4gRXZlcnl3aGVyZSB0aGVyZSBpcyBhIHZpZXcgb2YgdGhlIGJlYXV0aWZ1bCB0cm9waWNhbCBnYXJkZW4uIEluZG9vciBhbmQgb3V0ZG9vciBzcGFjZSwgaW5jbHVkaW5nIHRoZSBzcGFjaW91cyBwb3JjaGVzLCBtZXJnZSBzbW9vdGhseSBhbmQgdW5ub3RpY2VkLiBJdCBpcyBwcmVjaXNlbHkgdGhpcyBhc3BlY3QgdGhhdCBnaXZlcyB0aGUgaG91c2UgaXRzIHNwZWNpYWwgdHJvcGljYWwgY2hhcmFjdGVyLiBCdXQgYWJvdmUgYWxsLCBpdCBpcyBvZiBjb3Vyc2UgYSB3b25kZXJmdWwgaG91c2UgdG8gbGl2ZSBpbiBhbmQgZW5qb3kgZXZlcnl0aGluZyB0aGlzIHNwZWNpYWwgcGxhY2UgaGFzIHRvIG9mZmVyLgpUaGUgc2l0ZSBvZmZlcnMgc3VmZmljaWVudCBwYXJraW5nIHNwYWNlIGFuZCBhIHN3aW1taW5nIHBvb2wgaXMgYWxzbyBwb3NzaWJsZS4gTW9yZW92ZXIsIHlvdXIgZ3Vlc3RzIGhhdmUgYmVlbiB0aG91Z2h0IG9mIGluIHRoZSBmb3JtIG9mIGEgZGV0YWNoZWQgYXBhcnRtZW50LgoKRG8geW91IHdhbnQgdG8gc2VlIHRoaXMgaG91c2UgZm9yIHlvdXJzZWxmPyBUaGVuIG1ha2UgYW4gYXBwb2ludG1lbnQsIGZyZWUgb2Ygb2JsaWdhdGlvbiwgZm9yIGEgdmlld2luZyB3aXRoIG9uZSBvZiBvdXIgYnJva2Vycy4KCjx1PlZBTiBFTkdFTEVOPC91PgpWYW4gRW5nZWxlbiwgYSBoaWdobHkgZGVzaXJlZCBuZWlnaGJvcmhvb2QsIGlzIGNlbnRyYWxseSBsb2NhdGVkLiAgSXQgdGFrZXMgb25seSBhIDEwIG1pbnV0ZXPigJkgZHJpdmUgdG8gdGhlIGNlbnRlciBvZiBXaWxsZW1zdGFkLiBCZWNhdXNlIG9mIGl0cyBsb2NhdGlvbiBhbmQgc2V0dGluZyBpdCBpcyBhIHZlcnkgcG9wdWxhciByZXNpZGVudGlhbCBhcmVhIG9uIEN1cmHDp2FvLiBJbiB0aGUgdmljaW5pdHkgdGhlcmUgYXJlIHN1cGVybWFya2V0cywgZG9jdG9ycywgZGVudGlzdHMgYW5kIGEgZml0bmVzcyBjZW50ZXIuIFZhbiBFbmdlbGVuIGlzIGFsc28gY2xvc2UgdG8gdmFyaW91cyBzaG9wcGluZyBtYWxscywgcmVzdGF1cmFudHMgYW5kIGJlYWNoZXMuJywKICAgICdyZW50YWxpbmZvJyA9PiAnJywKICAgICdkaXJlY3Rpb25zJyA9PiAnQ2xpY2sgb24gdGhlIOKAmGRpcmVjdGlvbnPigJkgYnV0dG9uIGJlbG93IGZvciB0aGUgZGlyZWN0aW9ucyB0byB2YW4gZW5nZWxlbiBvcmlnaW5hbCBzdHlsZSB2aWxsYS4gPGJyPlsgPGEgaHJlZj0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL2Rpci9DdXJhJUMzJUE3YW8lMkJJbnRlcm5hdGlvbmFsJTJCQWlycG9ydCUyQyUyQkN1cmElQzMlQTdhby8xMi4xMjcxMjk1NjQxMTg2MDMwLC02OC44ODk2MzEwMzI5NDM3MzAwL0AxMi4xNDA3MDEzLC02OC45NjU4MzgzLDEzeiIgdGFyZ2V0PSJfYmxhbmsiPjxpIGNsYXNzPSJmYSBmYS1nbG9iZSIgYXJpYS1oaWRkZW49InRydWUiPjwvaT4mbmJzcDtEaXJlY3Rpb25zPC9hPiBdJywKICAgICdkaXNjbG9zdXJlcycgPT4gJ3sibGluZXMiOnsicHJpY2UiOnsicG9zdGZpeCI6ZmFsc2UsImV4dHJhIjoiRmVlcyBwYWlkIGJ5IFxcIlNlbGxlclxcIiJ9LCJzZWN0aW9uIjpbXX0sImRhdGEiOnsiaW5mbyI6IjExNDQ1MTEtRU4tc2FsZSIsImZlZXNfcGFpZF9ieSI6MiwicmVudGFsX2V4cGVuc2VzIjp7ImN1cnIiOm51bGwsImFtb3VudCI6IjAuMDAiLCJwZXIiOiIifSwicmVudGFsX3Rlcm1zIjoiMSIsInJlbnRhbF9kZXBvc2l0Ijp7ImN1cnIiOm51bGwsImFtb3VudCI6bnVsbCwicGVyIjoiIn0sImJ1aWxkaW5nX3VuaXRzIjoiIiwibGVnYWxfcHJvY2VlZGluZ3MiOiIwIiwicmVudGFsX3ByaWNlIjp7ImN1cnIiOiJBTkciLCJhbW91bnQiOiI4OTUwMDAuMDAiLCJwZXIiOm51bGx9LCJyZW50YWxfY29tbWlzc2lvbiI6eyJjdXJyIjpudWxsLCJhbW91bnQiOiIiLCJwZXIiOiIifSwiY29uZG9fZmVlcyI6eyJjdXJyIjoiIiwiYW1vdW50IjoiIiwicGVyIjoiIn19fScsCiAgICAnbWV0YScgPT4gCiAgICBhcnJheSAoCiAgICAgICdsaWQnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnTUxTJywKICAgICAgICAndmFsdWUnID0+ICcxMTQ0NTExJywKICAgICAgICAnc2hvdycgPT4gJ01MUyAxMTQ0NTExJywKICAgICAgKSwKICAgICAgJ3JlZm5vJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ1JlZiMnLAogICAgICAgICd2YWx1ZScgPT4gJzUxMjYyNicsCiAgICAgICAgJ3Nob3cnID0+ICdSZWYjIDUxMjYyNicsCiAgICAgICksCiAgICAgICdjb3VudHJ5JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnQ1YnLAogICAgICAgICdsYWJlbCcgPT4gJ0NvdW50cnknLAogICAgICAgICd2YWx1ZScgPT4gJ0N1cmHDp2FvJywKICAgICAgKSwKICAgICAgJ3BjbGFzcycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJ1JFUycsCiAgICAgICAgJ2xhYmVsJyA9PiAnUHJvcGVydHkgQ2xhc3MnLAogICAgICAgICdsYWJlbDInID0+ICdDbGFzcycsCiAgICAgICAgJ3ZhbHVlJyA9PiAnUmVzaWRlbnRpYWwnLAogICAgICApLAogICAgICAncGh0Y250JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJzIwJywKICAgICAgKSwKICAgICAgJ3N0YXR1cycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJ0EnLAogICAgICAgICdsYWJlbCcgPT4gJ0xpc3RpbmcgU3RhdHVzJywKICAgICAgICAnbGFiZWwyJyA9PiAnU3RhdHVzJywKICAgICAgICAndmFsdWUnID0+ICdBY3RpdmUnLAogICAgICAgICd2YWx1ZTInID0+ICcnLAogICAgICApLAogICAgICAnc2V0b3B0JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZTInID0+ICcnLAogICAgICApLAogICAgICAnY2F0ZWdvcnknID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvZGUnID0+ICc0NDgnLAogICAgICAgICdsYWJlbCcgPT4gJ1Byb3BlcnR5IENhdGVnb3J5JywKICAgICAgICAnbGFiZWwyJyA9PiAnQ2F0ZWdvcnknLAogICAgICAgICd2YWx1ZScgPT4gJ1NpbmdsZSBGYW1pbHkgSG9tZXMnLAogICAgICAgICd2YWx1ZTInID0+ICdIb21lJywKICAgICAgKSwKICAgICAgJ3RyYW5zJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnTVMnLAogICAgICAgICdsYWJlbCcgPT4gJ1RyYW5zYWN0aW9uIFR5cGUnLAogICAgICAgICdsYWJlbDInID0+ICdUcmFuc2FjdGlvbicsCiAgICAgICAgJ3ZhbHVlJyA9PiAnRm9yIFNhbGUnLAogICAgICAgICd2YWx1ZTInID0+ICdTYWxlJywKICAgICAgKSwKICAgICAgJ3ByaWNlJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnNDk3MjIyLjIyJywKICAgICAgICAnbGFiZWwnID0+ICdBc2tpbmcgUHJpY2UnLAogICAgICAgICdsYWJlbDInID0+ICdQcmljZScsCiAgICAgICAgJ3ZhbHVlJyA9PiAnQU7GkiA4OTUuMDAwLC0nLAogICAgICApLAogICAgICAnem9uZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzEwMDA3JywKICAgICAgICAnbGFiZWwnID0+ICdBcmVhJywKICAgICAgICAndmFsdWUnID0+ICdXaWxsZW1zdGFkIEVhc3QnLAogICAgICApLAogICAgICAnZGlkJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnMTAwMDcnLAogICAgICAgICdsYWJlbCcgPT4gJ05laWdoYm9yaG9vZCcsCiAgICAgICAgJ3ZhbHVlJyA9PiAnV2lsbGVtc3RhZCBFYXN0JywKICAgICAgKSwKICAgICAgJ2dsYXQnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnMTIuMTI3MTI5NTY0MTE4NjAzMCcsCiAgICAgICksCiAgICAgICdnbG5nJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJy02OC44ODk2MzEwMzI5NDM3MzAwJywKICAgICAgKSwKICAgICAgJ3Jvb21zJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJycsCiAgICAgICksCiAgICAgICdiZWRzJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnMycsCiAgICAgICAgJ2xhYmVsJyA9PiAnQmVkcm9vbXMnLAogICAgICAgICdsYWJlbDInID0+ICdCZWRzJywKICAgICAgICAndmFsdWUnID0+IDMsCiAgICAgICksCiAgICAgICdiYXRocycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzIuMCcsCiAgICAgICAgJ2xhYmVsJyA9PiAnQmF0aHJvb21zJywKICAgICAgICAnbGFiZWwyJyA9PiAnQmF0aHMnLAogICAgICAgICd2YWx1ZScgPT4gMiwKICAgICAgKSwKICAgICAgJ2xzcGFjZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnY29kZScgPT4gJzMwMC4wMDAwMDAwMDAwMDAnLAogICAgICAgICdsYWJlbCcgPT4gJ0xpdmluZyBTcGFjZScsCiAgICAgICAgJ2xhYmVsMicgPT4gJ0wuU3BhY2UnLAogICAgICAgICd2YWx1ZScgPT4gJzMwMCBtwrInLAogICAgICApLAogICAgICAnbGFyZWEnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2NvZGUnID0+ICcxMDUwLjAwMDAwMDAwMDAwMCcsCiAgICAgICAgJ2xhYmVsJyA9PiAnTGFuZCBBcmVhJywKICAgICAgICAnbGFiZWwyJyA9PiAnTGFuZCcsCiAgICAgICAgJ3ZhbHVlJyA9PiAnMSwwNTAgbcKyJywKICAgICAgKSwKICAgICAgJ3B2aWV3JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb2RlJyA9PiAnNDQwJywKICAgICAgICAnbGFiZWwnID0+ICdQcm9wZXJ0eSBWaWV3JywKICAgICAgICAnbGFiZWwyJyA9PiAnVmlldycsCiAgICAgICAgJ3ZhbHVlJyA9PiAnR2FyZGVuIFZpZXcnLAogICAgICApLAogICAgICAnY2l0eScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdOZWlnaGJvcmhvb2QnLAogICAgICAgICd2YWx1ZScgPT4gJycsCiAgICAgICksCiAgICAgICdzdGF0ZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdBcmVhJywKICAgICAgICAndmFsdWUnID0+ICdCYW5kYSBCb3UnLAogICAgICApLAogICAgICAndGl0bGUnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgICApLAogICAgICAnZGlzdHJpY3QnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnMTAwMDcnLAogICAgICApLAogICAgICAnY3VycicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAndmFsdWUnID0+ICdBTkcnLAogICAgICApLAogICAgICAndmlkZW8tdG91cicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdWaXJ0dWFsIFRvdXInLAogICAgICAgICdsYWJlbDInID0+ICdWaWRlbycsCiAgICAgICAgJ3ZhbHVlJyA9PiAxLAogICAgICApLAogICAgICAnX2lkJyA9PiAnMTE0NDUxMScsCiAgICAgICdzZWN0aW9uJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICd2YWx1ZScgPT4gJ21scycsCiAgICAgICksCiAgICAgICdsb2NhbGl0eScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAndmFsdWUnID0+IE5VTEwsCiAgICAgICksCiAgICAgICdyZWdpb24nID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ3ZhbHVlJyA9PiAnQmFuZGEgQm91JywKICAgICAgKSwKICAgICksCiAgICAnaXNfc29sZCcgPT4gZmFsc2UsCiAgICAnc29sZF9sYWJlbCcgPT4gJycsCiAgICAnaGVhZGVycycgPT4gCiAgICBhcnJheSAoCiAgICAgICdnYWxsZXJ5JyA9PiAnUGhvdG8gR2FsbGVyeScsCiAgICAgICdtYXBsb2MnID0+ICdNYXAgTG9jYXRpb24nLAogICAgICAnbWFwc2F0JyA9PiAnU2F0ZWxpdGUgVmlldycsCiAgICAgICd2aWRlb3MnID0+ICdWaWRlbycsCiAgICAgICd2dG91cnMnID0+ICdWaXJ0dWFsIFRvdXInLAogICAgICAnZGlyZWN0aW9ucycgPT4gJ0RpcmVjdGlvbnMnLAogICAgICAnZGV0YWlscycgPT4gJ1Byb3BlcnR5IERldGFpbHMnLAogICAgICAnZmVhdHVyZXMnID0+ICdGZWF0dXJlcyBhbmQgQW1lbml0aWVzJywKICAgICAgJ2RpYWdub3N0aWNzJyA9PiAnRW5lcmd5IFBlcmZvcm1hbmNlJywKICAgICAgJ3JlbWFya3MnID0+ICdQcm9wZXJ0eSBSZW1hcmtzJywKICAgICAgJ2Rpc2Nsb3N1cmVzJyA9PiAnRGlzY2xvc3VyZXMnLAogICAgICAnc2ltaWxhcicgPT4gJ1NpbWlsYXIgUHJvcGVydGllcycsCiAgICAgICdmZWF0dXJlZCcgPT4gJ0ZlYXR1cmVkIFByb3BlcnRpZXMnLAogICAgICAnYWdlbnQnID0+ICdBZ2VudCBEZXRhaWxzJywKICAgICAgJ3JlbnRhbGluZm8nID0+ICdSZW50YWwgSW5mb3JtYXRpb24nLAogICAgKSwKICAgICdoZWFkaW5nJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgJ3N1YmhlYWRpbmcnID0+ICdCYW5kYSBCb3UgwrcgQ3VyYcOnYW8nLAogICAgJ2lkc2hlYWRpbmcnID0+ICdNTFMjIDExNDQ1MTEnLAogICAgJ2J1dHRvbnMnID0+IAogICAgYXJyYXkgKAogICAgICAnZ2VuZXJhbCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdDb250YWN0IFVzJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9jL2NvbnRhY3QtdXMvMTE0NDUxMScsCiAgICAgICksCiAgICAgICdpbnF1aXJ5JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ0lucXVpcnknLAogICAgICAgICdocmVmJyA9PiAnL2VuL2MvaW5xdWlyeS8xMTQ0NTExJywKICAgICAgKSwKICAgICAgJ3NlbmR0bycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdTZW5kIHRvJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9jL3NlbmQvMTE0NDUxMScsCiAgICAgICksCiAgICAgICdhbGVydCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdBbGVydCcsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9hbGVydC8xMTQ0NTExJywKICAgICAgKSwKICAgICAgJ29wdGluJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ05ld3NsZXR0ZXIgU2lnbi11cCcsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9uZXdzbGV0dGVyLzExNDQ1MTEnLAogICAgICApLAogICAgICAnZmF2cycgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdGYXZvcml0ZScsCiAgICAgICAgJ2hyZWYnID0+ICcvZW4vYy9mYXZvcml0ZXMvMTE0NDUxMScsCiAgICAgICksCiAgICAgICdzaGFyZScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWwnID0+ICdTaGFyZScsCiAgICAgICAgJ2hyZWYnID0+IE5VTEwsCiAgICAgICksCiAgICAgICdwZGYnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnUERGJywKICAgICAgICAnaHJlZicgPT4gJy9lbi9hL2Rvd25sb2FkL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLWhvbWUtZm9yLXNhbGUtY3VyYWNhby0xMTQ0NTExLnBkZj92MTU3MTQxMjkzMycsCiAgICAgICksCiAgICAgICdzYXZlZmF2JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbF9vZmYnID0+ICdTYXZlJywKICAgICAgICAnbGFiZWxfb24nID0+ICdTYXZlZCEnLAogICAgICApLAogICAgICAnZ29iYWNrJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdsYWJlbCcgPT4gJ0dvIEJhY2snLAogICAgICAgICdocmVmJyA9PiAnL2VuL2QvdmFuLWVuZ2VsZW4tb3JpZ2luYWwtc3R5bGUtdmlsbGEtaG9tZS1mb3Itc2FsZS1jdXJhY2FvLTExNDQ1MTEnLAogICAgICApLAogICAgICAncHJpbnQnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ2xhYmVsJyA9PiAnUHJpbnQnLAogICAgICAgICdocmVmJyA9PiBOVUxMLAogICAgICApLAogICAgKSwKICAgICdwYWdlbGluaycgPT4gCiAgICBhcnJheSAoCiAgICAgICdsYWJlbCcgPT4gJ0dvIEJhY2snLAogICAgICAnaHJlZicgPT4gJy9lbi9kL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLWhvbWUtZm9yLXNhbGUtY3VyYWNhby0xMTQ0NTExJywKICAgICksCiAgICAnYWdlbnRzJyA9PiAKICAgIGFycmF5ICgKICAgICAgMSA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdjb3VydGVzeU9mJyA9PiBmYWxzZSwKICAgICAgICAnY29tcGFueScgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ2JyYW5kJyA9PiAnQ0VOVFVSWSAyMScsCiAgICAgICAgICAnbGVnYWwnID0+ICc8c3Bhbj4jMTwvc3Bhbj4gPHNwYW4+UmVhbCBFc3RhdGU8L3NwYW4+JywKICAgICAgICAgICdsb2dvJyA9PiAnL2Fzc2V0cy9pbWFnZXMvdHBsL2NlbnR1cnktMjEtbG9nby5zdmcnLAogICAgICAgICAgJ2xvZ29fYWx0JyA9PiAnQ0VOVFVSWSAyMSAjMSBSZWFsIEVzdGF0ZSwgQ3VyYSZjY2VkaWw7YW8nLAogICAgICAgICksCiAgICAgICAgJ3RpdGxlJyA9PiAnU2FsZXMgQWdlbnQvQ29uc3VsdGFudCcsCiAgICAgICAgJ2Z1bGxuYW1lJyA9PiAnQmVuamFtaW4gQnJlc3QnLAogICAgICAgICdwaG90bycgPT4gJy9pbWFnZXMvYWdlbnRzLzEwMDIxOTcvZi8wLmpwZycsCiAgICAgICAgJ3Bob3RvX2FsdCcgPT4gJ0JlbmphbWluIEJyZXN0IC0gU2FsZXMgQWdlbnQvQ29uc3VsdGFudCwgQ0VOVFVSWSAyMSAjMSBSZWFsIEVzdGF0ZScsCiAgICAgICAgJ3Bob25lcycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ29mZmljZScgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdpY29uJyA9PiAnZmEtdm9sdW1lLWNvbnRyb2wtcGhvbmUnLAogICAgICAgICAgICAnbGFiZWwnID0+ICdPZmZpY2UnLAogICAgICAgICAgICAndGl0bGUnID0+ICdPZmZpY2UnLAogICAgICAgICAgICAndGVsJyA9PiAnNTk5OTczNzAyMDEnLAogICAgICAgICAgICAnc2hvdycgPT4gJyg1OTkgOSkgNzM3LTAyMDEnLAogICAgICAgICAgKSwKICAgICAgICAgICdtb2JpbGUnID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnaWNvbicgPT4gJ2ZhLW1vYmlsZScsCiAgICAgICAgICAgICdsYWJlbCcgPT4gJ01vYmlsZScsCiAgICAgICAgICAgICd0aXRsZScgPT4gJ01vYmlsZScsCiAgICAgICAgICAgICd0ZWwnID0+ICc1OTk5NTIxMzI4MCcsCiAgICAgICAgICAgICdzaG93JyA9PiAnKDU5OSA5KSA1MjEtMzI4MCcsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICAgJ2VtYWlsJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAnaWNvbicgPT4gJ2ZhLWVudmVsb3BlJywKICAgICAgICAgICdsYWJlbCcgPT4gJ0VtYWlsJywKICAgICAgICAgICd0aXRsZScgPT4gJ2VtYWlsIEJlbmphbWluIEJyZXN0JywKICAgICAgICAgICdzaG93JyA9PiAnYmVuamFtaW5AYzIxY3VyYWNhby5jb20nLAogICAgICAgICAgJ2xpbmsnID0+ICcjJywKICAgICAgICApLAogICAgICAgICd2b2lwJyA9PiBOVUxMLAogICAgICAgICdzb2NpYWwnID0+IE5VTEwsCiAgICAgICksCiAgICApLAogICAgJ3ByaWNlcycgPT4gCiAgICBhcnJheSAoCiAgICAgICdhc2tpbmcnID0+ICdBTsaSIDg5NS4wMDAsLScsCiAgICAgICdvdGhlcnMnID0+IAogICAgICBhcnJheSAoCiAgICAgICAgJ1VTRCcgPT4gJ1VTJCA0OTcsMjIywrknLAogICAgICAgICdFVVInID0+ICdFVeKCrCA0MjEgMDQ4PHN1cD7CuTwvc3VwPsK5JywKICAgICAgKSwKICAgICAgJ2NsYXNzJyA9PiAnJywKICAgICAgJ3Bvc3RmaXgnID0+ICcnLAogICAgICAnZXh0cmEnID0+IGZhbHNlLAogICAgKSwKICAgICdpdGVtcHJvcCcgPT4gCiAgICBhcnJheSAoCiAgICAgICdhZGRyZXNzJyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICdzdHJlZXRBZGRyZXNzJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgICAgICdhZGRyZXNzTG9jYWxpdHknID0+ICcnLAogICAgICAgICdhZGRyZXNzUmVnaW9uJyA9PiAnQmFuZGEgQm91JywKICAgICAgICAnYWRkcmVzc0NvdW50cnknID0+ICdDdXJhw6dhbycsCiAgICAgICksCiAgICAgICdvZmZlcicgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAncHJpY2UnID0+ICc0OTcyMjIuMjInLAogICAgICAgICdwcmljZUN1cnJlbmN5JyA9PiAnQU5HJywKICAgICAgICAncHJpY2VWYWxpZFVudGlsJyA9PiAnMjAyMC0xMS0wNVQxMzozMzo1MyswMDAwJywKICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2MvaW5xdWlyeS8xMTQ0NTExJywKICAgICAgICAndmFsaWRGcm9tJyA9PiAnMjAxOS0wOS0yNFQxMjowMCcsCiAgICAgICAgJ2F2YWlsYWJpbGl0eScgPT4gJ2h0dHA6Ly9zY2hlbWEub3JnL0luU3RvY2snLAogICAgICApLAogICAgICAncHJvZHVjdCcgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnc2t1JyA9PiAnUkVTMTE0NDUxMScsCiAgICAgICAgJ3Byb2R1Y3RJRCcgPT4gJzExNDQ1MTEnLAogICAgICAgICduYW1lJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgICAgICdkZXNjcmlwdGlvbicgPT4gJ1N0eWxlIGlzIHdyaXR0ZW4gaW4gY2FwaXRhbCBsZXR0ZXJzIGluIHRoaXMgYmVhdXRpZnVsLCBjbGFzc2ljIHRyb3BpY2FsIGhvdXNlIGluIHRoZSBwb3B1bGFyIHJlc2lkZW50aWFsIGFyZWEgdmFuIGVuZ2VsZW4hIEFtaWRzdCBhIGJlYXV0aWZ1bGx5IGxhbmRzY2FwZWQgZ2FyZGVuLCB0aGUgbG92ZXIgb2YgYSBob3VzZSB3aGVyZSBvcmlnaW5hbGl0eSBpcyBwYXJhbW91bnQgY29tZXMgaW50byBpdHMgb3duLiBUaGluayBvZiB0aGUgc3BhY2lvdXMgcm9vZiB3aXRoIGxhcmdlIG92ZXJoYW5ncyBhbmQgdGhlIHdpbmRvd3Mgd2l0aCBtb3ZhYmxlIHNodXR0ZXJzIHRoYXQgZ3VhcmFudGVlIG9wdGltdW0gdmVudGlsYXRpb24gYW5kIG5hdHVyYWwgY29vbGluZy4gVGhlIGhpZ2ggY2VpbGluZ3MgYW5kIGRvb3JzLCB0aGUgcmljaGx5IGRlY29yYXRlZCB0aWxlZCBmbG9vcnMsIGl0IGlzIGFsbCBhIGZlYXN0IGZvciB0aGUgZXllcyEgSW4gYWRkaXRpb24sIHRoZSBob3VzZSBoYXMgYSBzcGFjaW91cyBhbmQgcHJhY3RpY2FsIGxheW91dC4gQSBsaXZpbmcgcm9vbSB3aXRoIGRpbmluZyByb29tIGFuZCBhIHNpZGUgcm9vbSAodmVyeSB1c2VmdWwgYXMgYSBob21lIG9mZmljZSEgKSBlbnN1aXRlLCB0aHJlZSBkZWxpZ2h0ZnVsIGJlZHJvb21zIGFuZCB0d28gY29udGVtcG9yYXJ5IGJhdGhyb29tcyB0aGF0IGhhdmUgYmVlbiBjYXJlZnVsbHkgbWF0Y2hlZCB0byB0aGUgZGVzaWduIG9mIHRoZSBob3VzZS4gVGhpcyBjZXJ0YWlubHkgYWxzbyBhcHBsaWVzIHRvIHRoZSBraXRjaGVuIHRoYXQgaXMgZXF1aXBwZWQgd2l0aCBhbGwgYnVpbHQtaW4gYXBwbGlhbmNlcyB0aGF0IGNvdWxkIGJlIGRlc2lyZWQuIEluc2lkZSB0aGUgaG91c2UgdGhlIG91dHNpZGUgaXMgYWx3YXlzIHZpc2libGUgYW5kIHRhbmdpYmxlLiBFdmVyeXdoZXJlIHRoZXJlIGlzIGEgdmlldyBvZiB0aGUgYmVhdXRpZnVsIHRyb3BpY2FsIGdhcmRlbi4gSW5kb29yIGFuZCBvdXRkb29yIHNwYWNlLCBpbmNsdWRpbmcgdGhlIHNwYWNpb3VzIHBvcmNoZXMsIG1lcmdlIHNtb290aGx5IGFuZCB1bm5vdGljZWQuIEl0IGlzIHByZWNpc2VseSB0aGlzIGFzcGVjdCB0aGF0IGdpdmVzIHRoZSBob3VzZSBpdHMgc3BlY2lhbCB0cm9waWNhbCBjaGFyYWN0ZXIuIEJ1dCBhYm92ZSBhbGwsIGl0IGlzIG9mIGNvdXJzZSBhIHdvbmRlcmZ1bCBob3VzZSB0byBsaXZlIGluIGFuZCBlbmpveSBldmVyeXRoaW5nIHRoaXMgc3BlY2lhbCBwbGFjZSBoYXMgdG8gb2ZmZXIuIFRoZSBzaXRlIG9mZmVycyBzdWZmaWNpZW50IHBhcmtpbmcgc3BhY2UgYW5kIGEgc3dpbW1pbmcgcG9vbCBpcyBhbHNvIHBvc3NpYmxlLiBNb3Jlb3ZlciwgeW91ciBndWVzdHMgaGF2ZSBiZWVuIHRob3VnaHQgb2YgaW4gdGhlIGZvcm0gb2YgYSBkZXRhY2hlZCBhcGFydG1lbnQuIERvIHlvdSB3YW50IHRvIHNlZSB0aGlzIGhvdXNlIGZvciB5b3Vyc2VsZj8gVGhlbiBtYWtlIGFuIGFwcG9pbnRtZW50LCBmcmVlIG9mIG9ibGlnYXRpb24sIGZvciBhIHZpZXdpbmcgd2l0aCBvbmUgb2Ygb3VyIGJyb2tlcnMuIFZhbiBlbmdlbGVuIHZhbiBlbmdlbGVuLCBhIGhpZ2hseSBkZXNpcmVkIG5laWdoYm9yaG9vZCwgaXMgY2VudHJhbGx5IGxvY2F0ZWQuIEl0IHRha2VzIG9ubHkgYSAxMCBtaW51dGVzXCcgZHJpdmUgdG8gdGhlIGNlbnRlciBvZiB3aWxsZW1zdGFkLiBCZWNhdXNlIG9mIGl0cyBsb2NhdGlvbiBhbmQgc2V0dGluZyBpdCBpcyBhIHZlcnkgcG9wdWxhciByZXNpZGVudGlhbCBhcmVhIG9uIGN1cmHDp2FvLiBJbiB0aGUgdmljaW5pdHkgdGhlcmUgYXJlIHN1cGVybWFya2V0cywgZG9jdG9ycywgZGVudGlzdHMgYW5kIGEgZml0bmVzcyBjZW50ZXIuIFZhbiBlbmdlbGVuIGlzIGFsc28gY2xvc2UgdG8gdmFyaW91cyBzaG9wcGluZyBtYWxscywgcmVzdGF1cmFudHMgYW5kIGJlYWNoZXMuJywKICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2QvMTE0NDUxMScsCiAgICAgICAgJ2ltYWdlJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEveGxnLzAuanBnJywKICAgICAgICAnb2ZmZXJzJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAncHJpY2UnID0+ICc0OTcyMjIuMjInLAogICAgICAgICAgJ3ByaWNlQ3VycmVuY3knID0+ICdBTkcnLAogICAgICAgICAgJ3ByaWNlVmFsaWRVbnRpbCcgPT4gJzIwMjAtMTEtMDVUMTM6MzM6NTMrMDAwMCcsCiAgICAgICAgICAndXJsJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL2VuL2MvaW5xdWlyeS8xMTQ0NTExJywKICAgICAgICAgICd2YWxpZEZyb20nID0+ICcyMDE5LTA5LTI0VDEyOjAwJywKICAgICAgICAgICdhdmFpbGFiaWxpdHknID0+ICdodHRwOi8vc2NoZW1hLm9yZy9JblN0b2NrJywKICAgICAgICApLAogICAgICAgICdicmFuZCcgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ25hbWUnID0+ICdDRU5UVVJZIDIxJywKICAgICAgICApLAogICAgICAgICdzZWxsZXInID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgICdsZWdhbE5hbWUnID0+ICdDRU5UVVJZIDIxICMxIFJlYWwgRXN0YXRlJywKICAgICAgICAgICdsb2dvJyA9PiAnaHR0cHM6Ly9jZW50dXJ5MjFudW1iZXJvbmUuY29tL21scy5jZG4vaW1hZ2VzL2xvZ29zLzEwMDAzOTkvMTUweDUwLmpwZycsCiAgICAgICAgICAnZW1wbG95ZWUnID0+ICdCZW5qYW1pbiBCcmVzdCcsCiAgICAgICAgICAndGVsZXBob25lJyA9PiAnKDU5OSA5KSA3MzctMDIwMScsCiAgICAgICAgICAndXJsJyA9PiAnaHR0cDovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20nLAogICAgICAgICksCiAgICAgICAgJ2FkZGl0aW9uYWxQcm9wZXJ0eScgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgMCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdDb3VudHJ5JywKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnQ3VyYcOnYW8nLAogICAgICAgICAgKSwKICAgICAgICAgIDEgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnUHJvcGVydHkgQ2xhc3MnLAogICAgICAgICAgICAndmFsdWUnID0+ICdSZXNpZGVudGlhbCcsCiAgICAgICAgICApLAogICAgICAgICAgMiA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdQcm9wZXJ0eSBDYXRlZ29yeScsCiAgICAgICAgICAgICd2YWx1ZScgPT4gJ1NpbmdsZSBGYW1pbHkgSG9tZXMnLAogICAgICAgICAgKSwKICAgICAgICAgIDMgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnVHJhbnNhY3Rpb24gVHlwZScsCiAgICAgICAgICAgICd2YWx1ZScgPT4gJ0ZvciBTYWxlJywKICAgICAgICAgICksCiAgICAgICAgICA0ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnbmFtZScgPT4gJ1Byb3BlcnR5IFZpZXcnLAogICAgICAgICAgICAndmFsdWUnID0+ICdHYXJkZW4gVmlldycsCiAgICAgICAgICApLAogICAgICAgICAgNSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ25hbWUnID0+ICdCZWRyb29tcycsCiAgICAgICAgICAgICd2YWx1ZScgPT4gMywKICAgICAgICAgICksCiAgICAgICAgICA2ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnbmFtZScgPT4gJ0JhdGhyb29tcycsCiAgICAgICAgICAgICd2YWx1ZScgPT4gMiwKICAgICAgICAgICksCiAgICAgICAgICA3ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnbmFtZScgPT4gJ0xpdmluZyBTcGFjZScsCiAgICAgICAgICAgICd2YWx1ZScgPT4gJzMwMCBtwrInLAogICAgICAgICAgKSwKICAgICAgICAgIDggPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICduYW1lJyA9PiAnTGFuZCBBcmVhJywKICAgICAgICAgICAgJ3ZhbHVlJyA9PiAnMSwwNTAgbcKyJywKICAgICAgICAgICksCiAgICAgICAgKSwKICAgICAgKSwKICAgICAgJ2V2ZW50JyA9PiAKICAgICAgYXJyYXkgKAogICAgICAgICduYW1lJyA9PiAnRm9yIFNhbGU6IFNpbmdsZSBGYW1pbHkgSG9tZXMgLSAsIEN1cmEmY2NlZGlsO2FvJywKICAgICAgICAnbG9jYXRpb24nID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgICduYW1lJyA9PiAnU2luZ2xlIEZhbWlseSBIb21lcycsCiAgICAgICAgICAnYWRkcmVzcycgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdzdHJlZXRBZGRyZXNzJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgICAgICAgICAnYWRkcmVzc0xvY2FsaXR5JyA9PiAnJywKICAgICAgICAgICAgJ2FkZHJlc3NSZWdpb24nID0+ICdCYW5kYSBCb3UnLAogICAgICAgICAgICAnYWRkcmVzc0NvdW50cnknID0+ICdDdXJhw6dhbycsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICAgJ29mZmVycycgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ3ByaWNlJyA9PiAnNDk3MjIyLjIyJywKICAgICAgICAgICdwcmljZUN1cnJlbmN5JyA9PiAnQU5HJywKICAgICAgICAgICdwcmljZVZhbGlkVW50aWwnID0+ICcyMDIwLTExLTA1VDEzOjMzOjUzKzAwMDAnLAogICAgICAgICAgJ3VybCcgPT4gJ2h0dHBzOi8vY2VudHVyeTIxbnVtYmVyb25lLmNvbS9lbi9jL2lucXVpcnkvMTE0NDUxMScsCiAgICAgICAgICAndmFsaWRGcm9tJyA9PiAnMjAxOS0wOS0yNFQxMjowMCcsCiAgICAgICAgICAnYXZhaWxhYmlsaXR5JyA9PiAnaHR0cDovL3NjaGVtYS5vcmcvSW5TdG9jaycsCiAgICAgICAgKSwKICAgICAgICAnaW1hZ2UnID0+ICdodHRwczovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20vbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS94bGcvMC5qcGcnLAogICAgICAgICdkZXNjcmlwdGlvbicgPT4gJ1N0eWxlIGlzIHdyaXR0ZW4gaW4gY2FwaXRhbCBsZXR0ZXJzIGluIHRoaXMgYmVhdXRpZnVsLCBjbGFzc2ljIHRyb3BpY2FsIGhvdXNlIGluIHRoZSBwb3B1bGFyIHJlc2lkZW50aWFsIGFyZWEgdmFuIGVuZ2VsZW4hIEFtaWRzdCBhIGJlYXV0aWZ1bGx5IGxhbmRzY2FwZWQgZ2FyZGVuLCB0aGUgbG92ZXIgb2YgYSBob3VzZSB3aGVyZSBvcmlnaW5hbGl0eSBpcyBwYXJhbW91bnQgY29tZXMgaW50byBpdHMgb3duLiBUaGluayBvZiB0aGUgc3BhY2lvdXMgcm9vZiB3aXRoIGxhcmdlIG92ZXJoYW5ncyBhbmQgdGhlIHdpbmRvd3Mgd2l0aCBtb3ZhYmxlIHNodXR0ZXJzIHRoYXQgZ3VhcmFudGVlIG9wdGltdW0gdmVudGlsYXRpb24gYW5kIG5hdHVyYWwgY29vbGluZy4gVGhlIGhpZ2ggY2VpbGluZ3MgYW5kIGRvb3JzLCB0aGUgcmljaGx5IGRlY29yYXRlZCB0aWxlZCBmbG9vcnMsIGl0IGlzIGFsbCBhIGZlYXN0IGZvciB0aGUgZXllcyEgSW4gYWRkaXRpb24sIHRoZSBob3VzZSBoYXMgYSBzcGFjaW91cyBhbmQgcHJhY3RpY2FsIGxheW91dC4gQSBsaXZpbmcgcm9vbSB3aXRoIGRpbmluZyByb29tIGFuZCBhIHNpZGUgcm9vbSAodmVyeSB1c2VmdWwgYXMgYSBob21lIG9mZmljZSEgKSBlbnN1aXRlLCB0aHJlZSBkZWxpZ2h0ZnVsIGJlZHJvb21zIGFuZCB0d28gY29udGVtcG9yYXJ5IGJhdGhyb29tcyB0aGF0IGhhdmUgYmVlbiBjYXJlZnVsbHkgbWF0Y2hlZCB0byB0aGUgZGVzaWduIG9mIHRoZSBob3VzZS4gVGhpcyBjZXJ0YWlubHkgYWxzbyBhcHBsaWVzIHRvIHRoZSBraXRjaGVuIHRoYXQgaXMgZXF1aXBwZWQgd2l0aCBhbGwgYnVpbHQtaW4gYXBwbGlhbmNlcyB0aGF0IGNvdWxkIGJlIGRlc2lyZWQuIEluc2lkZSB0aGUgaG91c2UgdGhlIG91dHNpZGUgaXMgYWx3YXlzIHZpc2libGUgYW5kIHRhbmdpYmxlLiBFdmVyeXdoZXJlIHRoZXJlIGlzIGEgdmlldyBvZiB0aGUgYmVhdXRpZnVsIHRyb3BpY2FsIGdhcmRlbi4gSW5kb29yIGFuZCBvdXRkb29yIHNwYWNlLCBpbmNsdWRpbmcgdGhlIHNwYWNpb3VzIHBvcmNoZXMsIG1lcmdlIHNtb290aGx5IGFuZCB1bm5vdGljZWQuIEl0IGlzIHByZWNpc2VseSB0aGlzIGFzcGVjdCB0aGF0IGdpdmVzIHRoZSBob3VzZSBpdHMgc3BlY2lhbCB0cm9waWNhbCBjaGFyYWN0ZXIuIEJ1dCBhYm92ZSBhbGwsIGl0IGlzIG9mIGNvdXJzZSBhIHdvbmRlcmZ1bCBob3VzZSB0byBsaXZlIGluIGFuZCBlbmpveSBldmVyeXRoaW5nIHRoaXMgc3BlY2lhbCBwbGFjZSBoYXMgdG8gb2ZmZXIuIFRoZSBzaXRlIG9mZmVycyBzdWZmaWNpZW50IHBhcmtpbmcgc3BhY2UgYW5kIGEgc3dpbW1pbmcgcG9vbCBpcyBhbHNvIHBvc3NpYmxlLiBNb3Jlb3ZlciwgeW91ciBndWVzdHMgaGF2ZSBiZWVuIHRob3VnaHQgb2YgaW4gdGhlIGZvcm0gb2YgYSBkZXRhY2hlZCBhcGFydG1lbnQuIERvIHlvdSB3YW50IHRvIHNlZSB0aGlzIGhvdXNlIGZvciB5b3Vyc2VsZj8gVGhlbiBtYWtlIGFuIGFwcG9pbnRtZW50LCBmcmVlIG9mIG9ibGlnYXRpb24sIGZvciBhIHZpZXdpbmcgd2l0aCBvbmUgb2Ygb3VyIGJyb2tlcnMuIFZhbiBlbmdlbGVuIHZhbiBlbmdlbGVuLCBhIGhpZ2hseSBkZXNpcmVkIG5laWdoYm9yaG9vZCwgaXMgY2VudHJhbGx5IGxvY2F0ZWQuIEl0IHRha2VzIG9ubHkgYSAxMCBtaW51dGVzXCcgZHJpdmUgdG8gdGhlIGNlbnRlciBvZiB3aWxsZW1zdGFkLiBCZWNhdXNlIG9mIGl0cyBsb2NhdGlvbiBhbmQgc2V0dGluZyBpdCBpcyBhIHZlcnkgcG9wdWxhciByZXNpZGVudGlhbCBhcmVhIG9uIGN1cmHDp2FvLiBJbiB0aGUgdmljaW5pdHkgdGhlcmUgYXJlIHN1cGVybWFya2V0cywgZG9jdG9ycywgZGVudGlzdHMgYW5kIGEgZml0bmVzcyBjZW50ZXIuIFZhbiBlbmdlbGVuIGlzIGFsc28gY2xvc2UgdG8gdmFyaW91cyBzaG9wcGluZyBtYWxscywgcmVzdGF1cmFudHMgYW5kIGJlYWNoZXMuJywKICAgICAgICAnc3RhcnREYXRlJyA9PiAnMjAxOS0wOS0yNFQxMjowMCcsCiAgICAgICAgJ2VuZERhdGUnID0+ICcyMDIwLTExLTA1VDEzOjMzOjUzKzAwMDAnLAogICAgICAgICd1cmwnID0+ICdodHRwczovL2NlbnR1cnkyMW51bWJlcm9uZS5jb20vZW4vZC92YW4tZW5nZWxlbi1vcmlnaW5hbC1zdHlsZS12aWxsYS1ob21lLWZvci1zYWxlLWN1cmFjYW8tMTE0NDUxMScsCiAgICAgICAgJ3BlcmZvcm1lcicgPT4gCiAgICAgICAgYXJyYXkgKAogICAgICAgICAgJ25hbWUnID0+ICdDRU5UVVJZIDIxICMxIFJlYWwgRXN0YXRlJywKICAgICAgICApLAogICAgICApLAogICAgKSwKICAgICdtYXAnID0+IAogICAgYXJyYXkgKAogICAgICAnbGF0JyA9PiAnMTIuMTI3MTI5NTY0MTE4NjAzMCcsCiAgICAgICdsbmcnID0+ICctNjguODg5NjMxMDMyOTQzNzMwMCcsCiAgICAgICdjb29yZHMnID0+ICcxMi4xMjcxMjk1NjQxMTg2MDMwLC02OC44ODk2MzEwMzI5NDM3MzAwJywKICAgICAgJ2RpcmVjdGlvbnMnID0+ICdodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZGlyL0N1cmElQzMlQTdhbyUyQkludGVybmF0aW9uYWwlMkJBaXJwb3J0JTJDJTJCQ3VyYSVDMyVBN2FvLzEyLjEyNzEyOTU2NDExODYwMzAsLTY4Ljg4OTYzMTAzMjk0MzczMDAvQDEyLjE0MDcwMTMsLTY4Ljk2NTgzODMsMTN6JywKICAgICksCiAgICAnbWVkaWEnID0+IAogICAgYXJyYXkgKAogICAgICAnZ2FsbGVyeScgPT4gCiAgICAgIGFycmF5ICgKICAgICAgICAnbGFiZWxzJyA9PiAKICAgICAgICBhcnJheSAoCiAgICAgICAgICAncHJldicgPT4gJ1ByZXZpb3VzJywKICAgICAgICAgICduZXh0JyA9PiAnTmV4dCcsCiAgICAgICAgICAnbm9fcGhvdG9zJyA9PiAnU29ycnkuIE5vIFBob3RvcyBBdmFsYWlibGUuJywKICAgICAgICApLAogICAgICAgICdwaG90b3MnID0+IAogICAgICAgIGFycmF5ICgKICAgICAgICAgIDAgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEnLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi8wLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSgyKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzEuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAyID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDMpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvMi5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDMgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoNCknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi8zLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgNCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSg1KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzQuanBnJywKICAgICAgICAgICksCiAgICAgICAgICA1ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDYpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvNS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDYgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoNyknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi82LmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgNyA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSg4KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzcuanBnJywKICAgICAgICAgICksCiAgICAgICAgICA4ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDkpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvOC5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDkgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoMTApJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvOS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDEwID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDExKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzEwLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTEgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoMTIpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvMTEuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxMiA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSgxMyknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi8xMi5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDEzID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDE0KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzEzLmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTQgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoMTUpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvMTQuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxNSA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSgxNiknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi8xNS5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDE2ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDE3KScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzE2LmpwZycsCiAgICAgICAgICApLAogICAgICAgICAgMTcgPT4gCiAgICAgICAgICBhcnJheSAoCiAgICAgICAgICAgICdjYXB0aW9uJyA9PiAnKioqIGNvbWluZyBzb29uICoqKicsCiAgICAgICAgICAgICd0aXRsZV9zYWZlJyA9PiAnVmFuIEVuZ2VsZW4gT3JpZ2luYWwgU3R5bGUgVmlsbGEoMTgpJywKICAgICAgICAgICAgJ3NyYycgPT4gJy9tbHMuY2RuL2ltYWdlcy9saXN0aW5ncy8xMTQ0NTExL2YvMTcuanBnJywKICAgICAgICAgICksCiAgICAgICAgICAxOCA9PiAKICAgICAgICAgIGFycmF5ICgKICAgICAgICAgICAgJ2NhcHRpb24nID0+ICcqKiogY29taW5nIHNvb24gKioqJywKICAgICAgICAgICAgJ3RpdGxlX3NhZmUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSgxOSknLAogICAgICAgICAgICAnc3JjJyA9PiAnL21scy5jZG4vaW1hZ2VzL2xpc3RpbmdzLzExNDQ1MTEvZi8xOC5qcGcnLAogICAgICAgICAgKSwKICAgICAgICAgIDE5ID0+IAogICAgICAgICAgYXJyYXkgKAogICAgICAgICAgICAnY2FwdGlvbicgPT4gJyoqKiBjb21pbmcgc29vbiAqKionLAogICAgICAgICAgICAndGl0bGVfc2FmZScgPT4gJ1ZhbiBFbmdlbGVuIE9yaWdpbmFsIFN0eWxlIFZpbGxhKDIwKScsCiAgICAgICAgICAgICdzcmMnID0+ICcvbWxzLmNkbi9pbWFnZXMvbGlzdGluZ3MvMTE0NDUxMS9mLzE5LmpwZycsCiAgICAgICAgICApLAogICAgICAgICksCiAgICAgICksCiAgICAgICdtYXBsb2MnID0+ICdodHRwczovL3d3dy5nb29nbGUuY29tL21hcHMvZW1iZWQ/cGI9ITFtMTghMW0xMiExbTMhMWQxNTA2My42OTY0MDY4OCEyZC02OC44ODk2MzEwMzI5NDM3MyEzZDEyLjEyNzEyOTU2NDExODYwITJtMyExZjAhMmYwITNmMCEzbTIhMWkxMDI0ITJpNzY4ITRmMTMuMSEzbTMhMW0yITFzMHgwJTNBMHgwITJ6TVRMQ3NEY25NemN1TnlKT0lEWTR3ckExTXljeU1pNDNJbGMhNWUwITNtMiExc2VuITJzY2EhNHYxNTk2NjM0NDMzMjM1ITVtMiExc2VuITJzY2EnLAogICAgICAndmlkZW9zJyA9PiAnSycsCiAgICAgICd2dG91cnMnID0+IGZhbHNlLAogICAgKSwKICApLAogICdlVGFnQXJyJyA9PiAKICBhcnJheSAoCiAgICAnaWNpZCcgPT4gJ2N3JywKICAgICd0aHJlYXQnID0+IDEsCiAgICAncm9ib3QnID0+IDAsCiAgICAnbGFuZycgPT4gJ2VuJywKICAgICdhY2N0SWQnID0+ICcxMDAwMzk5JywKICAgICdsaWQnID0+ICcxMTQ0NTExJywKICAgICdsYXN0dXBkYXRlJyA9PiAxNTcxNDEyOTMzLAogICksCiAgJ2VUYWcnID0+ICdkLjEuZW4uMTE0NDUxMScsCiAgJ21heEFnZScgPT4gMTQ0MDAsCiAgJ21heERlZkhvdXJzJyA9PiA0LAogICdNZXRhSW5mbycgPT4gCiAgYXJyYXkgKAogICAgJ3NpdGVfbmFtZScgPT4gJ0NFTlRVUlkgMjEgTnVtYmVyIE9uZScsCiAgICAndGl0bGUnID0+ICdWYW4gRW5nZWxlbiBPcmlnaW5hbCBTdHlsZSBWaWxsYSAtIEhvbWUgRm9yIFNhbGUgIEN1cmHDp2FvIHwgQ2VudHVyeSAyMSBDdXJhw6dhbyBSZWFsIEVzdGF0ZScsCiAgICAnZGVzY3JpcHRpb24nID0+ICdTdHlsZSBpcyB3cml0dGVuIGluIGNhcGl0YWwgbGV0dGVycyBpbiB0aGlzIGJlYXV0aWZ1bCwgY2xhc3NpYyB0cm9waWNhbCBob3VzZSBpbiB0aGUgcG9wdWxhciByZXNpZGVudGlhbCBhcmVhIHZhbiBlbmdlbGVuISBBbWlkc3QgYSBiZWF1dGlmdWxseSBsYW5kc2NhcGVkIGcuLi4nLAogICAgJ2Nhbm9uaWNhbCcgPT4gJ2h0dHBzOi8vY2VudHVyeTIxbnVtYmVyb25lLmNvbS9lbi9kLzExNDQ1MTEnLAogICAgJ2FtcGh0bWwnID0+ICcvYW1wL2VuL2QvMTE0NDUxMScsCiAgICAnbG9jYWxlJyA9PiAnZW4tVVMnLAogICksCiAgJ3VyaV9hbHRlcm5hdGVzJyA9PiAKICBhcnJheSAoCiAgICAnZW4nID0+IAogICAgYXJyYXkgKAogICAgICAnbGFuZycgPT4gJ2VuJywKICAgICAgJ2xhYmVsJyA9PiAnRW5nbGlzaCcsCiAgICAgICdmbGFnJyA9PiAnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCQUFBQUFMQ0FJQUFBRDVnSnB1QUFBQUJHZEJUVUVBQUsvSU53V0s2UUFBQUJsMFJWaDBVMjltZEhkaGNtVUFRV1J2WW1VZ1NXMWhaMlZTWldGa2VYSEpaVHdBQUFIelNVUkJWSGphWWt4T1A4SUFCLy8rTWZ6N3c4RHdpNEhoUDVDY0piL24vN2V2YjE2L0FQTC9nUkZRRGlBQXczSnVBZ0FJQkVEUS9pc3dFRVJqR3pCUUxFcnU5N2xsMGcwKzNIdnFNbjFTcHFscUdzWk1zWnNJZTBTSUNBNWd0NWEvQUdJRWFyQ1B0RmgrNk4vZmZ3eEE5T3ZQLzcvL1FZd2ZmLzZmWmFobWVQZUI0ZE5IaGkrZkdiNTlZNHp5dkhIbUNFQUFBVzNZRHpRWWFKSjkzYSt2WDc5YVZmNTgvLzY5ZnZFUGxwSWZuejU5K3ZEaHc3dDM3OTY4ZWZQM2IvU1hMNTlPbmp3SUVFQXNEUCtZZ1k1M2IyYjg5KysvYXd2TG45OE1EaTJjVnhsKy92bDZtaXR1Q3RCZ2hpOWYvdi80OGUvWEw4NmtyajlYendFRUVFTnk4ZzZndTIycmZuNzgrTkdzNU9mcjE2K1pDNTgrZnZ5WXdYOHJ4T3hYcjE2OWZQbnkrZlBuMS8vOTNiSmxCVUFBc1FBRFpNRUJ4ajkvR0J4YjJQLzkrUy9SOHUzdnp4dXlhWDhaSHYzajgvWUdtczN3OHljUUFSbWkyZUUzN3Q0QUNDREdSNC91U2tyS0FTMzVCM1RULy8vL3dBRE9nTE9CSWFYSXlqQmx3eEtBQUdLUlhqQ0IwU09FYWV1Ky95OWZNbno0QUhReENQMzQ4Ui9vK2wrLy9zTVpRQk5MRXZpZjNBY0lJTVpidHk3THk2dDlabVhsK2ZYai8zOEdvSEgvVWNHZlA3OS8vQkJpWUhqeTkrOC9vVWtOQUFIRXd0MVYvdkkvS0JZL1FTSVNGcU0vR0JnK016QjhBNlBmWUM1RUZpREFBQnFnVzc3Nk1QMHJBQUFBQUVsRlRrU3VRbUNDJywKICAgICAgJ2hyZWYnID0+ICcvZW4vZC92YW4tZW5nZWxlbi1vcmlnaW5hbC1zdHlsZS12aWxsYS1ob21lLWZvci1zYWxlLWN1cmFjYW8tMTE0NDUxMScsCiAgICApLAogICAgJ25sJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2xhbmcnID0+ICdubCcsCiAgICAgICdsYWJlbCcgPT4gJ05lZGVybGFuZHMnLAogICAgICAnZmxhZycgPT4gJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBTENBSUFBQUQ1Z0pwdUFBQUFCR2RCVFVFQUFLL0lOd1dLNlFBQUFCbDBSVmgwVTI5bWRIZGhjbVVBUVdSdlltVWdTVzFoWjJWU1pXRmtlWEhKWlR3QUFBRlhTVVJCVkhqYVl2elBnQUQvVU5sWUVVQUFrdVRnQ0FBSUJnSmdncTVWb0FzMXFNMHZkem1NejM2MnZlempva3hQR2lta0VRNVdvQVFFS3VLNzF6d0NDS3lCNGMvL0o4K0JTaG4rL3Z2Lyt3L0QzOTlBRW94Ky8vOEZKSC85L3dVVStjVW9LdzIwQVNDQVdCaEVEZi9MeURPdzg0QlUvL2tEdGdHSS9vQVJtQUhSREpRU0Z3VnFBQWdneG84ZlAvTHk4b0tjOVA4L0F4amlBb3lNakE4ZVBBQUlJSlovLy81QlZJTTBNT0JXRHBSbFpQeno1dzlBQUxIOGd5dkNiejdRQnJDSkFBSEV5S0RZWDE1ci8rajExOTkvL3YzNSsrL1huNysvLy83N0RTVC93TWwvZjREazM3OEs0ang3TzJjQUJCQUx3N05QNzcvK2V2M3hCMGdPcE9IZnI5OUFkWDkvZ1RWQVNLQ0dQLy8rOFhDeU1qQzhBd2dnRm9aZklIV1N3cHdRazRDVy9BWWpzS2xBOHUrZmYvLy8vdjMzOTk4L1lQZ0JuUVFRUUl6QWFHTmcrQVZHZjVBWWY1QkUvb0NqR0VJeUFRUVlBR3ZLWjRDNit4WFJBQUFBQUVsRlRrU3VRbUNDJywKICAgICAgJ2hyZWYnID0+ICcvbmwvZC92YW4tZW5nZWxlbi1vcmlnaW5hbC1zdHlsZS12aWxsYS10ZS1rb29wLWN1cmFjYW8tMTE0NDUxMScsCiAgICApLAogICAgJ2VzJyA9PiAKICAgIGFycmF5ICgKICAgICAgJ2xhbmcnID0+ICdlcycsCiAgICAgICdsYWJlbCcgPT4gJ0VzcGHDsW9sJywKICAgICAgJ2ZsYWcnID0+ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQUxDQUlBQUFENWdKcHVBQUFBQkdkQlRVRUFBSy9JTndXSzZRQUFBQmwwUlZoMFUyOW1kSGRoY21VQVFXUnZZbVVnU1cxaFoyVlNaV0ZrZVhISlpUd0FBQUZuU1VSQlZIamFZdnpQZ0FEL1VObFlFVUFBbXVUWUFBQVFoQUVZcUYvekZiZTUwUloxY01tUzlUTGkwcEpMUmpab2hBTVRHRlVOOUhkbkhnRUUxc0R3Ly8rVHAwQ2xJTlcvZjBOSUtQb0ZKSC85Ly9VTHlHYVVsUVhhQUJCQUxBeC9HZjR6QXQzMUY0aStmZmozL2NOL1hyRmZ6T3gvL3YvLy9mLy9MekFDTS83OVptRDgvZThUQTBBQU1ZSGREVlQ5NTh2WFAzOG5NREIwczN4OTQvVGo1eStZYWhoaUFLTGZRS1VBQWNRRWR0SmZvREhNRjJMK3ZQekRtRlhMZWxmNTUxdEdGT09oZXY0QS9RZ1FRRXhnSHdBZDhJZEZUL1d6NmorR2hscG1YU09XLzJ6Ly8vOEVxL3NKMThEdy96ZFFBMEFBTVFFeHhKampkeTl4Mi83NkVmTHo0TVhkUC9pK3dzeUdra0EzQXczOTg0Y0JJSUFZZnpJd01LZWwvYnQzandFYUxOQXdnWklReHAvZkRILytNcXFvdkwxNEVTQ0FXSUNlWnZyOWgwRlNFaFNnd0JnQXlnRkRFTVQrd3dBaGdRZ2M0a0FFVkF3UVFJeGZVU01TVHh4REFFQ0FBUUFKV2tlOHY0dTF0QUFBQUFCSlJVNUVya0pnZ2c9PScsCiAgICAgICdocmVmJyA9PiAnL2VzL2QvdmFuLWVuZ2VsZW4tb3JpZ2luYWwtc3R5bGUtdmlsbGEtY2FzYS12ZW50YS1jdXJhemFvLTExNDQ1MTEnLAogICAgKSwKICAgICdkZScgPT4gCiAgICBhcnJheSAoCiAgICAgICdsYW5nJyA9PiAnZGUnLAogICAgICAnbGFiZWwnID0+ICdEZXV0c2NoJywKICAgICAgJ2ZsYWcnID0+ICdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQUxDQUlBQUFENWdKcHVBQUFBQkdkQlRVRUFBSy9JTndXSzZRQUFBQmwwUlZoMFUyOW1kSGRoY21VQVFXUnZZbVVnU1cxaFoyVlNaV0ZrZVhISlpUd0FBQUd6U1VSQlZIamFZdlR4Y1diNCs1M2gzejhHWnBaZmYvNzkrdjNuLzcvZkRBei9HSEFBZ0FCaStmMzdlM0Z4T1pEMUR3eisvdjN6OXkrRS9BTUZ2My8vK1F1bWZ2OWV0MjQxUUFDeE1ERXhBVldmT0hrSkpBRVcvZ1VFUDBFUURuNzgrQUhFL2dGT1FKVUFBY1FpeThBZzhPK2ZMRmoxbjErL1FEcCsvZ1Fpb0s3ZlAzNzgrdmtEcU9IMzl4OUEvUkovZ0U1bEFBaEFZaHpjQUFDQ1FCRGtnUlhSalAwMzRSMElhRFRaVEZabjBESXRvdDM3Uzk0S0xPSU5lckVjSTdhS0hBSEU4di8zci85Ly96SUExZjM2L1IrbzR0ZXZmMUFOWU5WQTlQMDdSRDlJSlFNRFFBQ3hBREhEM3o4SWc0R01IeitBcXFIYWdLcC8vZndMVkEwVS8vdjdMd01EUUFDeC9MWmlZRkQ3LzUvNTMvKy8vLzc5QnFLL0VNWi9VUEFDU1lhL3YvOER5WDlBMG9UeHgyRUdnQUJpK2EvSDhGL20zMzlCb0NvUStnOGtnUmFDUXZnUEpKaUJZbUF1dzM5aHhuK3VEQUFCeE1Md2krRS8wUHVzUmt3TXZ4aEJHb0RrSDRiL3YvK0QyRUR5ei8vL1FCMS9RTGI4K3NQMGxRRWdnRmgrdkdYWU0yL1NQNkEyWm9hZjMwRXgvSitQZ2VrSHd6OWdRREF6L1AwRllyQXlNZno3d2NEQXpQRHRGd05BZ0FFQWQzU0l5Uml0WDFnQUFBQUFTVVZPUks1Q1lJST0nLAogICAgICAnaHJlZicgPT4gJy9kZS9kL3Zhbi1lbmdlbGVuLW9yaWdpbmFsLXN0eWxlLXZpbGxhLXp1LXZlcmthdWZlbi1jdXJhY2FvLTExNDQ1MTEnLAogICAgKSwKICApLAop