Geo Location 18.14.0-rc1 Question

Home » Asterisk Users » Geo Location 18.14.0-rc1 Question
Asterisk Users 24 Comments

I believe I have everything configured correctly, but Asterisk is complaining about my configuration

It is complaining about confidence settings.

From the Asterisk Geolocation Implementation Wiki, I believe I have this set correctly.

Sub-parameters:

* value: A percentage indicating the confidence or “unknown”.
* pdf: “unknown”, “normal” or “rectangular”
Example: confidence = value=80, pdf=unknown If no confidence parameter is specified, the default is 95%. See RFC7459 for the exact definition of this parameter.

[08/02 09:30:03.724] ERROR[682944] config_options.c: Could not find option suitable for category ‘IS_loc_1’ named ‘confidence’ at line 12 of
[08/02 09:30:03.724] ERROR[682944] res_sorcery_config.c: Could not create an object of type ‘location’ with id ‘IS_loc_1’ from configuration file ‘geolocation.conf’

[IS_loc_1]
type = location format = civicAddress confidence = value=95, pdf=unknown location_info = country=US,A1=Wisconsin,A3=Madison location_info = HNO=4800,RD=Main,STS=Drive,PC=53704

Also seeing problems with location_refinement setting. Again, I believe my setting matches what is on the Asterisk Geolocation Implementation wiki.

[08/02 09:30:03.724] ERROR[682944] config_options.c: Could not find option suitable for category ‘IS_prof_20’ named ‘location_refinement’ at line 56 of
[08/02 09:30:03.724] ERROR[682944] res_sorcery_config.c: Could not create an object of type ‘profile’ with id ‘IS_prof_20’ from configuration file ‘geolocation.conf’

[IS_prof_20]
type = profile profile_action = prefer_incoming pidf_element = person usage_rules = retransmission_allowed=no location_reference = IS_loc_22
location_refinement = ROOM=292
location_refinement = FLR=1

Dan

24 thoughts on - Geo Location 18.14.0-rc1 Question

  • Remove the confidence param for now. I documented it before I
    implemented it. 🙂

    location_refinement = ROOM)2

    Pffft. I renamed this to “location_info_refinement” to better match the
    “location_info” parameter in the Location object. I forgot to rename it in the wiki documentation. If you just change the name it should work.

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KRnJvbTogYXN0ZXJpc2stdXNlcnMgPGFzdGVyaXNrLXVzZXJz LWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbT4gT24gQmVoYWxmIE9mIEdlb3JnZSBKb3NlcGgNClNl bnQ6IFR1ZXNkYXksIEF1Z3VzdCAyLCAyMDIyIDk6NTcgQU0NClRvOiBBc3RlcmlzayBVc2VycyBN
    YWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxhc3Rlcmlzay11c2Vyc0Bs aXN0cy5kaWdpdW0uY29tPg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJz XSBHZW8gbG9jYXRpb24gMTguMTQuMC1yYzEgcXVlc3Rpb24NCg0KDQoNCk9uIFR1ZSwgQXVnIDIs IDIwMjIgYXQgODo0NiBBTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFt dGVsY28uY29tPj4gd3JvdGU6DQpJIGJlbGlldmUgSSBoYXZlIGV2ZXJ5dGhpbmcgY29uZmlndXJl ZCBjb3JyZWN0bHksIGJ1dCBBc3RlcmlzayBpcyBjb21wbGFpbmluZyBhYm91dCBteSBjb25maWd1
    cmF0aW9uDQoNCkl0IGlzIGNvbXBsYWluaW5nIGFib3V0IGNvbmZpZGVuY2Ugc2V0dGluZ3MuDQoN
    CkZyb20gdGhlIEFzdGVyaXNrIEdlb2xvY2F0aW9uIEltcGxlbWVudGF0aW9uIFdpa2ksIEkgYmVs aWV2ZSBJIGhhdmUgdGhpcyBzZXQgY29ycmVjdGx5Lg0KDQoNClN1Yi1wYXJhbWV0ZXJzOg0KDQog ICogICB2YWx1ZTogQSBwZXJjZW50YWdlIGluZGljYXRpbmcgdGhlIGNvbmZpZGVuY2Ugb3IgInVu a25vd24iLg0KICAqICAgcGRmOiAidW5rbm93biIsICJub3JtYWwiIG9yICJyZWN0YW5ndWxhciIN
    CkV4YW1wbGU6IGNvbmZpZGVuY2UgPSB2YWx1ZT04MCwgcGRmPXVua25vd24NCklmIG5vIGNvbmZp ZGVuY2UgcGFyYW1ldGVyIGlzIHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgOTUlLg0KU2VlIFJG
    Qzc0NTk8aHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dlb2xvY2F0
    aW9uK1JlZmVyZW5jZStJbmZvcm1hdGlvbiNHZW9sb2NhdGlvblJlZmVyZW5jZUluZm9ybWF0aW9u LXJmYzc0NTk+IGZvciB0aGUgZXhhY3QgZGVmaW5pdGlvbiBvZiB0aGlzIHBhcmFtZXRlci4NCg0K
    DQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRpb25zLmM6IENv dWxkIG5vdCBmaW5kIG9wdGlvbiBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX2xvY18xJyBuYW1l ZCAnY29uZmlkZW5jZScgYXQgbGluZSAxMiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1Jb NjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBhbiBvYmplY3Qg b2YgdHlwZSAnbG9jYXRpb24nIHdpdGggaWQgJ0lTX2xvY18xJyBmcm9tIGNvbmZpZ3VyYXRpb24g ZmlsZSAnZ2VvbG9jYXRpb24uY29uZicNCg0KW0lTX2xvY18xXQ0KdHlwZSA9IGxvY2F0aW9uDQpm b3JtYXQgPSBjaXZpY0FkZHJlc3MNCmNvbmZpZGVuY2UgPSB2YWx1ZT05NSwgcGRmPXVua25vd24N
    CmxvY2F0aW9uX2luZm8gPSBjb3VudHJ5PVVTLEExPVdpc2NvbnNpbixBMz1NYWRpc29uDQpsb2Nh dGlvbl9pbmZvID0gSE5PPTQ4MDAsUkQ9TWFpbixTVFM9RHJpdmUsUEM9NTM3MDQNCg0KUmVtb3Zl IHRoZSBjb25maWRlbmNlIHBhcmFtIGZvciBub3cuICAgIEkgZG9jdW1lbnRlZCBpdCBiZWZvcmUg SSBpbXBsZW1lbnRlZCBpdC4gOikNCg0KDQoNCkFsc28gc2VlaW5nIHByb2JsZW1zIHdpdGggbG9j YXRpb25fcmVmaW5lbWVudCBzZXR0aW5nLg0KQWdhaW4sIEkgYmVsaWV2ZSBteSBzZXR0aW5nIG1h dGNoZXMgd2hhdCBpcyBvbiB0aGUgQXN0ZXJpc2sgR2VvbG9jYXRpb24gSW1wbGVtZW50YXRpb24g d2lraS4NCg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSBjb25maWdfb3B0aW9u cy5jOiBDb3VsZCBub3QgZmluZCBvcHRpb24gc3VpdGFibGUgZm9yIGNhdGVnb3J5ICdJU19wcm9m XzIwJyBuYW1lZCAnbG9jYXRpb25fcmVmaW5lbWVudCcgYXQgbGluZSA1NiBvZg0KWzA4LzAyIDA5
    OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90
    IGNyZWF0ZSBhbiBvYmplY3Qgb2YgdHlwZSAncHJvZmlsZScgd2l0aCBpZCAnSVNfcHJvZl8yMCcg ZnJvbSBjb25maWd1cmF0aW9uIGZpbGUgJ2dlb2xvY2F0aW9uLmNvbmYnDQoNCltJU19wcm9mXzIw XQ0KdHlwZSA9IHByb2ZpbGUNCnByb2ZpbGVfYWN0aW9uID0gcHJlZmVyX2luY29taW5nDQpwaWRm X2VsZW1lbnQgPSBwZXJzb24NCnVzYWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dlZD1u bw0KbG9jYXRpb25fcmVmZXJlbmNlID0gSVNfbG9jXzIyDQpsb2NhdGlvbl9yZWZpbmVtZW50ID0g Uk9PTT0yOTINCmxvY2F0aW9uX3JlZmluZW1lbnQgPSBGTFI9MQ0KDQpQZmZmdC4gIEkgcmVuYW1l ZCB0aGlzIHRvICJsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQiIHRvIGJldHRlciBtYXRjaCB0aGUg ImxvY2F0aW9uX2luZm8iIHBhcmFtZXRlciBpbiB0aGUgTG9jYXRpb24gb2JqZWN0LiAgSSBmb3Jn b3QgdG8gcmVuYW1lIGl0IGluIHRoZSB3aWtpIGRvY3VtZW50YXRpb24uICBJZiB5b3UganVzdCBj aGFuZ2UgdGhlIG5hbWUgaXQgc2hvdWxkIHdvcmsuDQoNCg0KDQoNCg0KRGFuDQotLQ0KX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fDQotLSBCYW5kd2lkdGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkgaHR0cDovL3d3
    dy5hcGktZGlnaXRhbC5jb20gLS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJpc2sgY29tbXVu aXR5IGZvcnVtIGF0OiBodHRwczovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoNCk5ldyB0byBB
    c3Rlcmlzaz8gU3RhcnQgaGVyZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlzay5vcmcvd2lr aS9kaXNwbGF5L0FTVC9HZXR0aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMgbWFpbGluZyBs aXN0DQpUbyBVTlNVQlNDUklCRSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAgIGh0dHA6Ly9s aXN0cy5kaWdpdW0uY29tL21haWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMNCg=

  • SXMgdGhlIGFsbG93X3JvdXRpbmcgc2V0dGluZyBvbiB0aGUgZ2VvbG9jYXRpb24gV2lraSBQcm9m aWxlIGFsc28gbm90IGZ1bGx5IGltcGxlbWVudGVkPw0KDQpJbiB0aGUgY29kZSwgSSBzZWUgZ2Vv bG9jYXRpb25fcm91dGluZyB1c2VkIGluc3RlYWQgb2YgYWxsb3dfcm91dGluZy4NCg0KVHJpZWQg Ym90aCBhbmQgQXN0ZXJpc2sgaW5kaWNhdGVzIGl0IGNhbm5vdCBmaW5kIHN1aXRhYmxlIHNldHRp bmcgc28gaXQgZG9lc27igJl0IGNyZWF0ZSB0aGUgcHJvZmlsZSBvYmplY3QuDQoNCkRhbg0KDQpG
    cm9tOiBEYW4gQ3JvcHANClNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCAyLCAyMDIyIDEwOjA0IEFNDQpU
    bzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lv biA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4NClN1YmplY3Q6IFJFOiBbRXh0ZXJu YWxdIFthc3Rlcmlzay11c2Vyc10gR2VvIGxvY2F0aW9uIDE4LjE0LjAtcmMxIHF1ZXN0aW9uDQoN
    ClRoYW5rIHlvdSBHZW9yZ2UuDQoNCkZyb206IGFzdGVyaXNrLXVzZXJzIDxhc3Rlcmlzay11c2Vy cy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzLWJvdW5jZXNA
    bGlzdHMuZGlnaXVtLmNvbT4+IE9uIEJlaGFsZiBPZiBHZW9yZ2UgSm9zZXBoDQpTZW50OiBUdWVz ZGF5LCBBdWd1c3QgMiwgMjAyMiA5OjU3IEFNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBM
    aXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGln aXVtLmNvbTxtYWlsdG86YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4+DQpTdWJqZWN0
    OiBSZTogW0V4dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJj MSBxdWVzdGlvbg0KDQoNCg0KT24gVHVlLCBBdWcgMiwgMjAyMiBhdCA4OjQ2IEFNIERhbiBDcm9w cCA8ZGFuQGFtdGVsY28uY29tPG1haWx0bzpkYW5AYW10ZWxjby5jb20+PiB3cm90ZToNCkkgYmVs aWV2ZSBJIGhhdmUgZXZlcnl0aGluZyBjb25maWd1cmVkIGNvcnJlY3RseSwgYnV0IEFzdGVyaXNr IGlzIGNvbXBsYWluaW5nIGFib3V0IG15IGNvbmZpZ3VyYXRpb24NCg0KSXQgaXMgY29tcGxhaW5p bmcgYWJvdXQgY29uZmlkZW5jZSBzZXR0aW5ncy4NCg0KRnJvbSB0aGUgQXN0ZXJpc2sgR2VvbG9j YXRpb24gSW1wbGVtZW50YXRpb24gV2lraSwgSSBiZWxpZXZlIEkgaGF2ZSB0aGlzIHNldCBjb3Jy ZWN0bHkuDQoNCg0KU3ViLXBhcmFtZXRlcnM6DQoNCiAgKiAgIHZhbHVlOiBBIHBlcmNlbnRhZ2Ug aW5kaWNhdGluZyB0aGUgY29uZmlkZW5jZSBvciAidW5rbm93biIuDQogICogICBwZGY6ICJ1bmtu b3duIiwgIm5vcm1hbCIgb3IgInJlY3Rhbmd1bGFyIg0KRXhhbXBsZTogY29uZmlkZW5jZSA9IHZh bHVlPTgwLCBwZGY9dW5rbm93bg0KSWYgbm8gY29uZmlkZW5jZSBwYXJhbWV0ZXIgaXMgc3BlY2lm aWVkLCB0aGUgZGVmYXVsdCBpcyA5NSUuDQpTZWUgUkZDNzQ1OTxodHRwczovL3dpa2kuYXN0ZXJp c2sub3JnL3dpa2kvZGlzcGxheS9BU1QvR2VvbG9jYXRpb24rUmVmZXJlbmNlK0luZm9ybWF0aW9u I0dlb2xvY2F0aW9uUmVmZXJlbmNlSW5mb3JtYXRpb24tcmZjNzQ1OT4gZm9yIHRoZSBleGFjdCBk ZWZpbml0aW9uIG9mIHRoaXMgcGFyYW1ldGVyLg0KDQoNClswOC8wMiAwOTozMDowMy43MjRdIEVS
    Uk9SWzY4Mjk0NF0gY29uZmlnX29wdGlvbnMuYzogQ291bGQgbm90IGZpbmQgb3B0aW9uIHN1aXRh YmxlIGZvciBjYXRlZ29yeSAnSVNfbG9jXzEnIG5hbWVkICdjb25maWRlbmNlJyBhdCBsaW5lIDEy IG9mDQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIHJlc19zb3JjZXJ5X2NvbmZp Zy5jOiBDb3VsZCBub3QgY3JlYXRlIGFuIG9iamVjdCBvZiB0eXBlICdsb2NhdGlvbicgd2l0aCBp ZCAnSVNfbG9jXzEnIGZyb20gY29uZmlndXJhdGlvbiBmaWxlICdnZW9sb2NhdGlvbi5jb25mJw0K
    DQpbSVNfbG9jXzFdDQp0eXBlID0gbG9jYXRpb24NCmZvcm1hdCA9IGNpdmljQWRkcmVzcw0KY29u ZmlkZW5jZSA9IHZhbHVlPTk1LCBwZGY9dW5rbm93bg0KbG9jYXRpb25faW5mbyA9IGNvdW50cnk9
    VVMsQTE9V2lzY29uc2luLEEzPU1hZGlzb24NCmxvY2F0aW9uX2luZm8gPSBITk89NDgwMCxSRD1N
    YWluLFNUUz1Ecml2ZSxQQz01MzcwNA0KDQpSZW1vdmUgdGhlIGNvbmZpZGVuY2UgcGFyYW0gZm9y IG5vdy4gICAgSSBkb2N1bWVudGVkIGl0IGJlZm9yZSBJIGltcGxlbWVudGVkIGl0LiA6KQ0KDQoN
    Cg0KQWxzbyBzZWVpbmcgcHJvYmxlbXMgd2l0aCBsb2NhdGlvbl9yZWZpbmVtZW50IHNldHRpbmcu DQpBZ2FpbiwgSSBiZWxpZXZlIG15IHNldHRpbmcgbWF0Y2hlcyB3aGF0IGlzIG9uIHRoZSBBc3Rl cmlzayBHZW9sb2NhdGlvbiBJbXBsZW1lbnRhdGlvbiB3aWtpLg0KDQpbMDgvMDIgMDk6MzA6MDMu NzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRpb25zLmM6IENvdWxkIG5vdCBmaW5kIG9wdGlv biBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX3Byb2ZfMjAnIG5hbWVkICdsb2NhdGlvbl9yZWZp bmVtZW50JyBhdCBsaW5lIDU2IG9mDQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRd IHJlc19zb3JjZXJ5X2NvbmZpZy5jOiBDb3VsZCBub3QgY3JlYXRlIGFuIG9iamVjdCBvZiB0eXBl ICdwcm9maWxlJyB3aXRoIGlkICdJU19wcm9mXzIwJyBmcm9tIGNvbmZpZ3VyYXRpb24gZmlsZSAn Z2VvbG9jYXRpb24uY29uZicNCg0KW0lTX3Byb2ZfMjBdDQp0eXBlID0gcHJvZmlsZQ0KcHJvZmls ZV9hY3Rpb24gPSBwcmVmZXJfaW5jb21pbmcNCnBpZGZfZWxlbWVudCA9IHBlcnNvbg0KdXNhZ2Vf cnVsZXMgPSByZXRyYW5zbWlzc2lvbl9hbGxvd2VkPW5vDQpsb2NhdGlvbl9yZWZlcmVuY2UgPSBJ
    U19sb2NfMjINCmxvY2F0aW9uX3JlZmluZW1lbnQgPSBST09NPTI5Mg0KbG9jYXRpb25fcmVmaW5l bWVudCA9IEZMUj0xDQoNClBmZmZ0LiAgSSByZW5hbWVkIHRoaXMgdG8gImxvY2F0aW9uX2luZm9f cmVmaW5lbWVudCIgdG8gYmV0dGVyIG1hdGNoIHRoZSAibG9jYXRpb25faW5mbyIgcGFyYW1ldGVy IGluIHRoZSBMb2NhdGlvbiBvYmplY3QuICBJIGZvcmdvdCB0byByZW5hbWUgaXQgaW4gdGhlIHdp a2kgZG9jdW1lbnRhdGlvbi4gIElmIHlvdSBqdXN0IGNoYW5nZSB0aGUgbmFtZSBpdCBzaG91bGQg d29yay4NCg0KDQoNCg0KDQpEYW4NCi0tDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCi0tIEJhbmR3aWR0aCBhbmQg Q29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRwOi8vd3d3LmFwaS1kaWdpdGFsLmNvbSAtLQ0KDQpD
    aGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBjb21tdW5pdHkgZm9ydW0gYXQ6IGh0dHBzOi8vY29t bXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3IHRvIEFzdGVyaXNrPyBTdGFydCBoZXJlOg0KICAg ICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dldHRpbmcrU3Rh cnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWlsaW5nIGxpc3QNClRvIFVOU1VCU0NSSUJFIG9yIHVw ZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0cDovL2xpc3RzLmRpZ2l1bS5jb20vbWFpbG1hbi9s aXN0aW5mby9hc3Rlcmlzay11c2Vycw0K

  • Well, 99% of the code is there. The 1% is parsing the config option. Not sure how I missed that. I’ll have a patch up first thing in the morning UTC-6. I’ll call it “allow_use_for_routing” in profile.

  • VGhhbmsgeW91IEdlb3JnZQ0KDQpGcm9tOiBhc3Rlcmlzay11c2VycyA8YXN0ZXJpc2stdXNlcnMt Ym91bmNlc0BsaXN0cy5kaWdpdW0uY29tPiBPbiBCZWhhbGYgT2YgR2VvcmdlIEpvc2VwaA0KU2Vu dDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgMjo0MCBQTQ0KVG86IEFzdGVyaXNrIFVzZXJzIE1h aWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24gPGFzdGVyaXNrLXVzZXJzQGxp c3RzLmRpZ2l1bS5jb20+DQpTdWJqZWN0OiBSZTogW0V4dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNd IFtFeHRlcm5hbF0gR2VvIGxvY2F0aW9uIDE4LjE0LjAtcmMxIHF1ZXN0aW9uDQoNCg0KDQpPbiBU
    dWUsIEF1ZyAyLCAyMDIyIGF0IDE6MzUgUE0gR2VvcmdlIEpvc2VwaCA8Z2pvc2VwaEBzYW5nb21h LmNvbTxtYWlsdG86Z2pvc2VwaEBzYW5nb21hLmNvbT4+IHdyb3RlOg0KDQoNCk9uIFR1ZSwgQXVn IDIsIDIwMjIgYXQgMToxMyBQTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFu QGFtdGVsY28uY29tPj4gd3JvdGU6DQpJcyB0aGUgYWxsb3dfcm91dGluZyBzZXR0aW5nIG9uIHRo ZSBnZW9sb2NhdGlvbiBXaWtpIFByb2ZpbGUgYWxzbyBub3QgZnVsbHkgaW1wbGVtZW50ZWQ/DQoN
    CldlbGwsIDk5JSBvZiB0aGUgY29kZSBpcyB0aGVyZS4gIFRoZSAxJSBpcyBwYXJzaW5nIHRoZSBj b25maWcgb3B0aW9uLiAgTm90IHN1cmUgaG93IEkgbWlzc2VkIHRoYXQuDQpJJ2xsIGhhdmUgYSBw YXRjaCB1cCBmaXJzdCB0aGluZyBpbiB0aGUgbW9ybmluZyBVVEMtNi4NCkknbGwgY2FsbCBpdCAi YWxsb3dfdXNlX2Zvcl9yb3V0aW5nIiBpbiBwcm9maWxlLg0KDQpBY3R1YWxseSBqdXN0ICJhbGxv d19yb3V0aW5nX3VzZSINCg0KDQoNCkluIHRoZSBjb2RlLCBJIHNlZSBnZW9sb2NhdGlvbl9yb3V0
    aW5nIHVzZWQgaW5zdGVhZCBvZiBhbGxvd19yb3V0aW5nLg0KDQpUcmllZCBib3RoIGFuZCBBc3Rl cmlzayBpbmRpY2F0ZXMgaXQgY2Fubm90IGZpbmQgc3VpdGFibGUgc2V0dGluZyBzbyBpdCBkb2Vz buKAmXQgY3JlYXRlIHRoZSBwcm9maWxlIG9iamVjdC4NCg0KRGFuDQoNCkZyb206IERhbiBDcm9w cA0KU2VudDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgMTA6MDQgQU0NClRvOiBBc3RlcmlzayBV
    c2VycyBNYWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxhc3Rlcmlzay11
    c2Vyc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vyc0BsaXN0cy5kaWdpdW0u Y29tPj4NClN1YmplY3Q6IFJFOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gR2VvIGxvY2F0
    aW9uIDE4LjE0LjAtcmMxIHF1ZXN0aW9uDQoNClRoYW5rIHlvdSBHZW9yZ2UuDQoNCkZyb206IGFz dGVyaXNrLXVzZXJzIDxhc3Rlcmlzay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb208bWFp bHRvOmFzdGVyaXNrLXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbT4+IE9uIEJlaGFsZiBP
    ZiBHZW9yZ2UgSm9zZXBoDQpTZW50OiBUdWVzZGF5LCBBdWd1c3QgMiwgMjAyMiA5OjU3IEFNDQpU
    bzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lv biA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbTxtYWlsdG86YXN0ZXJpc2stdXNlcnNA
    bGlzdHMuZGlnaXVtLmNvbT4+DQpTdWJqZWN0OiBSZTogW0V4dGVybmFsXSBbYXN0ZXJpc2stdXNl cnNdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQoNCg0KT24gVHVlLCBBdWcg MiwgMjAyMiBhdCA4OjQ2IEFNIERhbiBDcm9wcCA8ZGFuQGFtdGVsY28uY29tPG1haWx0bzpkYW5A
    YW10ZWxjby5jb20+PiB3cm90ZToNCkkgYmVsaWV2ZSBJIGhhdmUgZXZlcnl0aGluZyBjb25maWd1
    cmVkIGNvcnJlY3RseSwgYnV0IEFzdGVyaXNrIGlzIGNvbXBsYWluaW5nIGFib3V0IG15IGNvbmZp Z3VyYXRpb24NCg0KSXQgaXMgY29tcGxhaW5pbmcgYWJvdXQgY29uZmlkZW5jZSBzZXR0aW5ncy4N
    Cg0KRnJvbSB0aGUgQXN0ZXJpc2sgR2VvbG9jYXRpb24gSW1wbGVtZW50YXRpb24gV2lraSwgSSBi ZWxpZXZlIEkgaGF2ZSB0aGlzIHNldCBjb3JyZWN0bHkuDQoNCg0KU3ViLXBhcmFtZXRlcnM6DQoN
    CiAgKiAgIHZhbHVlOiBBIHBlcmNlbnRhZ2UgaW5kaWNhdGluZyB0aGUgY29uZmlkZW5jZSBvciAi dW5rbm93biIuDQogICogICBwZGY6ICJ1bmtub3duIiwgIm5vcm1hbCIgb3IgInJlY3Rhbmd1bGFy Ig0KRXhhbXBsZTogY29uZmlkZW5jZSA9IHZhbHVlPTgwLCBwZGY9dW5rbm93bg0KSWYgbm8gY29u ZmlkZW5jZSBwYXJhbWV0ZXIgaXMgc3BlY2lmaWVkLCB0aGUgZGVmYXVsdCBpcyA5NSUuDQpTZWUg UkZDNzQ1OTxodHRwczovL3dpa2kuYXN0ZXJpc2sub3JnL3dpa2kvZGlzcGxheS9BU1QvR2VvbG9j YXRpb24rUmVmZXJlbmNlK0luZm9ybWF0aW9uI0dlb2xvY2F0aW9uUmVmZXJlbmNlSW5mb3JtYXRp b24tcmZjNzQ1OT4gZm9yIHRoZSBleGFjdCBkZWZpbml0aW9uIG9mIHRoaXMgcGFyYW1ldGVyLg0K
    DQoNClswOC8wMiAwOTozMDowMy43MjRdIEVSUk9SWzY4Mjk0NF0gY29uZmlnX29wdGlvbnMuYzog Q291bGQgbm90IGZpbmQgb3B0aW9uIHN1aXRhYmxlIGZvciBjYXRlZ29yeSAnSVNfbG9jXzEnIG5h bWVkICdjb25maWRlbmNlJyBhdCBsaW5lIDEyIG9mDQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJP
    Uls2ODI5NDRdIHJlc19zb3JjZXJ5X2NvbmZpZy5jOiBDb3VsZCBub3QgY3JlYXRlIGFuIG9iamVj dCBvZiB0eXBlICdsb2NhdGlvbicgd2l0aCBpZCAnSVNfbG9jXzEnIGZyb20gY29uZmlndXJhdGlv biBmaWxlICdnZW9sb2NhdGlvbi5jb25mJw0KDQpbSVNfbG9jXzFdDQp0eXBlID0gbG9jYXRpb24N
    CmZvcm1hdCA9IGNpdmljQWRkcmVzcw0KY29uZmlkZW5jZSA9IHZhbHVlPTk1LCBwZGY9dW5rbm93
    bg0KbG9jYXRpb25faW5mbyA9IGNvdW50cnk9VVMsQTE9V2lzY29uc2luLEEzPU1hZGlzb24NCmxv Y2F0aW9uX2luZm8gPSBITk89NDgwMCxSRD1NYWluLFNUUz1Ecml2ZSxQQz01MzcwNA0KDQpSZW1v dmUgdGhlIGNvbmZpZGVuY2UgcGFyYW0gZm9yIG5vdy4gICAgSSBkb2N1bWVudGVkIGl0IGJlZm9y ZSBJIGltcGxlbWVudGVkIGl0LiA6KQ0KDQoNCg0KQWxzbyBzZWVpbmcgcHJvYmxlbXMgd2l0aCBs b2NhdGlvbl9yZWZpbmVtZW50IHNldHRpbmcuDQpBZ2FpbiwgSSBiZWxpZXZlIG15IHNldHRpbmcg bWF0Y2hlcyB3aGF0IGlzIG9uIHRoZSBBc3RlcmlzayBHZW9sb2NhdGlvbiBJbXBsZW1lbnRhdGlv biB3aWtpLg0KDQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRp b25zLmM6IENvdWxkIG5vdCBmaW5kIG9wdGlvbiBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX3By b2ZfMjAnIG5hbWVkICdsb2NhdGlvbl9yZWZpbmVtZW50JyBhdCBsaW5lIDU2IG9mDQpbMDgvMDIg MDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIHJlc19zb3JjZXJ5X2NvbmZpZy5jOiBDb3VsZCBu b3QgY3JlYXRlIGFuIG9iamVjdCBvZiB0eXBlICdwcm9maWxlJyB3aXRoIGlkICdJU19wcm9mXzIw JyBmcm9tIGNvbmZpZ3VyYXRpb24gZmlsZSAnZ2VvbG9jYXRpb24uY29uZicNCg0KW0lTX3Byb2Zf MjBdDQp0eXBlID0gcHJvZmlsZQ0KcHJvZmlsZV9hY3Rpb24gPSBwcmVmZXJfaW5jb21pbmcNCnBp ZGZfZWxlbWVudCA9IHBlcnNvbg0KdXNhZ2VfcnVsZXMgPSByZXRyYW5zbWlzc2lvbl9hbGxvd2Vk PW5vDQpsb2NhdGlvbl9yZWZlcmVuY2UgPSBJU19sb2NfMjINCmxvY2F0aW9uX3JlZmluZW1lbnQg PSBST09NPTI5Mg0KbG9jYXRpb25fcmVmaW5lbWVudCA9IEZMUj0xDQoNClBmZmZ0LiAgSSByZW5h bWVkIHRoaXMgdG8gImxvY2F0aW9uX2luZm9fcmVmaW5lbWVudCIgdG8gYmV0dGVyIG1hdGNoIHRo ZSAibG9jYXRpb25faW5mbyIgcGFyYW1ldGVyIGluIHRoZSBMb2NhdGlvbiBvYmplY3QuICBJIGZv cmdvdCB0byByZW5hbWUgaXQgaW4gdGhlIHdpa2kgZG9jdW1lbnRhdGlvbi4gIElmIHlvdSBqdXN0
    IGNoYW5nZSB0aGUgbmFtZSBpdCBzaG91bGQgd29yay4NCg0KDQoNCg0KDQpEYW4NCi0tDQpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18NCi0tIEJhbmR3aWR0aCBhbmQgQ29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRwOi8v d3d3LmFwaS1kaWdpdGFsLmNvbSAtLQ0KDQpDaGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBjb21t dW5pdHkgZm9ydW0gYXQ6IGh0dHBzOi8vY29tbXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3IHRv IEFzdGVyaXNrPyBTdGFydCBoZXJlOg0KICAgICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93
    aWtpL2Rpc3BsYXkvQVNUL0dldHRpbmcrU3RhcnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWlsaW5n IGxpc3QNClRvIFVOU1VCU0NSSUJFIG9yIHVwZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0cDov L2xpc3RzLmRpZ2l1bS5jb20vbWFpbG1hbi9saXN0aW5mby9hc3Rlcmlzay11c2Vycw0KLS0NCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXw0KLS0gQmFuZHdpZHRoIGFuZCBDb2xvY2F0aW9uIFByb3ZpZGVkIGJ5IGh0dHA6
    Ly93d3cuYXBpLWRpZ2l0YWwuY29tIC0tDQoNCkNoZWNrIG91dCB0aGUgbmV3IEFzdGVyaXNrIGNv bW11bml0eSBmb3J1bSBhdDogaHR0cHM6Ly9jb21tdW5pdHkuYXN0ZXJpc2sub3JnLw0KDQpOZXcg dG8gQXN0ZXJpc2s/IFN0YXJ0IGhlcmU6DQogICAgICBodHRwczovL3dpa2kuYXN0ZXJpc2sub3Jn L3dpa2kvZGlzcGxheS9BU1QvR2V0dGluZytTdGFydGVkDQoNCmFzdGVyaXNrLXVzZXJzIG1haWxp bmcgbGlzdA0KVG8gVU5TVUJTQ1JJQkUgb3IgdXBkYXRlIG9wdGlvbnMgdmlzaXQ6DQogICBodHRw Oi8vbGlzdHMuZGlnaXVtLmNvbS9tYWlsbWFuL2xpc3RpbmZvL2FzdGVyaXNrLXVzZXJzDQo

  • Looks like it’ll be tomorrow before I can get the patch up. I ran into some strange issues.

  • Sorry for the delay but this turned out to be a bit more complex than I
    anticipated. There are reviews up on Gerrit for the 16 and 18 branches that address the issues below as well as clean up the implementation, plug some memory leaks, etc.
    16: https://gerrit.asterisk.org/c/asterisk/+/18896
    18: https://gerrit.asterisk.org/c/asterisk/+/18897

    I anticipate these will make it into the next set of release candidates which are due to be cut tomorrow.

    Give them a try.

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KTG9va2luZyBmb3J3YXJkIHRvIHdvcmtpbmcgd2l0aCB0aGUg Y2hhbmdlcy4gIEkgd2lsbCByZXRyaWV2ZSB0aGVtIHdoZW4gdGhlIG5leHQgcmVsZWFzZSBjYW5k aWRhdGUgY29tZXMgb3V0Lg0KDQoNCkEgcXVpY2sgcXVlc3Rpb24gb24gdXNpbmcgdmFyaWFibGVz IHRvIHBhc3MgY3VzdG9tIEdlbyBMb2NhdGlvbiBzZXR0aW5ncyBvbiB2aWEgYW4gQU1JIE9yaWdp bmF0ZS4NCg0KDQpJZiBteSBBTUkgb3JpZ2luYXRlIHJlcXVlc3QgbG9va3Mgc29tZXRoaW5nIGxp a2UgdGhpc+KApg0KQWN0aW9uOiBPcmlnaW5hdGUNCkNoYW5uZWw6IFBKU0lQLzEyMzRAMTkyLjE2
    OC54LngNCkV4dGVuOiBjcmVhdGVjYWxsDQpDb250ZXh0OiBteWNvbnRleHQNClByaW9yaXR5OiAx DQpUaW1lb3V0OiA2MDAwMA0KQ2FsbGVySUQ6IEpvaG4gU21pdGggPDgwMDU1NTEyMzQ+DQpWYXJp YWJsZTogX01ZX0dFT19DT1VOVFJZPVVTLF9NWV9HRU9fTkFUU1VCPUZsb3JpZGEsX01ZX0dFT19D
    SVRZPU9ybGFuZG8sX01ZX0dFT19ITk89MTAwLF9NWV9HRU9fUkQ9TWFpbixfTVlfR0VPX1NUUz1T
    dHJlZXQNCkFzeW5jOiB0cnVlDQoNCkRvIEkgbmVlZCB0byBwcm9ncmFtIHRoZSBsb2NhdGlvbl92
    YXJpYWJsZXMgaW4gdGhlIHByb2ZpbGUgbGlrZSB0aGlzPw0KDQpbMV0NCnR5cGUgPSBwcm9maWxl DQpwaWRmX2VsZW1lbnQgPSBkZXZpY2UNCnByb2ZpbGVfYWN0aW9uID0gZGlzY2FyZF9pbmNvbWlu Zw0KdXNhZ2VfcnVsZXMgPSByZXRyYW5zbWlzc2lvbl9hbGxvd2VkPXllcw0KbG9jYXRpb25fdmFy aWFibGVzID0gY291bnRyeT0ke19NWV9HRU9fQ09VTlRSWX0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9
    IEExPSR7X01ZX0dFT19OQVRJT05BTF9TVUJESVZJU0lPTn0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9
    IEEyPSR7X01ZX0dFT19OQVRTVUJ9DQpsb2NhdGlvbl92YXJpYWJsZXMgPSBBMz0ke19NWV9HRU9f Q0lUWX0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEhOTz0ke19NWV9HRU9fSE5PfQ0KbG9jYXRpb25f dmFyaWFibGVzID0gUkQ9JHtfTVlfR0VPX1JEfQ0KbG9jYXRpb25fdmFyaWFibGVzID0gU1RTPSR7
    X01ZX0dFT19TVFN9DQpsb2NhdGlvbl92YXJpYWJsZXMgPSBQQz0ke19NWV9HRU9fUEN9DQoNCk9y IHdvdWxkIEkgbmVlZCB0byBwcm9ncmFtIHRoZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnRzIGlu IHRoZSBwcm9maWxlIHRvIHVzZSB0aG9zZSB2YXJpYWJsZXM/DQoNCkRhbg0KDQoNCkZyb206IGFz dGVyaXNrLXVzZXJzIDxhc3Rlcmlzay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+IE9u IEJlaGFsZiBPZiBHZW9yZ2UgSm9zZXBoDQpTZW50OiBXZWRuZXNkYXksIEF1Z3VzdCAxMCwgMjAy MiA4OjU4IEFNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNp YWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4NClN1YmplY3Q6
    IFJlOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gW0V4dGVybmFsXSBbRXh0ZXJuYWxdIEdl byBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQpTb3JyeSBmb3IgdGhlIGRlbGF5IGJ1
    dCB0aGlzIHR1cm5lZCBvdXQgdG8gYmUgYSBiaXQgbW9yZSBjb21wbGV4IHRoYW4gSSBhbnRpY2lw YXRlZC4NClRoZXJlIGFyZSByZXZpZXdzIHVwIG9uIEdlcnJpdCBmb3IgdGhlIDE2IGFuZCAxOCBi cmFuY2hlcyB0aGF0IGFkZHJlc3MgdGhlIGlzc3VlcyBiZWxvdyBhcyB3ZWxsIGFzIGNsZWFuIHVw IHRoZSBpbXBsZW1lbnRhdGlvbiwgcGx1ZyBzb21lIG1lbW9yeSBsZWFrcywgZXRjLg0KMTY6IGh0
    dHBzOi8vZ2Vycml0LmFzdGVyaXNrLm9yZy9jL2FzdGVyaXNrLysvMTg4OTYNCjE4OiBodHRwczov L2dlcnJpdC5hc3Rlcmlzay5vcmcvYy9hc3Rlcmlzay8rLzE4ODk3DQoNCkkgYW50aWNpcGF0ZSB0
    aGVzZSB3aWxsIG1ha2UgaXQgaW50byB0aGUgbmV4dCBzZXQgb2YgcmVsZWFzZSBjYW5kaWRhdGVz IHdoaWNoIGFyZSBkdWUgdG8gYmUgY3V0IHRvbW9ycm93Lg0KDQpHaXZlIHRoZW0gYSB0cnkuDQoN
    Ck9uIFdlZCwgQXVnIDMsIDIwMjIgYXQgMTo1MSBQTSBHZW9yZ2UgSm9zZXBoIDxnam9zZXBoQHNh bmdvbWEuY29tPG1haWx0bzpnam9zZXBoQHNhbmdvbWEuY29tPj4gd3JvdGU6DQpMb29rcyBsaWtl IGl0J2xsIGJlIHRvbW9ycm93IGJlZm9yZSBJIGNhbiBnZXQgdGhlIHBhdGNoIHVwLiAgSSByYW4g aW50byBzb21lIHN0cmFuZ2UgaXNzdWVzLg0KDQpPbiBUdWUsIEF1ZyAyLCAyMDIyIGF0IDE6NDMg UE0gRGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRhbkBhbXRlbGNvLmNvbT4+IHdy b3RlOg0KVGhhbmsgeW91IEdlb3JnZQ0KDQpGcm9tOiBhc3Rlcmlzay11c2VycyA8YXN0ZXJpc2st dXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vycy1ib3Vu Y2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYgT2YgR2VvcmdlIEpvc2VwaA0KU2VudDog VHVlc2RheSwgQXVndXN0IDIsIDIwMjIgMjo0MCBQTQ0KVG86IEFzdGVyaXNrIFVzZXJzIE1haWxp bmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24gPGFzdGVyaXNrLXVzZXJzQGxpc3Rz LmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5jb20+Pg0KU3Vi amVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJzXSBbRXh0ZXJuYWxdIEdlbyBsb2Nh dGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQoNCg0KT24gVHVlLCBBdWcgMiwgMjAyMiBhdCAx OjM1IFBNIEdlb3JnZSBKb3NlcGggPGdqb3NlcGhAc2FuZ29tYS5jb208bWFpbHRvOmdqb3NlcGhA
    c2FuZ29tYS5jb20+PiB3cm90ZToNCg0KDQpPbiBUdWUsIEF1ZyAyLCAyMDIyIGF0IDE6MTMgUE0g RGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRhbkBhbXRlbGNvLmNvbT4+IHdyb3Rl Og0KSXMgdGhlIGFsbG93X3JvdXRpbmcgc2V0dGluZyBvbiB0aGUgZ2VvbG9jYXRpb24gV2lraSBQ
    cm9maWxlIGFsc28gbm90IGZ1bGx5IGltcGxlbWVudGVkPw0KDQpXZWxsLCA5OSUgb2YgdGhlIGNv ZGUgaXMgdGhlcmUuICBUaGUgMSUgaXMgcGFyc2luZyB0aGUgY29uZmlnIG9wdGlvbi4gIE5vdCBz dXJlIGhvdyBJIG1pc3NlZCB0aGF0Lg0KSSdsbCBoYXZlIGEgcGF0Y2ggdXAgZmlyc3QgdGhpbmcg aW4gdGhlIG1vcm5pbmcgVVRDLTYuDQpJJ2xsIGNhbGwgaXQgImFsbG93X3VzZV9mb3Jfcm91dGlu ZyIgaW4gcHJvZmlsZS4NCg0KQWN0dWFsbHkganVzdCAiYWxsb3dfcm91dGluZ191c2UiDQoNCg0K
    DQpJbiB0aGUgY29kZSwgSSBzZWUgZ2VvbG9jYXRpb25fcm91dGluZyB1c2VkIGluc3RlYWQgb2Yg YWxsb3dfcm91dGluZy4NCg0KVHJpZWQgYm90aCBhbmQgQXN0ZXJpc2sgaW5kaWNhdGVzIGl0IGNh bm5vdCBmaW5kIHN1aXRhYmxlIHNldHRpbmcgc28gaXQgZG9lc27igJl0IGNyZWF0ZSB0aGUgcHJv ZmlsZSBvYmplY3QuDQoNCkRhbg0KDQpGcm9tOiBEYW4gQ3JvcHANClNlbnQ6IFR1ZXNkYXksIEF1
    Z3VzdCAyLCAyMDIyIDEwOjA0IEFNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0g Tm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNv bTxtYWlsdG86YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4+DQpTdWJqZWN0OiBSRTog W0V4dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVz dGlvbg0KDQpUaGFuayB5b3UgR2VvcmdlLg0KDQpGcm9tOiBhc3Rlcmlzay11c2VycyA8YXN0ZXJp c2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vycy1i b3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYgT2YgR2VvcmdlIEpvc2VwaA0KU2Vu dDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgOTo1NyBBTQ0KVG86IEFzdGVyaXNrIFVzZXJzIE1h aWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24gPGFzdGVyaXNrLXVzZXJzQGxp c3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5jb20+Pg0K
    U3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJzXSBHZW8gbG9jYXRpb24gMTgu MTQuMC1yYzEgcXVlc3Rpb24NCg0KDQoNCk9uIFR1ZSwgQXVnIDIsIDIwMjIgYXQgODo0NiBBTSBE
    YW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFtdGVsY28uY29tPj4gd3JvdGU6
    DQpJIGJlbGlldmUgSSBoYXZlIGV2ZXJ5dGhpbmcgY29uZmlndXJlZCBjb3JyZWN0bHksIGJ1dCBB
    c3RlcmlzayBpcyBjb21wbGFpbmluZyBhYm91dCBteSBjb25maWd1cmF0aW9uDQoNCkl0IGlzIGNv bXBsYWluaW5nIGFib3V0IGNvbmZpZGVuY2Ugc2V0dGluZ3MuDQoNCkZyb20gdGhlIEFzdGVyaXNr IEdlb2xvY2F0aW9uIEltcGxlbWVudGF0aW9uIFdpa2ksIEkgYmVsaWV2ZSBJIGhhdmUgdGhpcyBz ZXQgY29ycmVjdGx5Lg0KDQoNClN1Yi1wYXJhbWV0ZXJzOg0KDQogICogICB2YWx1ZTogQSBwZXJj ZW50YWdlIGluZGljYXRpbmcgdGhlIGNvbmZpZGVuY2Ugb3IgInVua25vd24iLg0KICAqICAgcGRm OiAidW5rbm93biIsICJub3JtYWwiIG9yICJyZWN0YW5ndWxhciINCkV4YW1wbGU6IGNvbmZpZGVu Y2UgPSB2YWx1ZT04MCwgcGRmPXVua25vd24NCklmIG5vIGNvbmZpZGVuY2UgcGFyYW1ldGVyIGlz IHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgOTUlLg0KU2VlIFJGQzc0NTk8aHR0cHM6Ly93aWtp LmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dlb2xvY2F0aW9uK1JlZmVyZW5jZStJbmZv cm1hdGlvbiNHZW9sb2NhdGlvblJlZmVyZW5jZUluZm9ybWF0aW9uLXJmYzc0NTk+IGZvciB0aGUg ZXhhY3QgZGVmaW5pdGlvbiBvZiB0aGlzIHBhcmFtZXRlci4NCg0KDQpbMDgvMDIgMDk6MzA6MDMu NzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRpb25zLmM6IENvdWxkIG5vdCBmaW5kIG9wdGlv biBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX2xvY18xJyBuYW1lZCAnY29uZmlkZW5jZScgYXQg bGluZSAxMiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSByZXNfc29yY2Vy eV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBhbiBvYmplY3Qgb2YgdHlwZSAnbG9jYXRpb24n IHdpdGggaWQgJ0lTX2xvY18xJyBmcm9tIGNvbmZpZ3VyYXRpb24gZmlsZSAnZ2VvbG9jYXRpb24u Y29uZicNCg0KW0lTX2xvY18xXQ0KdHlwZSA9IGxvY2F0aW9uDQpmb3JtYXQgPSBjaXZpY0FkZHJl c3MNCmNvbmZpZGVuY2UgPSB2YWx1ZT05NSwgcGRmPXVua25vd24NCmxvY2F0aW9uX2luZm8gPSBj b3VudHJ5PVVTLEExPVdpc2NvbnNpbixBMz1NYWRpc29uDQpsb2NhdGlvbl9pbmZvID0gSE5PPTQ4
    MDAsUkQ9TWFpbixTVFM9RHJpdmUsUEM9NTM3MDQNCg0KUmVtb3ZlIHRoZSBjb25maWRlbmNlIHBh cmFtIGZvciBub3cuICAgIEkgZG9jdW1lbnRlZCBpdCBiZWZvcmUgSSBpbXBsZW1lbnRlZCBpdC4g OikNCg0KDQoNCkFsc28gc2VlaW5nIHByb2JsZW1zIHdpdGggbG9jYXRpb25fcmVmaW5lbWVudCBz ZXR0aW5nLg0KQWdhaW4sIEkgYmVsaWV2ZSBteSBzZXR0aW5nIG1hdGNoZXMgd2hhdCBpcyBvbiB0
    aGUgQXN0ZXJpc2sgR2VvbG9jYXRpb24gSW1wbGVtZW50YXRpb24gd2lraS4NCg0KWzA4LzAyIDA5
    OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSBjb25maWdfb3B0aW9ucy5jOiBDb3VsZCBub3QgZmlu ZCBvcHRpb24gc3VpdGFibGUgZm9yIGNhdGVnb3J5ICdJU19wcm9mXzIwJyBuYW1lZCAnbG9jYXRp b25fcmVmaW5lbWVudCcgYXQgbGluZSA1NiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1Jb NjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBhbiBvYmplY3Qg b2YgdHlwZSAncHJvZmlsZScgd2l0aCBpZCAnSVNfcHJvZl8yMCcgZnJvbSBjb25maWd1cmF0aW9u IGZpbGUgJ2dlb2xvY2F0aW9uLmNvbmYnDQoNCltJU19wcm9mXzIwXQ0KdHlwZSA9IHByb2ZpbGUN
    CnByb2ZpbGVfYWN0aW9uID0gcHJlZmVyX2luY29taW5nDQpwaWRmX2VsZW1lbnQgPSBwZXJzb24N
    CnVzYWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dlZD1ubw0KbG9jYXRpb25fcmVmZXJl bmNlID0gSVNfbG9jXzIyDQpsb2NhdGlvbl9yZWZpbmVtZW50ID0gUk9PTT0yOTINCmxvY2F0aW9u X3JlZmluZW1lbnQgPSBGTFI9MQ0KDQpQZmZmdC4gIEkgcmVuYW1lZCB0aGlzIHRvICJsb2NhdGlv bl9pbmZvX3JlZmluZW1lbnQiIHRvIGJldHRlciBtYXRjaCB0aGUgImxvY2F0aW9uX2luZm8iIHBh cmFtZXRlciBpbiB0aGUgTG9jYXRpb24gb2JqZWN0LiAgSSBmb3Jnb3QgdG8gcmVuYW1lIGl0IGlu IHRoZSB3aWtpIGRvY3VtZW50YXRpb24uICBJZiB5b3UganVzdCBjaGFuZ2UgdGhlIG5hbWUgaXQg c2hvdWxkIHdvcmsuDQoNCg0KDQoNCg0KRGFuDQotLQ0KX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQotLSBCYW5kd2lk dGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkgaHR0cDovL3d3dy5hcGktZGlnaXRhbC5jb20g LS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJpc2sgY29tbXVuaXR5IGZvcnVtIGF0OiBodHRw czovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoNCk5ldyB0byBBc3Rlcmlzaz8gU3RhcnQgaGVy ZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlzay5vcmcvd2lraS9kaXNwbGF5L0FTVC9HZXR0
    aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMgbWFpbGluZyBsaXN0DQpUbyBVTlNVQlNDUklC
    RSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAgIGh0dHA6Ly9saXN0cy5kaWdpdW0uY29tL21h aWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMNCi0tDQpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCi0tIEJhbmR3
    aWR0aCBhbmQgQ29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRwOi8vd3d3LmFwaS1kaWdpdGFsLmNv bSAtLQ0KDQpDaGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBjb21tdW5pdHkgZm9ydW0gYXQ6IGh0
    dHBzOi8vY29tbXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3IHRvIEFzdGVyaXNrPyBTdGFydCBo ZXJlOg0KICAgICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dl dHRpbmcrU3RhcnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWlsaW5nIGxpc3QNClRvIFVOU1VCU0NS
    SUJFIG9yIHVwZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0cDovL2xpc3RzLmRpZ2l1bS5jb20v bWFpbG1hbi9saXN0aW5mby9hc3Rlcmlzay11c2Vycw0KLS0NCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXw0KLS0gQmFu ZHdpZHRoIGFuZCBDb2xvY2F0aW9uIFByb3ZpZGVkIGJ5IGh0dHA6Ly93d3cuYXBpLWRpZ2l0YWwu Y29tIC0tDQoNCkNoZWNrIG91dCB0aGUgbmV3IEFzdGVyaXNrIGNvbW11bml0eSBmb3J1bSBhdDog aHR0cHM6Ly9jb21tdW5pdHkuYXN0ZXJpc2sub3JnLw0KDQpOZXcgdG8gQXN0ZXJpc2s/IFN0YXJ0
    IGhlcmU6DQogICAgICBodHRwczovL3dpa2kuYXN0ZXJpc2sub3JnL3dpa2kvZGlzcGxheS9BU1Qv R2V0dGluZytTdGFydGVkDQoNCmFzdGVyaXNrLXVzZXJzIG1haWxpbmcgbGlzdA0KVG8gVU5TVUJT
    Q1JJQkUgb3IgdXBkYXRlIG9wdGlvbnMgdmlzaXQ6DQogICBodHRwOi8vbGlzdHMuZGlnaXVtLmNv bS9tYWlsbWFuL2xpc3RpbmZvL2FzdGVyaXNrLXVzZXJzDQo

  • location_info_refinement is what you want. location_variables defines *new*
    variables to use in addition to those on the channel. You’d use these if you had variables that for some reason you didn’t want on the channel itself.

    However… The profile you defined above doesn’t have a location reference to refine so you’d need at least a dummy location with a format of civicAddress.

    [mylog]
    type = location format = civicAddress

    Then in your profile…
    [1]

    type = profile

    pidf_element = device

    profile_action = discard_incoming

    usage_rules = retransmission_allowed=yes location_reference = myloc

    location_variables = country=${_MY_GEO_COUNTRY}

    location_variables = A1=${_MY_GEO_NATIONAL_SUBDIVISION}

    You can also do this which might actually be faster…
    [mylog]
    type = location format = civicAddress location_info = country=${_MY_GEO_COUNTRY}, A1=${_MY_GEO_NATIONAL_SUBDIVISION}
    location_info = A2=${_MY_GEO_NATSUB}, …

    [1]

    type = profile

    pidf_element = device

    profile_action = discard_incoming

    usage_rules = retransmission_allowed=yes location_reference = myloc

    This way you don’t need to use location_info_refinement at all. IIRC this saves having to parse location_info_refinement and bounce it against the original location_info which could be empty.

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KSSBhbSBzdGlsbCBydW5uaW5nIG9uIGFzdGVyaXNrIDE4LjE0
    LjAtcmMxIGFuZCBoYXZlIG5vdCByZXRyaWV2ZWQgdGhlIHBhdGNoZXMgeWV0Lg0KRGlkIHRoaXMg dmVyc2lvbiBoYXZlIGEgYnVnIHdpdGggdGhlIHZhcmlhYmxlcz8NCg0KSeKAmW0gdHJ5aW5nIHRo ZSBsb2NhdGlvbl9pbmZvIGFuZCB2YXJpYWJsZXMgaW4gdGhlIEFNSSBPcmlnaW5hdGUgeW91IHJl Y29tbWVuZGVkIGF0IHRoZSBlbmQgb2YgdGhlIHByZXZpb3VzIGUtbWFpbC4NCg0KSW4gY2FzZSBp dOKAmXMgbm90IGNvbWluZyB0aHJvdWdoIGNvcnJlY3RseSB2aWEgZS1tYWlsLCB0aGUgdmFyaWFi bGUgbmFtZXMgYXJlIHByZWNlZWRlZCB3aXRoIGEgc2luZ2xlIHVuZGVyc2NvcmUgaW4gdGhlIEFN
    SSBhbmQgaW4gdGhlIGxvY2F0aW9uX2luZm8gdmFsdWVzLg0KDQoNCltJU19sb2NfNV0NCnR5cGUg PSBsb2NhdGlvbg0KZm9ybWF0ID0gY2l2aWNBZGRyZXNzDQpsb2NhdGlvbl9pbmZvID0gY291bnRy eT0ke19NWV9HRU9fQ09VTlRSWX0NCmxvY2F0aW9uX2luZm8gPSBBMT0ke19NWV9HRU9fTkFUSU9O
    QUxfU1VCRElWSVNJT059DQpsb2NhdGlvbl9pbmZvID0gQTI9JHtfTVlfR0VPX05BVFNVQn0NCmxv Y2F0aW9uX2luZm8gPSBBMz0ke19NWV9HRU9fQ0lUWX0NCmxvY2F0aW9uX2luZm8gPSBITk89JHtf TVlfR0VPX0hOT30NCmxvY2F0aW9uX2luZm8gPSBSRD0ke19NWV9HRU9fUkR9DQpsb2NhdGlvbl9p bmZvID0gU1RTPSR7X01ZX0dFT19TVFN9DQpsb2NhdGlvbl9pbmZvID0gUEM9JHtfTVlfR0VPX1BD
    fQ0KDQpbSVNfcHJvZl85XQ0KdHlwZSA9IHByb2ZpbGUNCmxvY2F0aW9uX3JlZmVyZW5jZSA9IElT
    X2xvY181DQpwaWRmX2VsZW1lbnQgPSBkZXZpY2UNCnByb2ZpbGVfYWN0aW9uID0gZGlzY2FyZF9p bmNvbWluZw0KdXNhZ2VfcnVsZXMgPSByZXRyYW5zbWlzc2lvbl9hbGxvd2VkPXllcw0KDQoNClsx OTIuMTY4LjMzLjMxXQ0KdHlwZSA9IGVuZHBvaW50DQpjb250ZXh0ID0gSVMNCnRyYW5zcG9ydCA9
    IHRyYW5zcG9ydDENCmF1dGggPSBhdXRoMTQNCmFvcnMgPSAxOTIuMTY4LjMzLjMxDQphY2NvdW50
    Y29kZSA9IDIwDQpkdG1mX21vZGUgPSBpbmJhbmQNCmRldmljZV9zdGF0ZV9idXN5X2F0ID0gMTYw MA0KbW9oX3Bhc3N0aHJvdWdoID0gbm8NCmlkZW50aWZ5X2J5ID0gdXNlcm5hbWUsaXAsaGVhZGVy DQpkaXNhbGxvdyA9IGFsbA0KYWxsb3cgPSB1bGF3DQphY2wgPSBhY2wxDQpnZW9sb2NfaW5jb21p bmdfY2FsbF9wcm9maWxlID0gSVNfcHJvZl83DQpnZW9sb2Nfb3V0Z29pbmdfY2FsbF9wcm9maWxl ID0gSVNfcHJvZl85DQoNCg0KDQpVc2luZyBhIHRlbG5ldCBzZXNzaW9uLCBJIGNvbm5lY3QgdXAg dmlhIEFNSSBhbmQgbG9naW4uICBUaGVuIEkgYXR0ZW1wdCB0byBPcmlnaW5hdGUuICBUaGUgY2Fs bCBnb2VzIHRocm91Z2gsIGJ1dCBub25lIG9mIHRoZSBsb2NhdGlvbl9pbmZvIHNldHRpbmdzIGFy ZSBiZWluZyB1cGRhdGVkDQoNCkFjdGlvbjogT3JpZ2luYXRlDQpDaGFubmVsOiBQSlNJUC8xMjM0
    QDE5Mi4xNjguMzMuMzENCkV4dGVuOiBjcmVhdGVjYWxsDQpDb250ZXh0OiBJUw0KUHJpb3JpdHk6
    IDENClRpbWVvdXQ6IDYwMDAwDQpDYWxsZXJJRDogSm9obiBTbWl0aCA8ODAwNTU1MTIzND4NClZh cmlhYmxlOiBfTVlfR0VPX0NPVU5UUlk9VVMsX01ZX0dFT19OQVRTVUI9RmxvcmlkYSxfTVlfR0VP
    X0NJVFk9T3JsYW5kbyxfTVlfR0VPX0hOTz0xMDAsX01ZX0dFT19SRD1NYWluLF9NWV9HRU9fU1RT
    PVN0cmVldCxDQUxMRVJJRChudW0tcHJlcyk9YWxsb3dlZF9wYXNzZWRfc2NyZWVuDQpBc3luYzog dHJ1ZQ0KDQoNClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVHWzE3NzRdIG1hbmFnZXIuYzogUnVu bmluZyBhY3Rpb24gJ09yaWdpbmF0ZScNClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVHWzE5MDdd IGNoYW5fcGpzaXAuYzogIDEyMzRAMTkyLjE2OC4zMy4zMSBUb3BvbG9neTogIDwwOmF1ZGlvLTA6
    YXVkaW86c2VuZHJlY3YgKHNsaW4pPg0KWzA4LzEwIDE1OjA0OjEyLjQ3MF0gREVCVUdbMTYxNF0g Y2hhbl9wanNpcC5jOiAgMTIzNEAxOTIuMTY4LjMzLjMxDQpbMDgvMTAgMTU6MDQ6MTIuNDcwXSBE
    RUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgMTkyLjE2OC4zMy4zMSAxMjM0IFRvcG9s b2d5OiAgPDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAoc2xpbik+DQpbMDgvMTAgMTU6MDQ6MTIu NDcwXSBERUJVR1sxNjE0XSBkc3AuYzogU2V0dXAgdG9uZSAxMTAwIEh6LCA1MDAgbXMsIGJsb2Nr X3NpemU9MTYwLCBoaXRzX3JlcXVpcmVkPTIxDQpbMDgvMTAgMTU6MDQ6MTIuNDcwXSBERUJVR1sx NjE0XSBkc3AuYzogU2V0dXAgdG9uZSAyMTAwIEh6LCAyNjAwIG1zLCBibG9ja19zaXplPTE2MCwg aGl0c19yZXF1aXJlZD0xMTYNClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVHWzE2MTRdIGNoYW5f cGpzaXAuYzogIDE5Mi4xNjguMzMuMzENClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVHWzE2MTRd IGNoYW5fcGpzaXAuYzogIERpcmVjdCBtZWRpYSBubyBnbGFyZSBtaXRpZ2F0aW9uDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi9wanNpcF9zZXNzaW9u X2NhcHMuYzogJzE5Mi4xNjguMzMuMzEnIENhcHMgZm9yIG91dGdvaW5nIGF1ZGlvIGNhbGwgd2l0
    aCBwcmVmICdyZW1vdGVfbWVyZ2UnIC0gcmVtb3RlOiAoc2xpbikgbG9jYWw6ICh1bGF3KSBqb2lu dDogKHVsYXcpDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vz c2lvbi5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gY2hhbl9wanNpcC5jOg0K
    WzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbl9wanNpcC5jOiAgMTkyLjE2OC4z My4zMQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbm5lbF9pbnRlcm5hbF9h cGkuYzogIDxpbml0aWFsaXppbmc+OiBGb3JtYXRzOiAobm9uZSkNClswOC8xMCAxNTowNDoxMi40
    NzFdIERFQlVHWzE5MDddIGNoYW5uZWxfaW50ZXJuYWxfYXBpLmM6ICBDaGFubmVsIGlzIGJlaW5n IGluaXRpYWxpemVkIG9yIGRlc3Ryb3llZA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkw N10gc3Rhc2lzLmM6IENyZWF0aW5nIHRvcGljLiBuYW1lOiBjaGFubmVsOjE2NjAxNjE4NTIuOCwg ZGV0YWlsOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gc3Rhc2lzLmM6IFRvcGlj ICdjaGFubmVsOjE2NjAxNjE4NTIuOCc6IDB4N2YxOWMwMDIzMjEwIGNyZWF0ZWQNClswOC8xMCAx NTowNDoxMi40NzFdIERFQlVHWzE5MDddIGNoYW5uZWwuYzogQ2hhbm5lbCAweDdmMTljMDAwNDhk MCAnUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNScgYWxsb2NhdGVkDQpbMDgvMTAgMTU6MDQ6
    MTIuNDcxXSBERUJVR1sxOTA3XSBjaGFuX3Bqc2lwLmM6ICBUb3BvbG9neTogIDwwOmF1ZGlvLTA6
    YXVkaW86c2VuZHJlY3YgKHVsYXcpPiBGb3JtYXRzOiAodWxhdykNClswOC8xMCAxNTowNDoxMi40
    NzFdIERFQlVHWzE5MDddIGNoYW5fcGpzaXAuYzogIENvbXBhdGlibGU/IHllcw0KWzA4LzEwIDE1
    OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbm5lbF9pbnRlcm5hbF9hcGkuYzogIFBKU0lQLzE5
    Mi4xNjguMzMuMzEtMDAwMDAwMDU6IE11bHRpc3RyZWFtRm9ybWF0czogKHVsYXcpDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxOTA3XSBjaGFubmVsX2ludGVybmFsX2FwaS5jOiAgU2V0IG5h dGl2ZSBmb3JtYXRzIGJ1dCBub3QgdG9wb2xvZ3kNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVH
    WzE5MDddIGNoYW5uZWxfaW50ZXJuYWxfYXBpLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAw MDA1OiAgPDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdyk+DQpbMDgvMTAgMTU6MDQ6MTIu NDcxXSBERUJVR1sxOTA3XSBjaGFubmVsX2ludGVybmFsX2FwaS5jOiAgVXNlZCBwcm92aWRlZCB0
    b3BvbG9neQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbl9wanNpcC5jOg0K
    WzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbl9wanNpcC5jOiAgQ2hhbm5lbDog UEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdb MTYyNl0gbWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2NoYW5uZWxe TQ0KUHJpdmlsZWdlOiBjYWxsLGFsbF5NDQpDaGFubmVsOiBQSlNJUC8xOTIuMTY4LjMzLjMxLTAw MDAwMDA1Xk0NCkNoYW5uZWxTdGF0ZTogMF5NDQpDaGFubmVsU3RhdGVEZXNjOiBEb3duXk0NCkNh bGxlcklETnVtOiA8dW5rbm93bj5eTQ0KQ2FsbGVySUROYW1lOiA8dW5rbm93bj5eTQ0KQ29ubmVj dGVkTGluZU51bTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExpbmVOYW1lOiA8dW5rbm93bj5eTQ0K
    TGFuZ3VhZ2U6IGVuXk0NCkFjY291bnRDb2RlOiAyMF5NDQpDb250ZXh0OiBJU15NDQpFeHRlbjog c15NDQpQcmlvcml0eTogMV5NDQpVbmlxdWVpZDogMTY2MDE2MTg1Mi44Xk0NCkxpbmtlZGlkOiAx NjYwMTYxODUyLjheTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTU2OV0gdGhy ZWFkcG9vbC5jOiBJbmNyZWFzaW5nIHRocmVhZHBvb2wgc3Rhc2lzL3Bvb2wncyBzaXplIGJ5IDEN
    ClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDhdIGNoYW5fcGpzaXAuYzogIFBKU0lQLzE5
    Mi4xNjguMzMuMzEtMDAwMDAwMDUgVG9wb2xvZ3k6ICA8MDphdWRpby0wOmF1ZGlvOnNlbmRyZWN2
    ICh1bGF3KT4NClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDhdIGNoYW5fcGpzaXAuYzog ICdjYWxsJyB0YXNrIHB1c2hlZA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTc3NF0gbWFu YWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2NoYW5uZWxeTQ0KUHJpdmls ZWdlOiBjYWxsLGFsbF5NDQpDaGFubmVsOiBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1Xk0N
    CkNoYW5uZWxTdGF0ZTogMF5NDQpDaGFubmVsU3RhdGVEZXNjOiBEb3duXk0NCkNhbGxlcklETnVt OiA8dW5rbm93bj5eTQ0KQ2FsbGVySUROYW1lOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU51
    bTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExpbmVOYW1lOiA8dW5rbm93bj5eTQ0KTGFuZ3VhZ2U6
    IGVuXk0NCkFjY291bnRDb2RlOiAyMF5NDQpDb250ZXh0OiBJU15NDQpFeHRlbjogc15NDQpQcmlv cml0eTogMV5NDQpVbmlxdWVpZDogMTY2MDE2MTg1Mi44Xk0NCkxpbmtlZGlkOiAxNjYwMTYxODUy LjheTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTc3NF0gbWFuYWdlci5jOiBF
    eGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2V4dGVuXk0NClByaXZpbGVnZTogZGlhbHBs YW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDVeTQ0KQ2hhbm5l bFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVySUROdW06IDx1bmtu b3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5r bm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpMYW5ndWFnZTogZW5eTQ0K
    QWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBzXk0NClByaW9yaXR5OiAx Xk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2NjAxNjE4NTIuOF5NDQpF
    eHRlbnNpb246IHNeTQ0KQXBwbGljYXRpb246IEFwcERpYWwyXk0NCkFwcERhdGE6IChPdXRnb2lu ZyBMaW5lKV5NDQpeTQ0KDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNzc0XSBtYW5hZ2Vy LmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6DQpFdmVudDogVmFyU2V0Xk0NClByaXZpbGVnZTogZGlh bHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDVeTQ0KQ2hh bm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVySUROdW06IDx1
    bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8
    dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpMYW5ndWFnZTogZW5e TQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBzXk0NClByaW9yaXR5
    OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2NjAxNjE4NTIuOF5N
    DQpWYXJpYWJsZTogX01ZX0dFT19TVFNeTQ0KVmFsdWU6IFN0cmVldF5NDQpeTQ0KDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNzc0XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6
    DQpFdmVudDogVmFyU2V0Xk0NClByaXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBK
    U0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxT
    dGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6
    IDx1bmtub3duPl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ2FsbGVySUROYW1l OiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU51bTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExp bmVOYW1lOiA8dW5rbm93bj5eTQ0KTGFuZ3VhZ2U6IGVuXk0NCkFjY291bnRDb2RlOiAyMF5NDQpD
    b250ZXh0OiBJU15NDQpFeHRlbjogc15NDQpQcmlvcml0eTogMV5NDQpVbmlxdWVpZDogMTY2MDE2
    MTg1Mi44Xk0NCkxpbmtlZGlkOiAxNjYwMTYxODUyLjheTQ0KVmFyaWFibGU6IF9NWV9HRU9fUkRe TQ0KVmFsdWU6IE1haW5eTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYyNl0g bWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2V4dGVuXk0NClByaXZp bGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAw MDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVy SUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRM
    aW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpMYW5n dWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBzXk0N
    ClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2NjAx NjE4NTIuOF5NDQpFeHRlbnNpb246IHNeTQ0KQXBwbGljYXRpb246IEFwcERpYWwyXk0NCkFwcERh dGE6IChPdXRnb2luZyBMaW5lKV5NDQpeTQ0KDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sx NjI2XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6DQpFdmVudDogVmFyU2V0Xk0NClBy aXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAw MDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2Fs bGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0
    ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpM
    YW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBz Xk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2
    NjAxNjE4NTIuOF5NDQpWYXJpYWJsZTogX01ZX0dFT19TVFNeTQ0KVmFsdWU6IFN0cmVldF5NDQpe TQ0KDQrigKYuDQoNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIGNoYW5fcGpzaXAu YzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUgVG9wb2xvZ3k6ICA8MDphdWRpby0wOmF1
    ZGlvOnNlbmRyZWN2ICh1bGF3KT4NClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJl c19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVz X3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFByb2Nlc3Np bmcgc3RyZWFtcw0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nl c3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFByb2Nlc3Npbmcgc3RyZWFt IDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdykNClswOC8xMCAxNTowNDoxMi40NzFdIERF
    QlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAw MDA1IEFkZGluZyBwb3NpdGlvbiAwDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSBy ZXNfcGpzaXBfc2Vzc2lvbi5jOiAgQ3JlYXRpbmcgbmV3IG1lZGlhIHNlc3Npb24NClswOC8xMCAx NTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBTZXR0aW5nIG1l ZGlhIHNlc3Npb24gYXMgZGVmYXVsdCBmb3IgYXVkaW8NClswOC8xMCAxNTowNDoxMi40NzFdIERF
    QlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBEb25lDQpbMDgvMTAgMTU6MDQ6MTIuNDcx XSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0w MDAwMDAwNSBTdHJlYW06IDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdykNClswOC8xMCAx NTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZHBfcnRwLmM6ICBQSlNJUC8xOTIu MTY4LjMzLjMxLTAwMDAwMDA1IFR5cGU6IGF1ZGlvIDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAo dWxhdykNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZHBfcnRw LmM6IFRyYW5zcG9ydCB0cmFuc3BvcnQxIGJvdW5kIHRvIDAuMC4wLjA6IFVzaW5nIGl0IGZvciBS
    VFAgbWVkaWEuDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSBydHBfZW5naW5lLmM6
    IFVzaW5nIGVuZ2luZSAnYXN0ZXJpc2snIGZvciBSVFAgaW5zdGFuY2UgJzB4N2YxOWM4MGMzYmYw Jw0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3J0cF9hc3Rlcmlzay5jOiAo MHg3ZjE5YzgwYzNiZjApIFJUUCBhbGxvY2F0ZWQgcG9ydCAxNzIxNA0KWzA4LzEwIDE1OjA0OjEy LjQ3MV0gREVCVUdbMTYxNF0gcmVzX3J0cF9hc3Rlcmlzay5jOiAoMHg3ZjE5YzgwYzNiZjApIElD
    RSBjcmVhdGluZyBzZXNzaW9uIDAuMC4wLjA6MTcyMTQgKDE3MjE0KQ0KWzA4LzEwIDE1OjA0OjEy LjQ3MV0gREVCVUdbMTYxNF0gcmVzX3J0cF9hc3Rlcmlzay5jOiAoMHg3ZjE5YzgwYzNiZjApIElD
    RSBjcmVhdGUNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19ydHBfYXN0ZXJp c2suYzogKDB4N2YxOWM4MGMzYmYwKSBJQ0UgYWRkIHN5c3RlbSBjYW5kaWRhdGVzDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcnRwX2FzdGVyaXNrLmM6ICgweDdmMTljODBj M2JmMCkgSUNFIGFkZCBjYW5kaWRhdGU6IDE5Mi4xNjguMzMuMzM6MTcyMTQsIDIxMzA3MDY0MzEN
    ClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJ0cF9lbmdpbmUuYzogUlRQIGluc3Rh bmNlICcweDdmMTljODBjM2JmMCcgaXMgc2V0dXAgYW5kIHJlYWR5IHRvIGdvDQpbMDgvMTAgMTU6
    MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcnRwX2FzdGVyaXNrLmM6ICgweDdmMTljODBjM2Jm MCkgSUNFIHN0b3BwZWQNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19ydHBf YXN0ZXJpc2suYzogKDB4N2YxOWM4MGMzYmYwKSBSVENQIHNldHVwIG9uIFJUUCBpbnN0YW5jZQ0K
    WzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3NkcF9ydHAuYzogIFJD
    OiAxDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5j OiAgSGFuZGxlZA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nl c3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFN0cmVhbSAwOmF1ZGlvLTA6
    YXVkaW86c2VuZHJlY3YgKHVsYXcpIGFkZGVkDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sx NjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTog RG9uZSB3aXRoIDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdykNClswOC8xMCAxNTowNDox Mi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMz LjMxLTAwMDAwMDA1OiBBZGRpbmcgYnVuZGxlIGdyb3VwcyAoaWYgYXZhaWxhYmxlKQ0KWzA4LzEw IDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5
    Mi4xNjguMzMuMzEtMDAwMDAwMDU6IENvcHlpbmcgY29ubmVjdGlvbiBkZXRhaWxzDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNTogUHJvY2Vzc2luZyBtZWRpYSAwDQpbMDgvMTAgMTU6MDQ6MTIu NDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4z MS0wMDAwMDAwNTogTWVkaWEgMCByZXNldA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYx NF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUNClsw OC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6DQpbMDgv MTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAv MTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogTWV0aG9kIGlzIElOVklURQ0KWzA4LzEwIDE1OjA0OjEy LjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0aW9uLmM6ICBQSlNJUC8xOTIuMTY4
    LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpz aXBfZ2VvbG9jYXRpb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFRoZXJlIHdh cyBubyBnZW9sb2MgZGF0YXN0b3JlDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBy ZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFRo ZXJlIGFyZSBubyBnZW9sb2MgcHJvZmlsZXMgb24gdGhpcyBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6
    MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIFBKU0lQLzE5Mi4x NjguMzMuMzEtMDAwMDAwMDU6IFRoZXJlIGFyZSBub3cgMSBnZW9sb2MgcHJvZmlsZXMgdG8gYmUg c2VudA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0
    aW9uLmM6ICBlcDogJ0lTX3Byb2ZfOScgRWZmZWN0aXZlTG9jOiBjb3VudHJ5PSR7X01ZX0dFT19D
    T1VOVFJZfSxBMT0ke19NWV9HRU9fTkFUSU9OQUxfU1VCRElWSVNJT059LEEyPSR7X01ZX0dFT19O
    QVRTVUJ9LEEzPSR7X01ZX0dFT19DSVRZfSxITk89JHtfTVlfR0VPX0hOT30sUkQ9JHtfTVlfR0VP
    X1JEfSxTVFM9JHtfTVlcDQpfR0VPX1NUU30sUEM9JHtfTVlfR0VPX1BDfQ0KWzA4LzEwIDE1OjA0
    OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0aW9uLmM6ICBQSlNJUC8xOTIu MTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNf Z2VvbG9jYXRpb24vZ2VvbG9jX2Vwcm9maWxlLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAw MDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfZ2VvbG9jYXRpb24vZ2Vv bG9jX2Vwcm9maWxlLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6
    MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9f Q09VTlRSWSByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBE
    RUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fQ09VTlRSWSByZXN1
    bHQgaXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcGJ4
    X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX05BVElPTkFMX1NVQkRJVklTSU9OIHJlc3Vs dCBpcyAnJyBmcm9tIGNoYW5uZWwNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHBi eF92YXJpYWJsZXMuYzogVmFyaWFibGUgX01ZX0dFT19OQVRJT05BTF9TVUJESVZJU0lPTiByZXN1
    bHQgaXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcGJ4
    X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX05BVFNVQiByZXN1bHQgaXMgJycgZnJvbSBj aGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6
    IFZhcmlhYmxlIF9NWV9HRU9fTkFUU1VCIHJlc3VsdCBpcyAnJyBmcm9tIGhlYWRwDQpbMDgvMTAg MTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9H
    RU9fQ0lUWSByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBE
    RUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fQ0lUWSByZXN1bHQg aXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcGJ4X3Zh cmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX0hOTyByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVs DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlh YmxlIF9NWV9HRU9fSE5PIHJlc3VsdCBpcyAnJyBmcm9tIGhlYWRwDQpbMDgvMTAgMTU6MDQ6MTIu NDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fUkQgcmVz dWx0IGlzICcnIGZyb20gY2hhbm5lbA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0g cGJ4X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX1JEIHJlc3VsdCBpcyAnJyBmcm9tIGhl YWRwDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZh cmlhYmxlIF9NWV9HRU9fU1RTIHJlc3VsdCBpcyAnJyBmcm9tIGNoYW5uZWwNClswOC8xMCAxNTow NDoxMi40NzJdIERFQlVHWzE2MTRdIHBieF92YXJpYWJsZXMuYzogVmFyaWFibGUgX01ZX0dFT19T
    VFMgcmVzdWx0IGlzICcnIGZyb20gaGVhZHANClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2
    MTRdIHBieF92YXJpYWJsZXMuYzogVmFyaWFibGUgX01ZX0dFT19QQyByZXN1bHQgaXMgJycgZnJv bSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVz LmM6IFZhcmlhYmxlIF9NWV9HRU9fUEMgcmVzdWx0IGlzICcnIGZyb20gaGVhZHANClswOC8xMCAx NTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19nZW9sb2NhdGlvbi9nZW9sb2NfY2l2aWNhZGRy LmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBE
    RUJVR1sxNjE0XSByZXNfZ2VvbG9jYXRpb24vZ2VvbG9jX2NpdmljYWRkci5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNTogRG9uZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYx NF0gcmVzX2dlb2xvY2F0aW9uL2dlb2xvY19lcHJvZmlsZS5jOiAgUEpTSVAvMTkyLjE2OC4zMy4z MS0wMDAwMDAwNTogRG9uZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX2dl b2xvY2F0aW9uL2dlb2xvY19lcHJvZmlsZS5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAw NTogRG9uZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xv Y2F0aW9uLmM6ICBib2R5OiAweDdmMTljODA0ODM5MCAwDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBE
    RUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIGNpZDogJ3doandvQDE5Mi4xNjgu MzMuMzMnIHVyaTogJ2NpZDp3aGp3b0AxOTIuMTY4LjMzLjMzJyBwaWRmX2luZGV4OiAwDQpbMDgv MTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIFBK
    U0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFBJREYtTE8gYWRkZWQgd2l0aCBjaWQgJ3doandv QDE5Mi4xNjguMzMuMzMnDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpz aXBfZ2VvbG9jYXRpb24uYzogIGl4OiAwIG9mIDEgTG9jUmVmOiBjaWQ6d2hqd29AMTkyLjE2OC4z My4zMw0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0
    aW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1OiBHZW9sb2NhdGlvbjogPGNpZDp3
    aGp3b0AxOTIuMTY4LjMzLjMzPg0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVz X3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUNClswOC8xMCAx NTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcC9wanNpcF9yZXNvbHZlci5jOiBQZXJm b3JtaW5nIFNJUCBETlMgcmVzb2x1dGlvbiBvZiB0YXJnZXQgJzE5Mi4xNjguMzMuMzEnDQpbMDgv MTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXAvcGpzaXBfcmVzb2x2ZXIuYzog VHJhbnNwb3J0IHR5cGUgZm9yIHRhcmdldCAnMTkyLjE2OC4zMy4zMScgaXMgJ1VEUCB0cmFuc3Bv cnQnDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXAvcGpzaXBfcmVz b2x2ZXIuYzogVGFyZ2V0ICcxOTIuMTY4LjMzLjMxJyBpcyBhbiBJUCBhZGRyZXNzLCBza2lwcGlu ZyByZXNvbHV0aW9uDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBf c2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNSBFdmVudDogVFNYX1NUQVRF
    ICBJbnYgU3RhdGU6IENBTExJTkcNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJl c19wanNpcF9zZXNzaW9uLmM6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFNvdXJjZSBv ZiB0cmFuc2FjdGlvbiBzdGF0ZSBjaGFuZ2UgaXMgVFhfTVNHDQpbMDgvMTAgMTU6MDQ6MTIuNDcy XSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0g REVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAw MDAwMDUgVFNYIFN0YXRlOiBDYWxsaW5nICBJbnYgU3RhdGU6IENBTExJTkcNClswOC8xMCAxNTow NDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBOb3RoaW5nIGRlbGF5
    ZWQNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6
    ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1IFRTWCBTdGF0ZTogQ2FsbGluZyAgSW52IFN0
    YXRlOiBDQUxMSU5HDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBf c2Vzc2lvbi5jOiAgVG9wb2xvZ3k6IFBlbmRpbmc6ICA8MDphdWRpby0wOmF1ZGlvOnNlbmRyZWN2
    ICh1bGF3KT4gIEFjdGl2ZTogKG51bGwgdG9wb2xvZ3kpDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBE
    RUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVC
    VUdbMTYxNF0gY2hhbl9wanNpcC5jOiAgUkM6IDANClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVH
    WzE2MTNdIHJlc19wanNpcC9wanNpcF9kaXN0cmlidXRvci5jOiBTZWFyY2hpbmcgZm9yIHNlcmlh bGl6ZXIgYXNzb2NpYXRlZCB3aXRoIGRpYWxvZyBkbGcweDdmMTljODBhMjc5OCBmb3IgUmVzcG9u c2UgbXNnIDEwMC9JTlZJVEUvY3NlcT0yMTEzMSAocmRhdGEweDdmMTliNDAwMTc2OCkNClswOC8x MCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTNdIHJlc19wanNpcC9wanNpcF9kaXN0cmlidXRvci5j OiBGb3VuZCBzZXJpYWxpemVyIHBqc2lwL291dHNlc3MvMTkyLjE2OC4zMy4zMS0wMDAwMDBhNiBh c3NvY2lhdGVkIHdpdGggZGlhbG9nIGRsZzB4N2YxOWM4MGEyNzk4DQpbMDgvMTAgMTU6MDQ6MTIu NDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4z MS0wMDAwMDAwNSBNZXRob2Q6IElOVklURSBTdGF0dXM6IDEwMA0KWzA4LzEwIDE1OjA0OjEyLjQ3
    M10gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzoNClswOC8xMCAxNTowNDoxMi40NzNd IERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAw MDAwMDA1IFRTWCBTdGF0ZTogUHJvY2VlZGluZyAgSW52IFN0YXRlOiBDQUxMSU5HDQpbMDgvMTAg MTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNTogUmVzcG9uc2UgaXMgMTAwIFRyeWluZw0KWzA4LzEwIDE1OjA0
    OjEyLjQ3M10gREVCVUdbMTYxNF0gY2hhbl9wanNpcC5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0w MDAwMDAwNTogU3RhdHVzOiAxMDANClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTRdIGNo YW5fcGpzaXAuYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IE5vdCBxdWV1ZWluZyBh bnl0aGluZw0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdbMTYxNF0gY2hhbl9wanNpcC5jOiAg UEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdb MTYxNF0gY2hhbl9wanNpcC5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogU3RhdHVz OiAxMDANClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTRdIGNoYW5fcGpzaXAuYzogIFBK
    U0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUNClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2
    MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpb MDgvMTAgMTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgTm90
    aGluZyBkZWxheWVkDQpbMDgvMTAgMTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBf c2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNSBUU1ggU3RhdGU6IFByb2Nl ZWRpbmcgIEludiBTdGF0ZTogQ0FMTElORw0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdbMTYx NF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFRvcG9sb2d5OiBQZW5kaW5nOiAgPDA6YXVkaW8tMDph dWRpbzpzZW5kcmVjdiAodWxhdyk+ICBBY3RpdmU6IChudWxsIHRvcG9sb2d5KQ0KWzA4LzEwIDE1
    OjA0OjEyLjQ3M10gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzoNCg0KVGhlIFNJUCBJ
    TlZJVEUgaXMgYXMgZm9sbG93cyAoYWxsIHRoZSBjaXZpYyBhZGRyZXNzIHNldHRpbmdzIGFyZSBi bGFuaywgZGVzcGl0ZSB0aGUgQU1JIFZhclNldCBldmVudHMgc2hvd2luZyB0aGUgdmFyaWFibGVz IHdlcmUgc2V0IG9uIHRoZSBjaGFubmVsKQ0KDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBWRVJCT1NF
    WzE2MTRdIHJlc19wanNpcF9sb2dnZXIuYzogPC0tLSBUcmFuc21pdHRpbmcgU0lQIHJlcXVlc3Qg KDIyNjUgYnl0ZXMpIHRvIFVEUDoxOTIuMTY4LjMzLjMxOjUwNjAgLS0tPg0KSU5WSVRFIHNpcDox MjM0QDE5Mi4xNjguMzMuMzEgU0lQLzIuMF5NDQpWaWE6IFNJUC8yLjAvVURQIDE5Mi4xNjguMzMu MzM6NTA2MDtycG9ydDticmFuY2g9ejloRzRiS1BqMzdlZjc1ZWItMGRkYy00ODAyLWJhYTctMDky MWZmMzBmZjhhXk0NCkZyb206ICJKb2huIFNtaXRoIiA8c2lwOjgwMDU1NTEyMzRAMTkyLjE2OC4z My4zMz47dGFnPTE3MjBmYWJjLWFmZDctNDZhZC1hYTA4LWZmODQxNDBhN2FkZF5NDQpUbzogPHNp cDoxMjM0QDE5Mi4xNjguMzMuMzE+Xk0NCkNvbnRhY3Q6IDxzaXA6YXN0ZXJpc2tAMTkyLjE2OC4z My4zMzo1MDYwPl5NDQpDYWxsLUlEOiBjMGE0MWY2MC0wOGQ3LTQzZTMtOTkwMS0zOTg2MGE4MDAx ZjVeTQ0KQ1NlcTogMjExMzEgSU5WSVRFXk0NCkFsbG93OiBPUFRJT05TLCBSRUdJU1RFUiwgU1VC
    U0NSSUJFLCBOT1RJRlksIFBVQkxJU0gsIElOVklURSwgQUNLLCBCWUUsIENBTkNFTCwgVVBEQVRF
    LCBQUkFDSywgTUVTU0FHRSwgUkVGRVJeTQ0KU3VwcG9ydGVkOiAxMDByZWwsIHRpbWVyLCByZXBs YWNlcywgbm9yZWZlcnN1YiwgaGlzdGluZm9eTQ0KU2Vzc2lvbi1FeHBpcmVzOiAxODAwXk0NCk1p bi1TRTogOTBeTQ0KR2VvbG9jYXRpb246IDxjaWQ6d2hqd29AMTkyLjE2OC4zMy4zMz5eTQ0KR2Vv bG9jYXRpb24tUm91dGluZzogbm9eTQ0KTWF4LUZvcndhcmRzOiA3MF5NDQpVc2VyLUFnZW50OiBB
    c3RlcmlzayBQQlggMTguMTQuMC1yYzFeTQ0KQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvbWl4ZWQ7
    Ym91bmRhcnk9ODU0MmE5Y2UtN2FjNC00N2Y3LThjMTctZDQyNzcxZWJkNTY0Xk0NCkNvbnRlbnQt TGVuZ3RoOiAgMTQ3MF5NDQpeTQ0KXk0NCi0tODU0MmE5Y2UtN2FjNC00N2Y3LThjMTctZDQyNzcx ZWJkNTY0Xk0NCkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vc2RwXk0NCkNvbnRlbnQtTGVuZ3Ro OiAgIDE4MV5NDQpeTQ0Kdj0wXk0NCm89LSA4MjMwOTk0MzUgODIzMDk5NDM1IElOIElQNCAxOTIu MTY4LjMzLjMzXk0NCnM9QXN0ZXJpc2teTQ0KYz1JTiBJUDQgMTkyLjE2OC4zMy4zM15NDQp0PTAg MF5NDQptPWF1ZGlvIDE3MjE0IFJUUC9BVlAgMF5NDQphPXJ0cG1hcDowIFBDTVUvODAwMF5NDQph PXB0aW1lOjIwXk0NCmE9bWF4cHRpbWU6MTUwXk0NCmE9c2VuZHJlY3ZeTQ0KXk0NCi0tODU0MmE5
    Y2UtN2FjNC00N2Y3LThjMTctZDQyNzcxZWJkNTY0Xk0NCkNvbnRlbnQtSUQ6IDx3aGp3b0AxOTIu MTY4LjMzLjMzPl5NDQpDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3BpZGYreG1sXk0NCkNvbnRl bnQtTGVuZ3RoOiAgMTAwOV5NDQpeTQ0KPD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8cHJlc2VuY2Ug eG1sbnM9InVybjppZXRmOnBhcmFtczp4bWw6bnM6cGlkZiIgeG1sbnM6Y2E9InVybjppZXRmOnBh cmFtczp4bWw6bnM6cGlkZjpnZW9wcml2MTA6Y2l2aWNBZGRyIiB4bWxuczpkbT0idXJuOmlldGY6
    cGFyYW1zOnhtbDpuczpwaWRmOmRhdGEtbW9kZWwiIHhtbG5zOmZuPSJodHRwOi8vd3d3LnczLm9y Zy8yMDA1L3hwYXRoLWZ1bmN0aW9ucyIgeG1sbnM6Z2JwPSJ1cm46aWV0ZjpwYXJhbXM6eG1sOlwN
    Cm5zOnBpZGY6Z2VvcHJpdjEwOmJhc2ljUG9saWN5IiB4bWxuczpnbWw9Imh0dHA6Ly93d3cub3Bl bmdpcy5uZXQvZ21sIiB4bWxuczpncD0idXJuOmlldGY6cGFyYW1zOnhtbDpuczpwaWRmOmdlb3By aXYxMCIgeG1sbnM6Z3M9Imh0dHA6Ly93d3cub3Blbmdpcy5uZXQvcGlkZmxvLzEuMCIgeG1sbnM6
    ZGF0ZT0iaHR0cDovL2V4c2x0Lm9yZy9kYXRlcy1hbmQtdGltZXMiIGVudGl0eT0iSVNfcHJvZl85
    Ij4NCiAgPGRtOmRldmljZT4NCiAgICA8Z3A6Z2VvcHJpdj4NCiAgICAgIDxncDpsb2NhdGlvbi1p bmZvPg0KICAgICAgICA8Y2E6Y2l2aWNBZGRyZXNzIHhtbDpsYW5nPSJlbiI+DQogICAgICAgICAg PGNhOmNvdW50cnkvPg0KICAgICAgICAgIDxjYTpBMS8+DQogICAgICAgICAgPGNhOkEyLz4NCiAg ICAgICAgICA8Y2E6QTMvPg0KICAgICAgICAgIDxjYTpITk8vPg0KICAgICAgICAgIDxjYTpSRC8+
    DQogICAgICAgICAgPGNhOlNUUy8+DQogICAgICAgICAgPGNhOlBDLz4NCiAgICAgICAgPC9jYTpj aXZpY0FkZHJlc3M+DQogICAgICA8L2dwOmxvY2F0aW9uLWluZm8+DQogICAgICA8Z3A6dXNhZ2Ut cnVsZXM+DQogICAgICAgIDxncDpyZXRyYW5zbWlzc2lvbl9hbGxvd2VkPnllczwvZ3A6cmV0cmFu c21pc3Npb25fYWxsb3dlZD4NCiAgICAgIDwvZ3A6dXNhZ2UtcnVsZXM+DQogICAgPC9ncDpnZW9w cml2Pg0KICAgIDxkbTp0aW1lc3RhbXA+MjAyMi0wOC0xMFQyMDowNDoxMlo8L2RtOnRpbWVzdGFt cD4NCiAgPC9kbTpkZXZpY2U+DQo8L3ByZXNlbmNlPg0KXk0NCi0tODU0MmE5Y2UtN2FjNC00N2Y3
    LThjMTctZDQyNzcxZWJkNTY0LS1eTQ0KDQoNCkZyb206IGFzdGVyaXNrLXVzZXJzIDxhc3Rlcmlz ay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+IE9uIEJlaGFsZiBPZiBHZW9yZ2UgSm9z ZXBoDQpTZW50OiBXZWRuZXNkYXksIEF1Z3VzdCAxMCwgMjAyMiAxOjM0IFBNDQpUbzogQXN0ZXJp c2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJp c2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4NClN1YmplY3Q6IFJlOiBbRXh0ZXJuYWxdIFthc3Rl cmlzay11c2Vyc10gW0V4dGVybmFsXSBbRXh0ZXJuYWxdIFtFeHRlcm5hbF0gR2VvIGxvY2F0aW9u IDE4LjE0LjAtcmMxIHF1ZXN0aW9uDQoNCg0KDQpPbiBXZWQsIEF1ZyAxMCwgMjAyMiBhdCAxMToy NSBBTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFtdGVsY28uY29tPj4g d3JvdGU6DQpUaGFuayB5b3UgR2VvcmdlLg0KDQpMb29raW5nIGZvcndhcmQgdG8gd29ya2luZyB3
    aXRoIHRoZSBjaGFuZ2VzLiAgSSB3aWxsIHJldHJpZXZlIHRoZW0gd2hlbiB0aGUgbmV4dCByZWxl YXNlIGNhbmRpZGF0ZSBjb21lcyBvdXQuDQoNCg0KQSBxdWljayBxdWVzdGlvbiBvbiB1c2luZyB2
    YXJpYWJsZXMgdG8gcGFzcyBjdXN0b20gR2VvIExvY2F0aW9uIHNldHRpbmdzIG9uIHZpYSBhbiBB
    TUkgT3JpZ2luYXRlLg0KDQoNCklmIG15IEFNSSBvcmlnaW5hdGUgcmVxdWVzdCBsb29rcyBzb21l dGhpbmcgbGlrZSB0aGlz4oCmDQpBY3Rpb246IE9yaWdpbmF0ZQ0KQ2hhbm5lbDogUEpTSVAvMTIz NEAxOTIuMTY4LngueDxtYWlsdG86UEpTSVAvMTIzNEAxOTIuMTY4LngueD4NCkV4dGVuOiBjcmVh dGVjYWxsDQpDb250ZXh0OiBteWNvbnRleHQNClByaW9yaXR5OiAxDQpUaW1lb3V0OiA2MDAwMA0K
    Q2FsbGVySUQ6IEpvaG4gU21pdGggPDgwMDU1NTEyMzQ+DQpWYXJpYWJsZTogX01ZX0dFT19DT1VO
    VFJZPVVTLF9NWV9HRU9fTkFUU1VCPUZsb3JpZGEsX01ZX0dFT19DSVRZPU9ybGFuZG8sX01ZX0dF
    T19ITk89MTAwLF9NWV9HRU9fUkQ9TWFpbixfTVlfR0VPX1NUUz1TdHJlZXQNCkFzeW5jOiB0cnVl DQoNCkRvIEkgbmVlZCB0byBwcm9ncmFtIHRoZSBsb2NhdGlvbl92YXJpYWJsZXMgaW4gdGhlIHBy b2ZpbGUgbGlrZSB0aGlzPw0KDQpbMV0NCnR5cGUgPSBwcm9maWxlDQpwaWRmX2VsZW1lbnQgPSBk ZXZpY2UNCnByb2ZpbGVfYWN0aW9uID0gZGlzY2FyZF9pbmNvbWluZw0KdXNhZ2VfcnVsZXMgPSBy ZXRyYW5zbWlzc2lvbl9hbGxvd2VkPXllcw0KbG9jYXRpb25fdmFyaWFibGVzID0gY291bnRyeT0k e19NWV9HRU9fQ09VTlRSWX0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEExPSR7X01ZX0dFT19OQVRJ
    T05BTF9TVUJESVZJU0lPTn0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEEyPSR7X01ZX0dFT19OQVRT
    VUJ9DQpsb2NhdGlvbl92YXJpYWJsZXMgPSBBMz0ke19NWV9HRU9fQ0lUWX0NCmxvY2F0aW9uX3Zh cmlhYmxlcyA9IEhOTz0ke19NWV9HRU9fSE5PfQ0KbG9jYXRpb25fdmFyaWFibGVzID0gUkQ9JHtf TVlfR0VPX1JEfQ0KbG9jYXRpb25fdmFyaWFibGVzID0gU1RTPSR7X01ZX0dFT19TVFN9DQpsb2Nh dGlvbl92YXJpYWJsZXMgPSBQQz0ke19NWV9HRU9fUEN9DQoNCk9yIHdvdWxkIEkgbmVlZCB0byBw cm9ncmFtIHRoZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnRzIGluIHRoZSBwcm9maWxlIHRvIHVz ZSB0aG9zZSB2YXJpYWJsZXM/DQoNCmxvY2F0aW9uX2luZm9fcmVmaW5lbWVudCBpcyB3aGF0IHlv dSB3YW50LiAgbG9jYXRpb25fdmFyaWFibGVzIGRlZmluZXMgbmV3IHZhcmlhYmxlcyB0byB1c2Ug aW4gYWRkaXRpb24gdG8gdGhvc2Ugb24gdGhlIGNoYW5uZWwuICBZb3UnZCB1c2UgdGhlc2UgaWYg eW91IGhhZCB2YXJpYWJsZXMgdGhhdCBmb3Igc29tZSByZWFzb24geW91IGRpZG4ndCB3YW50IG9u IHRoZSBjaGFubmVsIGl0c2VsZi4NCg0KSG93ZXZlci4uLiAgIFRoZSBwcm9maWxlIHlvdSBkZWZp bmVkIGFib3ZlIGRvZXNuJ3QgaGF2ZSBhIGxvY2F0aW9uIHJlZmVyZW5jZSB0byByZWZpbmUgc28g eW91J2QgbmVlZCBhdCBsZWFzdCBhIGR1bW15IGxvY2F0aW9uIHdpdGggYSBmb3JtYXQgb2YgY2l2
    aWNBZGRyZXNzLg0KDQpbbXlsb2ddDQp0eXBlID0gbG9jYXRpb24NCmZvcm1hdCA9IGNpdmljQWRk cmVzcw0KDQpUaGVuIGluIHlvdXIgcHJvZmlsZS4uLg0KWzFdDQp0eXBlID0gcHJvZmlsZQ0KcGlk Zl9lbGVtZW50ID0gZGV2aWNlDQpwcm9maWxlX2FjdGlvbiA9IGRpc2NhcmRfaW5jb21pbmcNCnVz YWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dlZD15ZXMNCmxvY2F0aW9uX3JlZmVyZW5j ZSA9IG15bG9jDQpsb2NhdGlvbl92YXJpYWJsZXMgPSBjb3VudHJ5PSR7X01ZX0dFT19DT1VOVFJZ
    fQ0KbG9jYXRpb25fdmFyaWFibGVzID0gQTE9JHtfTVlfR0VPX05BVElPTkFMX1NVQkRJVklTSU9O
    fQ0KLi4uDQoNCllvdSBjYW4gYWxzbyBkbyB0aGlzIHdoaWNoIG1pZ2h0IGFjdHVhbGx5IGJlIGZh c3Rlci4uLg0KW215bG9nXQ0KdHlwZSA9IGxvY2F0aW9uDQpmb3JtYXQgPSBjaXZpY0FkZHJlc3MN
    CmxvY2F0aW9uX2luZm8gPSBjb3VudHJ5PSR7X01ZX0dFT19DT1VOVFJZfSwgQTE9JHtfTVlfR0VP
    X05BVElPTkFMX1NVQkRJVklTSU9OfQ0KbG9jYXRpb25faW5mbyA9IEEyPSR7X01ZX0dFT19OQVRT
    VUJ9LCAuLi4NCg0KWzFdDQp0eXBlID0gcHJvZmlsZQ0KcGlkZl9lbGVtZW50ID0gZGV2aWNlDQpw cm9maWxlX2FjdGlvbiA9IGRpc2NhcmRfaW5jb21pbmcNCnVzYWdlX3J1bGVzID0gcmV0cmFuc21p c3Npb25fYWxsb3dlZD15ZXMNCmxvY2F0aW9uX3JlZmVyZW5jZSA9IG15bG9jDQoNClRoaXMgd2F5
    IHlvdSBkb24ndCBuZWVkIHRvIHVzZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQgYXQgYWxsLg0K
    SUlSQyB0aGlzIHNhdmVzIGhhdmluZyB0byBwYXJzZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQg YW5kIGJvdW5jZSBpdCBhZ2FpbnN0DQp0aGUgb3JpZ2luYWwgbG9jYXRpb25faW5mbyB3aGljaCBj b3VsZCBiZSBlbXB0eS4NCg0KDQoNCg0KDQoNCg0KRGFuDQoNCg0KRnJvbTogYXN0ZXJpc2stdXNl cnMgPGFzdGVyaXNrLXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbTxtYWlsdG86YXN0ZXJp c2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPj4gT24gQmVoYWxmIE9mIEdlb3JnZSBK
    b3NlcGgNClNlbnQ6IFdlZG5lc2RheSwgQXVndXN0IDEwLCAyMDIyIDg6NTggQU0NClRvOiBBc3Rl cmlzayBVc2VycyBNYWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxhc3Rl cmlzay11c2Vyc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vyc0BsaXN0cy5k aWdpdW0uY29tPj4NClN1YmplY3Q6IFJlOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gW0V4
    dGVybmFsXSBbRXh0ZXJuYWxdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQpT
    b3JyeSBmb3IgdGhlIGRlbGF5IGJ1dCB0aGlzIHR1cm5lZCBvdXQgdG8gYmUgYSBiaXQgbW9yZSBj b21wbGV4IHRoYW4gSSBhbnRpY2lwYXRlZC4NClRoZXJlIGFyZSByZXZpZXdzIHVwIG9uIEdlcnJp dCBmb3IgdGhlIDE2IGFuZCAxOCBicmFuY2hlcyB0aGF0IGFkZHJlc3MgdGhlIGlzc3VlcyBiZWxv dyBhcyB3ZWxsIGFzIGNsZWFuIHVwIHRoZSBpbXBsZW1lbnRhdGlvbiwgcGx1ZyBzb21lIG1lbW9y eSBsZWFrcywgZXRjLg0KMTY6IGh0dHBzOi8vZ2Vycml0LmFzdGVyaXNrLm9yZy9jL2FzdGVyaXNr LysvMTg4OTYNCjE4OiBodHRwczovL2dlcnJpdC5hc3Rlcmlzay5vcmcvYy9hc3Rlcmlzay8rLzE4
    ODk3DQoNCkkgYW50aWNpcGF0ZSB0aGVzZSB3aWxsIG1ha2UgaXQgaW50byB0aGUgbmV4dCBzZXQg b2YgcmVsZWFzZSBjYW5kaWRhdGVzIHdoaWNoIGFyZSBkdWUgdG8gYmUgY3V0IHRvbW9ycm93Lg0K
    DQpHaXZlIHRoZW0gYSB0cnkuDQoNCk9uIFdlZCwgQXVnIDMsIDIwMjIgYXQgMTo1MSBQTSBHZW9y Z2UgSm9zZXBoIDxnam9zZXBoQHNhbmdvbWEuY29tPG1haWx0bzpnam9zZXBoQHNhbmdvbWEuY29t Pj4gd3JvdGU6DQpMb29rcyBsaWtlIGl0J2xsIGJlIHRvbW9ycm93IGJlZm9yZSBJIGNhbiBnZXQg dGhlIHBhdGNoIHVwLiAgSSByYW4gaW50byBzb21lIHN0cmFuZ2UgaXNzdWVzLg0KDQpPbiBUdWUs IEF1ZyAyLCAyMDIyIGF0IDE6NDMgUE0gRGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRv OmRhbkBhbXRlbGNvLmNvbT4+IHdyb3RlOg0KVGhhbmsgeW91IEdlb3JnZQ0KDQpGcm9tOiBhc3Rl cmlzay11c2VycyA8YXN0ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0
    bzphc3Rlcmlzay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYgT2Yg R2VvcmdlIEpvc2VwaA0KU2VudDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgMjo0MCBQTQ0KVG86
    IEFzdGVyaXNrIFVzZXJzIE1haWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24g PGFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzQGxp c3RzLmRpZ2l1bS5jb20+Pg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJz XSBbRXh0ZXJuYWxdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQoNCg0KT24g VHVlLCBBdWcgMiwgMjAyMiBhdCAxOjM1IFBNIEdlb3JnZSBKb3NlcGggPGdqb3NlcGhAc2FuZ29t YS5jb208bWFpbHRvOmdqb3NlcGhAc2FuZ29tYS5jb20+PiB3cm90ZToNCg0KDQpPbiBUdWUsIEF1
    ZyAyLCAyMDIyIGF0IDE6MTMgUE0gRGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRh bkBhbXRlbGNvLmNvbT4+IHdyb3RlOg0KSXMgdGhlIGFsbG93X3JvdXRpbmcgc2V0dGluZyBvbiB0
    aGUgZ2VvbG9jYXRpb24gV2lraSBQcm9maWxlIGFsc28gbm90IGZ1bGx5IGltcGxlbWVudGVkPw0K
    DQpXZWxsLCA5OSUgb2YgdGhlIGNvZGUgaXMgdGhlcmUuICBUaGUgMSUgaXMgcGFyc2luZyB0aGUg Y29uZmlnIG9wdGlvbi4gIE5vdCBzdXJlIGhvdyBJIG1pc3NlZCB0aGF0Lg0KSSdsbCBoYXZlIGEg cGF0Y2ggdXAgZmlyc3QgdGhpbmcgaW4gdGhlIG1vcm5pbmcgVVRDLTYuDQpJJ2xsIGNhbGwgaXQg ImFsbG93X3VzZV9mb3Jfcm91dGluZyIgaW4gcHJvZmlsZS4NCg0KQWN0dWFsbHkganVzdCAiYWxs b3dfcm91dGluZ191c2UiDQoNCg0KDQpJbiB0aGUgY29kZSwgSSBzZWUgZ2VvbG9jYXRpb25fcm91
    dGluZyB1c2VkIGluc3RlYWQgb2YgYWxsb3dfcm91dGluZy4NCg0KVHJpZWQgYm90aCBhbmQgQXN0
    ZXJpc2sgaW5kaWNhdGVzIGl0IGNhbm5vdCBmaW5kIHN1aXRhYmxlIHNldHRpbmcgc28gaXQgZG9l c27igJl0IGNyZWF0ZSB0aGUgcHJvZmlsZSBvYmplY3QuDQoNCkRhbg0KDQpGcm9tOiBEYW4gQ3Jv cHANClNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCAyLCAyMDIyIDEwOjA0IEFNDQpUbzogQXN0ZXJpc2sg VXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2st dXNlcnNAbGlzdHMuZGlnaXVtLmNvbTxtYWlsdG86YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVt LmNvbT4+DQpTdWJqZWN0OiBSRTogW0V4dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNdIEdlbyBsb2Nh dGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQpUaGFuayB5b3UgR2VvcmdlLg0KDQpGcm9tOiBh c3Rlcmlzay11c2VycyA8YXN0ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1h aWx0bzphc3Rlcmlzay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYg T2YgR2VvcmdlIEpvc2VwaA0KU2VudDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgOTo1NyBBTQ0K
    VG86IEFzdGVyaXNrIFVzZXJzIE1haWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Np b24gPGFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJz QGxpc3RzLmRpZ2l1bS5jb20+Pg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVz ZXJzXSBHZW8gbG9jYXRpb24gMTguMTQuMC1yYzEgcXVlc3Rpb24NCg0KDQoNCk9uIFR1ZSwgQXVn IDIsIDIwMjIgYXQgODo0NiBBTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFu QGFtdGVsY28uY29tPj4gd3JvdGU6DQpJIGJlbGlldmUgSSBoYXZlIGV2ZXJ5dGhpbmcgY29uZmln dXJlZCBjb3JyZWN0bHksIGJ1dCBBc3RlcmlzayBpcyBjb21wbGFpbmluZyBhYm91dCBteSBjb25m aWd1cmF0aW9uDQoNCkl0IGlzIGNvbXBsYWluaW5nIGFib3V0IGNvbmZpZGVuY2Ugc2V0dGluZ3Mu DQoNCkZyb20gdGhlIEFzdGVyaXNrIEdlb2xvY2F0aW9uIEltcGxlbWVudGF0aW9uIFdpa2ksIEkg YmVsaWV2ZSBJIGhhdmUgdGhpcyBzZXQgY29ycmVjdGx5Lg0KDQoNClN1Yi1wYXJhbWV0ZXJzOg0K
    DQogICogICB2YWx1ZTogQSBwZXJjZW50YWdlIGluZGljYXRpbmcgdGhlIGNvbmZpZGVuY2Ugb3Ig InVua25vd24iLg0KICAqICAgcGRmOiAidW5rbm93biIsICJub3JtYWwiIG9yICJyZWN0YW5ndWxh ciINCkV4YW1wbGU6IGNvbmZpZGVuY2UgPSB2YWx1ZT04MCwgcGRmPXVua25vd24NCklmIG5vIGNv bmZpZGVuY2UgcGFyYW1ldGVyIGlzIHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgOTUlLg0KU2Vl IFJGQzc0NTk8aHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dlb2xv Y2F0aW9uK1JlZmVyZW5jZStJbmZvcm1hdGlvbiNHZW9sb2NhdGlvblJlZmVyZW5jZUluZm9ybWF0
    aW9uLXJmYzc0NTk+IGZvciB0aGUgZXhhY3QgZGVmaW5pdGlvbiBvZiB0aGlzIHBhcmFtZXRlci4N
    Cg0KDQpbMDgvMDIgMDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRpb25zLmM6
    IENvdWxkIG5vdCBmaW5kIG9wdGlvbiBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX2xvY18xJyBu YW1lZCAnY29uZmlkZW5jZScgYXQgbGluZSAxMiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJS
    T1JbNjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBhbiBvYmpl Y3Qgb2YgdHlwZSAnbG9jYXRpb24nIHdpdGggaWQgJ0lTX2xvY18xJyBmcm9tIGNvbmZpZ3VyYXRp b24gZmlsZSAnZ2VvbG9jYXRpb24uY29uZicNCg0KW0lTX2xvY18xXQ0KdHlwZSA9IGxvY2F0aW9u DQpmb3JtYXQgPSBjaXZpY0FkZHJlc3MNCmNvbmZpZGVuY2UgPSB2YWx1ZT05NSwgcGRmPXVua25v d24NCmxvY2F0aW9uX2luZm8gPSBjb3VudHJ5PVVTLEExPVdpc2NvbnNpbixBMz1NYWRpc29uDQps b2NhdGlvbl9pbmZvID0gSE5PPTQ4MDAsUkQ9TWFpbixTVFM9RHJpdmUsUEM9NTM3MDQNCg0KUmVt b3ZlIHRoZSBjb25maWRlbmNlIHBhcmFtIGZvciBub3cuICAgIEkgZG9jdW1lbnRlZCBpdCBiZWZv cmUgSSBpbXBsZW1lbnRlZCBpdC4gOikNCg0KDQoNCkFsc28gc2VlaW5nIHByb2JsZW1zIHdpdGgg bG9jYXRpb25fcmVmaW5lbWVudCBzZXR0aW5nLg0KQWdhaW4sIEkgYmVsaWV2ZSBteSBzZXR0aW5n IG1hdGNoZXMgd2hhdCBpcyBvbiB0aGUgQXN0ZXJpc2sgR2VvbG9jYXRpb24gSW1wbGVtZW50YXRp b24gd2lraS4NCg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSBjb25maWdfb3B0
    aW9ucy5jOiBDb3VsZCBub3QgZmluZCBvcHRpb24gc3VpdGFibGUgZm9yIGNhdGVnb3J5ICdJU19w cm9mXzIwJyBuYW1lZCAnbG9jYXRpb25fcmVmaW5lbWVudCcgYXQgbGluZSA1NiBvZg0KWzA4LzAy IDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQg bm90IGNyZWF0ZSBhbiBvYmplY3Qgb2YgdHlwZSAncHJvZmlsZScgd2l0aCBpZCAnSVNfcHJvZl8y MCcgZnJvbSBjb25maWd1cmF0aW9uIGZpbGUgJ2dlb2xvY2F0aW9uLmNvbmYnDQoNCltJU19wcm9m XzIwXQ0KdHlwZSA9IHByb2ZpbGUNCnByb2ZpbGVfYWN0aW9uID0gcHJlZmVyX2luY29taW5nDQpw aWRmX2VsZW1lbnQgPSBwZXJzb24NCnVzYWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dl ZD1ubw0KbG9jYXRpb25fcmVmZXJlbmNlID0gSVNfbG9jXzIyDQpsb2NhdGlvbl9yZWZpbmVtZW50
    ID0gUk9PTT0yOTINCmxvY2F0aW9uX3JlZmluZW1lbnQgPSBGTFI9MQ0KDQpQZmZmdC4gIEkgcmVu YW1lZCB0aGlzIHRvICJsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQiIHRvIGJldHRlciBtYXRjaCB0
    aGUgImxvY2F0aW9uX2luZm8iIHBhcmFtZXRlciBpbiB0aGUgTG9jYXRpb24gb2JqZWN0LiAgSSBm b3Jnb3QgdG8gcmVuYW1lIGl0IGluIHRoZSB3aWtpIGRvY3VtZW50YXRpb24uICBJZiB5b3UganVz dCBjaGFuZ2UgdGhlIG5hbWUgaXQgc2hvdWxkIHdvcmsuDQoNCg0KDQoNCg0KRGFuDQotLQ0KX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fDQotLSBCYW5kd2lkdGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkgaHR0cDov L3d3dy5hcGktZGlnaXRhbC5jb20gLS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJpc2sgY29t bXVuaXR5IGZvcnVtIGF0OiBodHRwczovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoNCk5ldyB0
    byBBc3Rlcmlzaz8gU3RhcnQgaGVyZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlzay5vcmcv d2lraS9kaXNwbGF5L0FTVC9HZXR0aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMgbWFpbGlu ZyBsaXN0DQpUbyBVTlNVQlNDUklCRSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAgIGh0dHA6
    Ly9saXN0cy5kaWdpdW0uY29tL21haWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMNCi0tDQpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18NCi0tIEJhbmR3aWR0aCBhbmQgQ29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRw Oi8vd3d3LmFwaS1kaWdpdGFsLmNvbSAtLQ0KDQpDaGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBj b21tdW5pdHkgZm9ydW0gYXQ6IGh0dHBzOi8vY29tbXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3
    IHRvIEFzdGVyaXNrPyBTdGFydCBoZXJlOg0KICAgICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9y Zy93aWtpL2Rpc3BsYXkvQVNUL0dldHRpbmcrU3RhcnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWls aW5nIGxpc3QNClRvIFVOU1VCU0NSSUJFIG9yIHVwZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0
    cDovL2xpc3RzLmRpZ2l1bS5jb20vbWFpbG1hbi9saXN0aW5mby9hc3Rlcmlzay11c2Vycw0KLS0N
    Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXw0KLS0gQmFuZHdpZHRoIGFuZCBDb2xvY2F0aW9uIFByb3ZpZGVkIGJ5IGh0
    dHA6Ly93d3cuYXBpLWRpZ2l0YWwuY29tIC0tDQoNCkNoZWNrIG91dCB0aGUgbmV3IEFzdGVyaXNr IGNvbW11bml0eSBmb3J1bSBhdDogaHR0cHM6Ly9jb21tdW5pdHkuYXN0ZXJpc2sub3JnLw0KDQpO
    ZXcgdG8gQXN0ZXJpc2s/IFN0YXJ0IGhlcmU6DQogICAgICBodHRwczovL3dpa2kuYXN0ZXJpc2su b3JnL3dpa2kvZGlzcGxheS9BU1QvR2V0dGluZytTdGFydGVkDQoNCmFzdGVyaXNrLXVzZXJzIG1h aWxpbmcgbGlzdA0KVG8gVU5TVUJTQ1JJQkUgb3IgdXBkYXRlIG9wdGlvbnMgdmlzaXQ6DQogICBo dHRwOi8vbGlzdHMuZGlnaXVtLmNvbS9tYWlsbWFuL2xpc3RpbmZvL2FzdGVyaXNrLXVzZXJzDQot LQ0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fDQotLSBCYW5kd2lkdGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkg aHR0cDovL3d3dy5hcGktZGlnaXRhbC5jb20gLS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJp c2sgY29tbXVuaXR5IGZvcnVtIGF0OiBodHRwczovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoN
    Ck5ldyB0byBBc3Rlcmlzaz8gU3RhcnQgaGVyZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlz ay5vcmcvd2lraS9kaXNwbGF5L0FTVC9HZXR0aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMg bWFpbGluZyBsaXN0DQpUbyBVTlNVQlNDUklCRSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAg IGh0dHA6Ly9saXN0cy5kaWdpdW0uY29tL21haWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMN
    Cg=

  • Underscore refers to variable inheritance. For usage you don’t include the underscore. I don’t think the code strips out the underscore when substituting or retrieving, so it could very well end up empty during that process.

  • VGhhbmsgeW91IEpvc2h1YQ0KDQpyYzIgcmVzb2x2ZWQgdGhlIGlzc3VlIEkgd2FzIHNlZWluZy4N
    Cg0KSG93ZXZlciwgaXQgc291bmRzIGxpa2UgaXQgd291bGQgYmUgYmVzdCBmb3IgbWUgdG8gY29u ZmlndXJlIHRoZSBsb2NhdGlvbl9pbmZvIHdpdGhvdXQgdGhlIGxlYWRpbmcgdW5kZXJzY29yZSBm b3IgdGhlIHZhcmlhYmxlIG5hbWUuDQoNCkRhbg0KDQpGcm9tOiBhc3Rlcmlzay11c2VycyA8YXN0
    ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPiBPbiBCZWhhbGYgT2YgSm9zaHVh IEMuIENvbHANClNlbnQ6IEZyaWRheSwgQXVndXN0IDEyLCAyMDIyIDg6MDQgQU0NClRvOiBBc3Rl cmlzayBVc2VycyBNYWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxhc3Rl cmlzay11c2Vyc0BsaXN0cy5kaWdpdW0uY29tPg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2Fz dGVyaXNrLXVzZXJzXSBbRXh0ZXJuYWxdIFtFeHRlcm5hbF0gW0V4dGVybmFsXSBbRXh0ZXJuYWxd IEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQpPbiBGcmksIEF1ZyAxMiwgMjAy MiBhdCAxMDowMSBBTSBHZW9yZ2UgSm9zZXBoIDxnam9zZXBoQHNhbmdvbWEuY29tPG1haWx0bzpn am9zZXBoQHNhbmdvbWEuY29tPj4gd3JvdGU6DQoNCg0KT24gVGh1LCBBdWcgMTEsIDIwMjIgYXQg ODo0MyBBTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFtdGVsY28uY29t Pj4gd3JvdGU6DQpUaGFuayB5b3UgR2VvcmdlLg0KDQpJIGFtIHN0aWxsIHJ1bm5pbmcgb24gYXN0
    ZXJpc2sgMTguMTQuMC1yYzEgYW5kIGhhdmUgbm90IHJldHJpZXZlZCB0aGUgcGF0Y2hlcyB5ZXQu DQpEaWQgdGhpcyB2ZXJzaW9uIGhhdmUgYSBidWcgd2l0aCB0aGUgdmFyaWFibGVzPw0KDQpJdCdz IHF1aXRlIHBvc3NpYmxlLiAgUkMyIHdhcyBqdXN0IHJlbGVhc2VkIHNvIHlvdSBzaG91bGQgdHJ5
    IHRoYXQuDQoNCknigJltIHRyeWluZyB0aGUgbG9jYXRpb25faW5mbyBhbmQgdmFyaWFibGVzIGlu IHRoZSBBTUkgT3JpZ2luYXRlIHlvdSByZWNvbW1lbmRlZCBhdCB0aGUgZW5kIG9mIHRoZSBwcmV2
    aW91cyBlLW1haWwuDQoNCkluIGNhc2UgaXTigJlzIG5vdCBjb21pbmcgdGhyb3VnaCBjb3JyZWN0
    bHkgdmlhIGUtbWFpbCwgdGhlIHZhcmlhYmxlIG5hbWVzIGFyZSBwcmVjZWVkZWQgd2l0aCBhIHNp bmdsZSB1bmRlcnNjb3JlIGluIHRoZSBBTUkgYW5kIGluIHRoZSBsb2NhdGlvbl9pbmZvIHZhbHVl cy4NCg0KDQpbSVNfbG9jXzVdDQp0eXBlID0gbG9jYXRpb24NCmZvcm1hdCA9IGNpdmljQWRkcmVz cw0KbG9jYXRpb25faW5mbyA9IGNvdW50cnk9JHtfTVlfR0VPX0NPVU5UUll9DQpsb2NhdGlvbl9p bmZvID0gQTE9JHtfTVlfR0VPX05BVElPTkFMX1NVQkRJVklTSU9OfQ0KbG9jYXRpb25faW5mbyA9
    IEEyPSR7X01ZX0dFT19OQVRTVUJ9DQpsb2NhdGlvbl9pbmZvID0gQTM9JHtfTVlfR0VPX0NJVFl9
    DQpsb2NhdGlvbl9pbmZvID0gSE5PPSR7X01ZX0dFT19ITk99DQpsb2NhdGlvbl9pbmZvID0gUkQ9
    JHtfTVlfR0VPX1JEfQ0KbG9jYXRpb25faW5mbyA9IFNUUz0ke19NWV9HRU9fU1RTfQ0KbG9jYXRp b25faW5mbyA9IFBDPSR7X01ZX0dFT19QQ30NCg0KVW5kZXJzY29yZSByZWZlcnMgdG8gdmFyaWFi bGUgaW5oZXJpdGFuY2UuIEZvciB1c2FnZSB5b3UgZG9uJ3QgaW5jbHVkZSB0aGUgdW5kZXJzY29y ZS4gSSBkb24ndCB0aGluayB0aGUgY29kZSBzdHJpcHMgb3V0IHRoZSB1bmRlcnNjb3JlIHdoZW4g c3Vic3RpdHV0aW5nIG9yIHJldHJpZXZpbmcsIHNvIGl0IGNvdWxkIHZlcnkgd2VsbCBlbmQgdXAg ZW1wdHkgZHVyaW5nIHRoYXQgcHJvY2Vzcy4NCg0KLS0NCkpvc2h1YSBDLiBDb2xwDQpBc3Rlcmlz ayBQcm9qZWN0IExlYWQNClNhbmdvbWEgVGVjaG5vbG9naWVzDQpDaGVjayB1cyBvdXQgYXQgd3d3
    LnNhbmdvbWEuY29tPGh0dHA6Ly93d3cuc2FuZ29tYS5jb20+IGFuZCB3d3cuYXN0ZXJpc2sub3Jn PGh0dHA6Ly93d3cuYXN0ZXJpc2sub3JnPg0K

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KcmMyIGRpZCBmaXggdGhlIGlzc3VlLg0KDQpJIGFtIG5vdyBh YmxlIHRvIHByb2dyYW0gdGhlIHZhcmlhYmxlcyBpbiB0aGUgbG9jYXRpb25faW5mbyBhbmQgcGFz cyB2YWx1ZXMgdmlhIHRoZSBBTUkgT3JpZ2luYXRlIHZhcmlhYmxlcy4NCg0KSXMgdGhlcmUgYSB3
    YXkgdG8gbWFrZSB0aGUgbG9jYXRpb25faW5mbyBvcHRpb25hbD8NCg0KT24gdGhlIHNhbWUgUEpT
    SVAgRW5kcG9pbnQsIHdlIG1heSBuZWVkIHRvIG9yaWdpbmF0ZSBjYWxscyB3aXRoIGRpZmZlcmVu dCByZXF1aXJlbWVudHMgZm9yIHRoZSBmaWVsZHMgcGFzc2VkLg0KRm9yIGV4YW1wbGUNCkRpYWxp bmcgYSBudW1iZXIgZm9yIGN1c3RvbWVyIEEsIG5lZWQgdG8gcGFzcyBjb3VudHJ5LCBBMSwgQTMs IEhOTywgUkQsIFNUUywgUEMsIEZMUiBhbmQgUk9PTS4NCkRpYWxpbmcgYSBudW1iZXIgZm9yIGN1
    c3RvbWVyIEIsIG5lZWQgdG8gcGFzcyBjb3VudHJ5LCBBMSwgQTIsIGFuZCBBMy4NCg0KSXMgaXQg cG9zc2libGUgdG8gcHJvZ3JhbSB0aGUgUHJvZmlsZS9Mb2NhdGlvbiB0byBzdXBwb3J0IHZhbHVl cyBmb3IgYWxsIHRoZSBzZXR0aW5ncywgYnV0IGhhdmUgQXN0ZXJpc2sgaWdub3JlIGFueSBzZXR0
    aW5ncyB3aGVyZSB0aGUgdmFsdWUgaXMgYmxhbms/DQoNClJpZ2h0IG5vdywgaWYgSSBoYXZlIEhO
    Tz0ke01ZR0VPX0ZMUn0gYnV0IHRoZSB2YXJpYWJsZSBNWUdFT19GTFIgaXMgbm90IHNldCwgaXQg c3RpbGwgcGFzc2VzIHRoZSBGTFIgaW4gdGhlIHNpcCBhcyA8Y2E6RkxSLz4NCg0KSSBiZWxpZXZl IGl04oCZcyBwZXJmZWN0bHkgZmluZSB0byBzZW5kIHRoZSA8Y2E6RkxSLz4NCk15IGZlYXIgaXMg c29tZSBzeXN0ZW0gbWF5IGludGVycHJldCBhIGJsYW5rIEZMUiBkaWZmZXJlbnRseSB0aGFuIHRo ZSBGTFIgbm90IGJlaW5nIHByZXNlbnQgYXQgYWxsLg0KDQpEYW4NCg0KRnJvbTogYXN0ZXJpc2st dXNlcnMgPGFzdGVyaXNrLXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbT4gT24gQmVoYWxm IE9mIEdlb3JnZSBKb3NlcGgNClNlbnQ6IFRodXJzZGF5LCBBdWd1c3QgMTEsIDIwMjIgMToyMiBQ
    TQ0KVG86IEFzdGVyaXNrIFVzZXJzIE1haWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1
    c3Npb24gPGFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5jb20+DQpTdWJqZWN0OiBSZTogW0V4
    dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNdIFtFeHRlcm5hbF0gW0V4dGVybmFsXSBbRXh0ZXJuYWxd IFtFeHRlcm5hbF0gR2VvIGxvY2F0aW9uIDE4LjE0LjAtcmMxIHF1ZXN0aW9uDQoNCg0KDQpPbiBU
    aHUsIEF1ZyAxMSwgMjAyMiBhdCA4OjQzIEFNIERhbiBDcm9wcCA8ZGFuQGFtdGVsY28uY29tPG1h aWx0bzpkYW5AYW10ZWxjby5jb20+PiB3cm90ZToNClRoYW5rIHlvdSBHZW9yZ2UuDQoNCkkgYW0g c3RpbGwgcnVubmluZyBvbiBhc3RlcmlzayAxOC4xNC4wLXJjMSBhbmQgaGF2ZSBub3QgcmV0cmll dmVkIHRoZSBwYXRjaGVzIHlldC4NCkRpZCB0aGlzIHZlcnNpb24gaGF2ZSBhIGJ1ZyB3aXRoIHRo ZSB2YXJpYWJsZXM/DQoNCkl0J3MgcXVpdGUgcG9zc2libGUuICBSQzIgd2FzIGp1c3QgcmVsZWFz ZWQgc28geW91IHNob3VsZCB0cnkgdGhhdC4NCg0KSeKAmW0gdHJ5aW5nIHRoZSBsb2NhdGlvbl9p bmZvIGFuZCB2YXJpYWJsZXMgaW4gdGhlIEFNSSBPcmlnaW5hdGUgeW91IHJlY29tbWVuZGVkIGF0
    IHRoZSBlbmQgb2YgdGhlIHByZXZpb3VzIGUtbWFpbC4NCg0KSW4gY2FzZSBpdOKAmXMgbm90IGNv bWluZyB0aHJvdWdoIGNvcnJlY3RseSB2aWEgZS1tYWlsLCB0aGUgdmFyaWFibGUgbmFtZXMgYXJl IHByZWNlZWRlZCB3aXRoIGEgc2luZ2xlIHVuZGVyc2NvcmUgaW4gdGhlIEFNSSBhbmQgaW4gdGhl IGxvY2F0aW9uX2luZm8gdmFsdWVzLg0KDQoNCltJU19sb2NfNV0NCnR5cGUgPSBsb2NhdGlvbg0K
    Zm9ybWF0ID0gY2l2aWNBZGRyZXNzDQpsb2NhdGlvbl9pbmZvID0gY291bnRyeT0ke19NWV9HRU9f Q09VTlRSWX0NCmxvY2F0aW9uX2luZm8gPSBBMT0ke19NWV9HRU9fTkFUSU9OQUxfU1VCRElWSVNJ
    T059DQpsb2NhdGlvbl9pbmZvID0gQTI9JHtfTVlfR0VPX05BVFNVQn0NCmxvY2F0aW9uX2luZm8g PSBBMz0ke19NWV9HRU9fQ0lUWX0NCmxvY2F0aW9uX2luZm8gPSBITk89JHtfTVlfR0VPX0hOT30N
    CmxvY2F0aW9uX2luZm8gPSBSRD0ke19NWV9HRU9fUkR9DQpsb2NhdGlvbl9pbmZvID0gU1RTPSR7
    X01ZX0dFT19TVFN9DQpsb2NhdGlvbl9pbmZvID0gUEM9JHtfTVlfR0VPX1BDfQ0KDQpbSVNfcHJv Zl85XQ0KdHlwZSA9IHByb2ZpbGUNCmxvY2F0aW9uX3JlZmVyZW5jZSA9IElTX2xvY181DQpwaWRm X2VsZW1lbnQgPSBkZXZpY2UNCnByb2ZpbGVfYWN0aW9uID0gZGlzY2FyZF9pbmNvbWluZw0KdXNh Z2VfcnVsZXMgPSByZXRyYW5zbWlzc2lvbl9hbGxvd2VkPXllcw0KDQoNClsxOTIuMTY4LjMzLjMx XQ0KdHlwZSA9IGVuZHBvaW50DQpjb250ZXh0ID0gSVMNCnRyYW5zcG9ydCA9IHRyYW5zcG9ydDEN
    CmF1dGggPSBhdXRoMTQNCmFvcnMgPSAxOTIuMTY4LjMzLjMxDQphY2NvdW50Y29kZSA9IDIwDQpk dG1mX21vZGUgPSBpbmJhbmQNCmRldmljZV9zdGF0ZV9idXN5X2F0ID0gMTYwMA0KbW9oX3Bhc3N0
    aHJvdWdoID0gbm8NCmlkZW50aWZ5X2J5ID0gdXNlcm5hbWUsaXAsaGVhZGVyDQpkaXNhbGxvdyA9
    IGFsbA0KYWxsb3cgPSB1bGF3DQphY2wgPSBhY2wxDQpnZW9sb2NfaW5jb21pbmdfY2FsbF9wcm9m aWxlID0gSVNfcHJvZl83DQpnZW9sb2Nfb3V0Z29pbmdfY2FsbF9wcm9maWxlID0gSVNfcHJvZl85
    DQoNCg0KDQpVc2luZyBhIHRlbG5ldCBzZXNzaW9uLCBJIGNvbm5lY3QgdXAgdmlhIEFNSSBhbmQg bG9naW4uICBUaGVuIEkgYXR0ZW1wdCB0byBPcmlnaW5hdGUuICBUaGUgY2FsbCBnb2VzIHRocm91
    Z2gsIGJ1dCBub25lIG9mIHRoZSBsb2NhdGlvbl9pbmZvIHNldHRpbmdzIGFyZSBiZWluZyB1cGRh dGVkDQoNCkFjdGlvbjogT3JpZ2luYXRlDQpDaGFubmVsOiBQSlNJUC8xMjM0QDE5Mi4xNjguMzMu MzE8bWFpbHRvOjEyMzRAMTkyLjE2OC4zMy4zMT4NCkV4dGVuOiBjcmVhdGVjYWxsDQpDb250ZXh0
    OiBJUw0KUHJpb3JpdHk6IDENClRpbWVvdXQ6IDYwMDAwDQpDYWxsZXJJRDogSm9obiBTbWl0aCA8
    ODAwNTU1MTIzND4NClZhcmlhYmxlOiBfTVlfR0VPX0NPVU5UUlk9VVMsX01ZX0dFT19OQVRTVUI9
    RmxvcmlkYSxfTVlfR0VPX0NJVFk9T3JsYW5kbyxfTVlfR0VPX0hOTz0xMDAsX01ZX0dFT19SRD1N
    YWluLF9NWV9HRU9fU1RTPVN0cmVldCxDQUxMRVJJRChudW0tcHJlcyk9YWxsb3dlZF9wYXNzZWRf c2NyZWVuDQpBc3luYzogdHJ1ZQ0KDQoNClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVHWzE3NzRd IG1hbmFnZXIuYzogUnVubmluZyBhY3Rpb24gJ09yaWdpbmF0ZScNClswOC8xMCAxNTowNDoxMi40
    NzBdIERFQlVHWzE5MDddIGNoYW5fcGpzaXAuYzogIDEyMzRAMTkyLjE2OC4zMy4zMTxtYWlsdG86
    MTIzNEAxOTIuMTY4LjMzLjMxPiBUb3BvbG9neTogIDwwOmF1ZGlvLTA6YXVkaW86c2VuZHJlY3Yg KHNsaW4pPg0KWzA4LzEwIDE1OjA0OjEyLjQ3MF0gREVCVUdbMTYxNF0gY2hhbl9wanNpcC5jOiAg MTIzNEAxOTIuMTY4LjMzLjMxPG1haWx0bzoxMjM0QDE5Mi4xNjguMzMuMzE+DQpbMDgvMTAgMTU6
    MDQ6MTIuNDcwXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgMTkyLjE2OC4zMy4z MSAxMjM0IFRvcG9sb2d5OiAgPDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAoc2xpbik+DQpbMDgv MTAgMTU6MDQ6MTIuNDcwXSBERUJVR1sxNjE0XSBkc3AuYzogU2V0dXAgdG9uZSAxMTAwIEh6LCA1
    MDAgbXMsIGJsb2NrX3NpemU9MTYwLCBoaXRzX3JlcXVpcmVkPTIxDQpbMDgvMTAgMTU6MDQ6MTIu NDcwXSBERUJVR1sxNjE0XSBkc3AuYzogU2V0dXAgdG9uZSAyMTAwIEh6LCAyNjAwIG1zLCBibG9j a19zaXplPTE2MCwgaGl0c19yZXF1aXJlZD0xMTYNClswOC8xMCAxNTowNDoxMi40NzBdIERFQlVH
    WzE2MTRdIGNoYW5fcGpzaXAuYzogIDE5Mi4xNjguMzMuMzENClswOC8xMCAxNTowNDoxMi40NzBd IERFQlVHWzE2MTRdIGNoYW5fcGpzaXAuYzogIERpcmVjdCBtZWRpYSBubyBnbGFyZSBtaXRpZ2F0
    aW9uDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi9w anNpcF9zZXNzaW9uX2NhcHMuYzogJzE5Mi4xNjguMzMuMzEnIENhcHMgZm9yIG91dGdvaW5nIGF1
    ZGlvIGNhbGwgd2l0aCBwcmVmICdyZW1vdGVfbWVyZ2UnIC0gcmVtb3RlOiAoc2xpbikgbG9jYWw6
    ICh1bGF3KSBqb2ludDogKHVsYXcpDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSBy ZXNfcGpzaXBfc2Vzc2lvbi5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gY2hh bl9wanNpcC5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbl9wanNpcC5j OiAgMTkyLjE2OC4zMy4zMQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbm5l bF9pbnRlcm5hbF9hcGkuYzogIDxpbml0aWFsaXppbmc+OiBGb3JtYXRzOiAobm9uZSkNClswOC8x MCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDddIGNoYW5uZWxfaW50ZXJuYWxfYXBpLmM6ICBDaGFu bmVsIGlzIGJlaW5nIGluaXRpYWxpemVkIG9yIGRlc3Ryb3llZA0KWzA4LzEwIDE1OjA0OjEyLjQ3
    MV0gREVCVUdbMTkwN10gc3Rhc2lzLmM6IENyZWF0aW5nIHRvcGljLiBuYW1lOiBjaGFubmVsOjE2
    NjAxNjE4NTIuOCwgZGV0YWlsOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gc3Rh c2lzLmM6IFRvcGljICdjaGFubmVsOjE2NjAxNjE4NTIuOCc6IDB4N2YxOWMwMDIzMjEwIGNyZWF0
    ZWQNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDddIGNoYW5uZWwuYzogQ2hhbm5lbCAw eDdmMTljMDAwNDhkMCAnUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNScgYWxsb2NhdGVkDQpb MDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxOTA3XSBjaGFuX3Bqc2lwLmM6ICBUb3BvbG9neTog IDwwOmF1ZGlvLTA6YXVkaW86c2VuZHJlY3YgKHVsYXcpPiBGb3JtYXRzOiAodWxhdykNClswOC8x MCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDddIGNoYW5fcGpzaXAuYzogIENvbXBhdGlibGU/IHll cw0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbm5lbF9pbnRlcm5hbF9hcGku YzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IE11bHRpc3RyZWFtRm9ybWF0czogKHVs YXcpDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxOTA3XSBjaGFubmVsX2ludGVybmFsX2Fw aS5jOiAgU2V0IG5hdGl2ZSBmb3JtYXRzIGJ1dCBub3QgdG9wb2xvZ3kNClswOC8xMCAxNTowNDox Mi40NzFdIERFQlVHWzE5MDddIGNoYW5uZWxfaW50ZXJuYWxfYXBpLmM6ICBQSlNJUC8xOTIuMTY4
    LjMzLjMxLTAwMDAwMDA1OiAgPDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdyk+DQpbMDgv MTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxOTA3XSBjaGFubmVsX2ludGVybmFsX2FwaS5jOiAgVXNl ZCBwcm92aWRlZCB0b3BvbG9neQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hh bl9wanNpcC5jOg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTkwN10gY2hhbl9wanNpcC5j OiAgQ2hhbm5lbDogUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEy LjQ3MV0gREVCVUdbMTYyNl0gbWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6
    IE5ld2NoYW5uZWxeTQ0KUHJpdmlsZWdlOiBjYWxsLGFsbF5NDQpDaGFubmVsOiBQSlNJUC8xOTIu MTY4LjMzLjMxLTAwMDAwMDA1Xk0NCkNoYW5uZWxTdGF0ZTogMF5NDQpDaGFubmVsU3RhdGVEZXNj OiBEb3duXk0NCkNhbGxlcklETnVtOiA8dW5rbm93bj5eTQ0KQ2FsbGVySUROYW1lOiA8dW5rbm93
    bj5eTQ0KQ29ubmVjdGVkTGluZU51bTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExpbmVOYW1lOiA8
    dW5rbm93bj5eTQ0KTGFuZ3VhZ2U6IGVuXk0NCkFjY291bnRDb2RlOiAyMF5NDQpDb250ZXh0OiBJ
    U15NDQpFeHRlbjogc15NDQpQcmlvcml0eTogMV5NDQpVbmlxdWVpZDogMTY2MDE2MTg1Mi44Xk0N
    CkxpbmtlZGlkOiAxNjYwMTYxODUyLjheTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVC
    VUdbMTU2OV0gdGhyZWFkcG9vbC5jOiBJbmNyZWFzaW5nIHRocmVhZHBvb2wgc3Rhc2lzL3Bvb2wn cyBzaXplIGJ5IDENClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDhdIGNoYW5fcGpzaXAu YzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUgVG9wb2xvZ3k6ICA8MDphdWRpby0wOmF1
    ZGlvOnNlbmRyZWN2ICh1bGF3KT4NClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE5MDhdIGNo YW5fcGpzaXAuYzogICdjYWxsJyB0YXNrIHB1c2hlZA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVC
    VUdbMTc3NF0gbWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2NoYW5u ZWxeTQ0KUHJpdmlsZWdlOiBjYWxsLGFsbF5NDQpDaGFubmVsOiBQSlNJUC8xOTIuMTY4LjMzLjMx LTAwMDAwMDA1Xk0NCkNoYW5uZWxTdGF0ZTogMF5NDQpDaGFubmVsU3RhdGVEZXNjOiBEb3duXk0N
    CkNhbGxlcklETnVtOiA8dW5rbm93bj5eTQ0KQ2FsbGVySUROYW1lOiA8dW5rbm93bj5eTQ0KQ29u bmVjdGVkTGluZU51bTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExpbmVOYW1lOiA8dW5rbm93bj5e TQ0KTGFuZ3VhZ2U6IGVuXk0NCkFjY291bnRDb2RlOiAyMF5NDQpDb250ZXh0OiBJU15NDQpFeHRl bjogc15NDQpQcmlvcml0eTogMV5NDQpVbmlxdWVpZDogMTY2MDE2MTg1Mi44Xk0NCkxpbmtlZGlk OiAxNjYwMTYxODUyLjheTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTc3NF0g bWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2V4dGVuXk0NClByaXZp bGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAw MDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVy SUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRM
    aW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpMYW5n dWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBzXk0N
    ClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2NjAx NjE4NTIuOF5NDQpFeHRlbnNpb246IHNeTQ0KQXBwbGljYXRpb246IEFwcERpYWwyXk0NCkFwcERh dGE6IChPdXRnb2luZyBMaW5lKV5NDQpeTQ0KDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sx Nzc0XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6DQpFdmVudDogVmFyU2V0Xk0NClBy aXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAw MDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2Fs bGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0
    ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpM
    YW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBz Xk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlua2VkaWQ6IDE2
    NjAxNjE4NTIuOF5NDQpWYXJpYWJsZTogX01ZX0dFT19TVFNeTQ0KVmFsdWU6IFN0cmVldF5NDQpe TQ0KDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNzc0XSBtYW5hZ2VyLmM6IEV4YW1pbmlu ZyBBTUkgZXZlbnQ6DQpFdmVudDogVmFyU2V0Xk0NClByaXZpbGVnZTogZGlhbHBsYW4sYWxsXk0N
    CkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAw Xk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVySUROdW06IDx1bmtub3duPl5NDQpD
    YWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0K
    Q2FsbGVySUROYW1lOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU51bTogPHVua25vd24+Xk0N
    CkNvbm5lY3RlZExpbmVOYW1lOiA8dW5rbm93bj5eTQ0KTGFuZ3VhZ2U6IGVuXk0NCkFjY291bnRD
    b2RlOiAyMF5NDQpDb250ZXh0OiBJU15NDQpFeHRlbjogc15NDQpQcmlvcml0eTogMV5NDQpVbmlx dWVpZDogMTY2MDE2MTg1Mi44Xk0NCkxpbmtlZGlkOiAxNjYwMTYxODUyLjheTQ0KVmFyaWFibGU6
    IF9NWV9HRU9fUkReTQ0KVmFsdWU6IE1haW5eTQ0KXk0NCg0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0g REVCVUdbMTYyNl0gbWFuYWdlci5jOiBFeGFtaW5pbmcgQU1JIGV2ZW50Og0KRXZlbnQ6IE5ld2V4
    dGVuXk0NClByaXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjgu MzMuMzEtMDAwMDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERv d25eTQ0KQ2FsbGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5N
    DQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtu b3duPl5NDQpMYW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0N
    CkV4dGVuOiBzXk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0KTGlu a2VkaWQ6IDE2NjAxNjE4NTIuOF5NDQpFeHRlbnNpb246IHNeTQ0KQXBwbGljYXRpb246IEFwcERp YWwyXk0NCkFwcERhdGE6IChPdXRnb2luZyBMaW5lKV5NDQpeTQ0KDQpbMDgvMTAgMTU6MDQ6MTIu NDcxXSBERUJVR1sxNjI2XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6DQpFdmVudDog VmFyU2V0Xk0NClByaXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4x NjguMzMuMzEtMDAwMDAwMDVeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6
    IERvd25eTQ0KQ2FsbGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3du Pl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1
    bmtub3duPl5NDQpMYW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElT
    Xk0NCkV4dGVuOiBzXk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwMTYxODUyLjheTQ0K
    TGlua2VkaWQ6IDE2NjAxNjE4NTIuOF5NDQpWYXJpYWJsZTogX01ZX0dFT19TVFNeTQ0KVmFsdWU6
    IFN0cmVldF5NDQpeTQ0KDQrigKYuDQoNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRd IGNoYW5fcGpzaXAuYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUgVG9wb2xvZ3k6ICA8
    MDphdWRpby0wOmF1ZGlvOnNlbmRyZWN2ICh1bGF3KT4NClswOC8xMCAxNTowNDoxMi40NzFdIERF
    QlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAw MDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5j OiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVC
    VUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAw MDU6IFByb2Nlc3Npbmcgc3RyZWFtcw0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0g cmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFByb2Nl c3Npbmcgc3RyZWFtIDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxhdykNClswOC8xMCAxNTow NDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4
    LjMzLjMxLTAwMDAwMDA1IEFkZGluZyBwb3NpdGlvbiAwDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBE
    RUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgQ3JlYXRpbmcgbmV3IG1lZGlhIHNlc3Np b24NClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6
    ICBTZXR0aW5nIG1lZGlhIHNlc3Npb24gYXMgZGVmYXVsdCBmb3IgYXVkaW8NClswOC8xMCAxNTow NDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBEb25lDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNSBTdHJlYW06IDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAodWxh dykNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZHBfcnRwLmM6
    ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1IFR5cGU6IGF1ZGlvIDA6YXVkaW8tMDphdWRp bzpzZW5kcmVjdiAodWxhdykNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19w anNpcF9zZHBfcnRwLmM6IFRyYW5zcG9ydCB0cmFuc3BvcnQxIGJvdW5kIHRvIDAuMC4wLjA8aHR0
    cDovLzAuMC4wLjA+OiBVc2luZyBpdCBmb3IgUlRQIG1lZGlhLg0KWzA4LzEwIDE1OjA0OjEyLjQ3
    MV0gREVCVUdbMTYxNF0gcnRwX2VuZ2luZS5jOiBVc2luZyBlbmdpbmUgJ2FzdGVyaXNrJyBmb3Ig UlRQIGluc3RhbmNlICcweDdmMTljODBjM2JmMCcNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVH
    WzE2MTRdIHJlc19ydHBfYXN0ZXJpc2suYzogKDB4N2YxOWM4MGMzYmYwKSBSVFAgYWxsb2NhdGVk IHBvcnQgMTcyMTQNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19ydHBfYXN0
    ZXJpc2suYzogKDB4N2YxOWM4MGMzYmYwKSBJQ0UgY3JlYXRpbmcgc2Vzc2lvbiAwLjAuMC4wOjE3
    MjE0PGh0dHA6Ly8wLjAuMC4wOjE3MjE0PiAoMTcyMTQpDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBE
    RUJVR1sxNjE0XSByZXNfcnRwX2FzdGVyaXNrLmM6ICgweDdmMTljODBjM2JmMCkgSUNFIGNyZWF0
    ZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3J0cF9hc3Rlcmlzay5jOiAo MHg3ZjE5YzgwYzNiZjApIElDRSBhZGQgc3lzdGVtIGNhbmRpZGF0ZXMNClswOC8xMCAxNTowNDox Mi40NzFdIERFQlVHWzE2MTRdIHJlc19ydHBfYXN0ZXJpc2suYzogKDB4N2YxOWM4MGMzYmYwKSBJ
    Q0UgYWRkIGNhbmRpZGF0ZTogMTkyLjE2OC4zMy4zMzoxNzIxNDxodHRwOi8vMTkyLjE2OC4zMy4z MzoxNzIxND4sIDIxMzA3MDY0MzENClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJ0
    cF9lbmdpbmUuYzogUlRQIGluc3RhbmNlICcweDdmMTljODBjM2JmMCcgaXMgc2V0dXAgYW5kIHJl YWR5IHRvIGdvDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcnRwX2FzdGVy aXNrLmM6ICgweDdmMTljODBjM2JmMCkgSUNFIHN0b3BwZWQNClswOC8xMCAxNTowNDoxMi40NzFd IERFQlVHWzE2MTRdIHJlc19ydHBfYXN0ZXJpc2suYzogKDB4N2YxOWM4MGMzYmYwKSBSVENQIHNl dHVwIG9uIFJUUCBpbnN0YW5jZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVz X3Bqc2lwX3NkcF9ydHAuYzogIFJDOiAxDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0
    XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgSGFuZGxlZA0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVC
    VUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAw MDU6IFN0cmVhbSAwOmF1ZGlvLTA6YXVkaW86c2VuZHJlY3YgKHVsYXcpIGFkZGVkDQpbMDgvMTAg MTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTky LjE2OC4zMy4zMS0wMDAwMDAwNTogRG9uZSB3aXRoIDA6YXVkaW8tMDphdWRpbzpzZW5kcmVjdiAo dWxhdykNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9u LmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1OiBBZGRpbmcgYnVuZGxlIGdyb3VwcyAo aWYgYXZhaWxhYmxlKQ0KWzA4LzEwIDE1OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lw X3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IENvcHlpbmcgY29ubmVj dGlvbiBkZXRhaWxzDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBf c2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogUHJvY2Vzc2luZyBtZWRp YSAwDQpbMDgvMTAgMTU6MDQ6MTIuNDcxXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5j OiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogTWVkaWEgMCByZXNldA0KWzA4LzEwIDE1
    OjA0OjEyLjQ3MV0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4x NjguMzMuMzEtMDAwMDAwMDUNClswOC8xMCAxNTowNDoxMi40NzFdIERFQlVHWzE2MTRdIHJlc19w anNpcF9zZXNzaW9uLmM6DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpz aXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogTWV0aG9kIGlzIElO
    VklURQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0
    aW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcy XSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIFBKU0lQLzE5Mi4xNjguMzMu MzEtMDAwMDAwMDU6IFRoZXJlIHdhcyBubyBnZW9sb2MgZGF0YXN0b3JlDQpbMDgvMTAgMTU6MDQ6
    MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzogIFBKU0lQLzE5Mi4x NjguMzMuMzEtMDAwMDAwMDU6IFRoZXJlIGFyZSBubyBnZW9sb2MgcHJvZmlsZXMgb24gdGhpcyBj aGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9j YXRpb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDU6IFRoZXJlIGFyZSBub3cgMSBn ZW9sb2MgcHJvZmlsZXMgdG8gYmUgc2VudA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYx NF0gcmVzX3Bqc2lwX2dlb2xvY2F0aW9uLmM6ICBlcDogJ0lTX3Byb2ZfOScgRWZmZWN0aXZlTG9j OiBjb3VudHJ5PSR7X01ZX0dFT19DT1VOVFJZfSxBMT0ke19NWV9HRU9fTkFUSU9OQUxfU1VCRElW
    SVNJT059LEEyPSR7X01ZX0dFT19OQVRTVUJ9LEEzPSR7X01ZX0dFT19DSVRZfSxITk89JHtfTVlf R0VPX0hOT30sUkQ9JHtfTVlfR0VPX1JEfSxTVFM9JHtfTVlcDQpfR0VPX1NUU30sUEM9JHtfTVlf R0VPX1BDfQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX2dlb2xv Y2F0aW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIu NDcyXSBERUJVR1sxNjE0XSByZXNfZ2VvbG9jYXRpb24vZ2VvbG9jX2Vwcm9maWxlLmM6ICBQSlNJ
    UC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0
    XSByZXNfZ2VvbG9jYXRpb24vZ2VvbG9jX2Vwcm9maWxlLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMx LTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVz LmM6IFZhcmlhYmxlIF9NWV9HRU9fQ09VTlRSWSByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpb MDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxl IF9NWV9HRU9fQ09VTlRSWSByZXN1bHQgaXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEy LjQ3Ml0gREVCVUdbMTYxNF0gcGJ4X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX05BVElP
    TkFMX1NVQkRJVklTSU9OIHJlc3VsdCBpcyAnJyBmcm9tIGNoYW5uZWwNClswOC8xMCAxNTowNDox Mi40NzJdIERFQlVHWzE2MTRdIHBieF92YXJpYWJsZXMuYzogVmFyaWFibGUgX01ZX0dFT19OQVRJ
    T05BTF9TVUJESVZJU0lPTiByZXN1bHQgaXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEy LjQ3Ml0gREVCVUdbMTYxNF0gcGJ4X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX05BVFNV
    QiByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sx NjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fTkFUU1VCIHJlc3VsdCBpcyAn JyBmcm9tIGhlYWRwDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFi bGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fQ0lUWSByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpb MDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxl IF9NWV9HRU9fQ0lUWSByZXN1bHQgaXMgJycgZnJvbSBoZWFkcA0KWzA4LzEwIDE1OjA0OjEyLjQ3
    Ml0gREVCVUdbMTYxNF0gcGJ4X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX0hOTyByZXN1
    bHQgaXMgJycgZnJvbSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBw YnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fSE5PIHJlc3VsdCBpcyAnJyBmcm9tIGhl YWRwDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZh cmlhYmxlIF9NWV9HRU9fUkQgcmVzdWx0IGlzICcnIGZyb20gY2hhbm5lbA0KWzA4LzEwIDE1OjA0
    OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcGJ4X3ZhcmlhYmxlcy5jOiBWYXJpYWJsZSBfTVlfR0VPX1JE
    IHJlc3VsdCBpcyAnJyBmcm9tIGhlYWRwDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0
    XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fU1RTIHJlc3VsdCBpcyAnJyBmcm9t IGNoYW5uZWwNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHBieF92YXJpYWJsZXMu YzogVmFyaWFibGUgX01ZX0dFT19TVFMgcmVzdWx0IGlzICcnIGZyb20gaGVhZHANClswOC8xMCAx NTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHBieF92YXJpYWJsZXMuYzogVmFyaWFibGUgX01ZX0dF
    T19QQyByZXN1bHQgaXMgJycgZnJvbSBjaGFubmVsDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJV
    R1sxNjE0XSBwYnhfdmFyaWFibGVzLmM6IFZhcmlhYmxlIF9NWV9HRU9fUEMgcmVzdWx0IGlzICcn IGZyb20gaGVhZHANClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19nZW9sb2Nh dGlvbi9nZW9sb2NfY2l2aWNhZGRyLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpb MDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfZ2VvbG9jYXRpb24vZ2VvbG9jX2Np dmljYWRkci5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogRG9uZQ0KWzA4LzEwIDE1
    OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX2dlb2xvY2F0aW9uL2dlb2xvY19lcHJvZmlsZS5j OiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogRG9uZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3
    Ml0gREVCVUdbMTYxNF0gcmVzX2dlb2xvY2F0aW9uL2dlb2xvY19lcHJvZmlsZS5jOiAgUEpTSVAv MTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogRG9uZQ0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdb MTYxNF0gcmVzX3Bqc2lwX2dlb2xvY2F0aW9uLmM6ICBib2R5OiAweDdmMTljODA0ODM5MCAwDQpb MDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfZ2VvbG9jYXRpb24uYzog IGNpZDogJ3doandvQDE5Mi4xNjguMzMuMzM8bWFpbHRvOndoandvQDE5Mi4xNjguMzMuMzM+JyB1
    cmk6ICdjaWQ6d2hqd29AMTkyLjE2OC4zMy4zMzxtYWlsdG86Y2lkJTNBd2hqd29AMTkyLjE2OC4z My4zMz4nIHBpZGZfaW5kZXg6IDANClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJl c19wanNpcF9nZW9sb2NhdGlvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogUElE
    Ri1MTyBhZGRlZCB3aXRoIGNpZCAnd2hqd29AMTkyLjE2OC4zMy4zMzxtYWlsdG86d2hqd29AMTky LjE2OC4zMy4zMz4nDQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBf Z2VvbG9jYXRpb24uYzogIGl4OiAwIG9mIDEgTG9jUmVmOiBjaWQ6d2hqd29AMTkyLjE2OC4zMy4z MzxtYWlsdG86Y2lkJTNBd2hqd29AMTkyLjE2OC4zMy4zMz4NClswOC8xMCAxNTowNDoxMi40NzJd IERFQlVHWzE2MTRdIHJlc19wanNpcF9nZW9sb2NhdGlvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4z MS0wMDAwMDAwNTogR2VvbG9jYXRpb246IDxjaWQ6d2hqd29AMTkyLjE2OC4zMy4zMzxtYWlsdG86
    Y2lkJTNBd2hqd29AMTkyLjE2OC4zMy4zMz4+DQpbMDgvMTAgMTU6MDQ6MTIuNDcyXSBERUJVR1sx NjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0K
    WzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwL3Bqc2lwX3Jlc29sdmVy LmM6IFBlcmZvcm1pbmcgU0lQIEROUyByZXNvbHV0aW9uIG9mIHRhcmdldCAnMTkyLjE2OC4zMy4z MScNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcC9wanNpcF9yZXNv bHZlci5jOiBUcmFuc3BvcnQgdHlwZSBmb3IgdGFyZ2V0ICcxOTIuMTY4LjMzLjMxJyBpcyAnVURQ
    IHRyYW5zcG9ydCcNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcC9w anNpcF9yZXNvbHZlci5jOiBUYXJnZXQgJzE5Mi4xNjguMzMuMzEnIGlzIGFuIElQIGFkZHJlc3Ms IHNraXBwaW5nIHJlc29sdXRpb24NClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJl c19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1IEV2ZW50OiBU
    U1hfU1RBVEUgIEludiBTdGF0ZTogQ0FMTElORw0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdb MTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTog U291cmNlIG9mIHRyYW5zYWN0aW9uIHN0YXRlIGNoYW5nZSBpcyBUWF9NU0cNClswOC8xMCAxNTow NDoxMi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6DQpbMDgvMTAgMTU6MDQ6
    MTIuNDcyXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgUEpTSVAvMTkyLjE2OC4z My4zMS0wMDAwMDAwNSBUU1ggU3RhdGU6IENhbGxpbmcgIEludiBTdGF0ZTogQ0FMTElORw0KWzA4
    LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIE5vdGhp bmcgZGVsYXllZA0KWzA4LzEwIDE1OjA0OjEyLjQ3Ml0gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nl c3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDUgVFNYIFN0YXRlOiBDYWxsaW5n ICBJbnYgU3RhdGU6IENBTExJTkcNClswOC8xMCAxNTowNDoxMi40NzJdIERFQlVHWzE2MTRdIHJl c19wanNpcF9zZXNzaW9uLmM6ICBUb3BvbG9neTogUGVuZGluZzogIDwwOmF1ZGlvLTA6YXVkaW86
    c2VuZHJlY3YgKHVsYXcpPiAgQWN0aXZlOiAobnVsbCB0b3BvbG9neSkNClswOC8xMCAxNTowNDox Mi40NzJdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6DQpbMDgvMTAgMTU6MDQ6MTIu NDcyXSBERUJVR1sxNjE0XSBjaGFuX3Bqc2lwLmM6ICBSQzogMA0KWzA4LzEwIDE1OjA0OjEyLjQ3
    M10gREVCVUdbMTYxM10gcmVzX3Bqc2lwL3Bqc2lwX2Rpc3RyaWJ1dG9yLmM6IFNlYXJjaGluZyBm b3Igc2VyaWFsaXplciBhc3NvY2lhdGVkIHdpdGggZGlhbG9nIGRsZzB4N2YxOWM4MGEyNzk4IGZv ciBSZXNwb25zZSBtc2cgMTAwL0lOVklURS9jc2VxPTIxMTMxIChyZGF0YTB4N2YxOWI0MDAxNzY4
    KQ0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdbMTYxM10gcmVzX3Bqc2lwL3Bqc2lwX2Rpc3Ry aWJ1dG9yLmM6IEZvdW5kIHNlcmlhbGl6ZXIgcGpzaXAvb3V0c2Vzcy8xOTIuMTY4LjMzLjMxLTAw MDAwMGE2IGFzc29jaWF0ZWQgd2l0aCBkaWFsb2cgZGxnMHg3ZjE5YzgwYTI3OTgNClswOC8xMCAx NTowNDoxMi40NzNdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIu MTY4LjMzLjMxLTAwMDAwMDA1IE1ldGhvZDogSU5WSVRFIFN0YXR1czogMTAwDQpbMDgvMTAgMTU6
    MDQ6MTIuNDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOg0KWzA4LzEwIDE1OjA0
    OjEyLjQ3M10gREVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjgu MzMuMzEtMDAwMDAwMDUgVFNYIFN0YXRlOiBQcm9jZWVkaW5nICBJbnYgU3RhdGU6IENBTExJTkcN
    ClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9uLmM6ICBQ
    SlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1OiBSZXNwb25zZSBpcyAxMDAgVHJ5aW5nDQpbMDgv MTAgMTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSBjaGFuX3Bqc2lwLmM6ICBQSlNJUC8xOTIuMTY4
    LjMzLjMxLTAwMDAwMDA1OiBTdGF0dXM6IDEwMA0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdb MTYxNF0gY2hhbl9wanNpcC5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNTogTm90IHF1
    ZXVlaW5nIGFueXRoaW5nDQpbMDgvMTAgMTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSBjaGFuX3Bq c2lwLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1DQpbMDgvMTAgMTU6MDQ6MTIuNDcz XSBERUJVR1sxNjE0XSBjaGFuX3Bqc2lwLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1
    OiBTdGF0dXM6IDEwMA0KWzA4LzEwIDE1OjA0OjEyLjQ3M10gREVCVUdbMTYxNF0gY2hhbl9wanNp cC5jOiAgUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwNQ0KWzA4LzEwIDE1OjA0OjEyLjQ3M10g REVCVUdbMTYxNF0gcmVzX3Bqc2lwX3Nlc3Npb24uYzogIFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAw MDAwMDUNClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTRdIHJlc19wanNpcF9zZXNzaW9u LmM6ICBOb3RoaW5nIGRlbGF5ZWQNClswOC8xMCAxNTowNDoxMi40NzNdIERFQlVHWzE2MTRdIHJl c19wanNpcF9zZXNzaW9uLmM6ICBQSlNJUC8xOTIuMTY4LjMzLjMxLTAwMDAwMDA1IFRTWCBTdGF0
    ZTogUHJvY2VlZGluZyAgSW52IFN0YXRlOiBDQUxMSU5HDQpbMDgvMTAgMTU6MDQ6MTIuNDczXSBE
    RUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOiAgVG9wb2xvZ3k6IFBlbmRpbmc6ICA8MDph dWRpby0wOmF1ZGlvOnNlbmRyZWN2ICh1bGF3KT4gIEFjdGl2ZTogKG51bGwgdG9wb2xvZ3kpDQpb MDgvMTAgMTU6MDQ6MTIuNDczXSBERUJVR1sxNjE0XSByZXNfcGpzaXBfc2Vzc2lvbi5jOg0KDQpU
    aGUgU0lQIElOVklURSBpcyBhcyBmb2xsb3dzIChhbGwgdGhlIGNpdmljIGFkZHJlc3Mgc2V0dGlu Z3MgYXJlIGJsYW5rLCBkZXNwaXRlIHRoZSBBTUkgVmFyU2V0IGV2ZW50cyBzaG93aW5nIHRoZSB2
    YXJpYWJsZXMgd2VyZSBzZXQgb24gdGhlIGNoYW5uZWwpDQoNClswOC8xMCAxNTowNDoxMi40NzJd IFZFUkJPU0VbMTYxNF0gcmVzX3Bqc2lwX2xvZ2dlci5jOiA8LS0tIFRyYW5zbWl0dGluZyBTSVAg cmVxdWVzdCAoMjI2NSBieXRlcykgdG8gVURQOjE5Mi4xNjguMzMuMzE6NTA2MDxodHRwOi8vMTky LjE2OC4zMy4zMTo1MDYwPiAtLS0+DQpJTlZJVEUgc2lwOjEyMzRAMTkyLjE2OC4zMy4zMTxtYWls dG86c2lwJTNBMTIzNEAxOTIuMTY4LjMzLjMxPiBTSVAvMi4wXk0NClZpYTogU0lQLzIuMC9VRFAg MTkyLjE2OC4zMy4zMzo1MDYwO3Jwb3J0O2JyYW5jaD16OWhHNGJLUGozN2VmNzVlYi0wZGRjLTQ4
    MDItYmFhNy0wOTIxZmYzMGZmOGFeTQ0KRnJvbTogIkpvaG4gU21pdGgiIDxzaXA6ODAwNTU1MTIz NEAxOTIuMTY4LjMzLjMzPG1haWx0bzpzaXAlM0E4MDA1NTUxMjM0QDE5Mi4xNjguMzMuMzM+Pjt0
    YWc9MTcyMGZhYmMtYWZkNy00NmFkLWFhMDgtZmY4NDE0MGE3YWRkXk0NClRvOiA8c2lwOjEyMzRA
    MTkyLjE2OC4zMy4zMTxtYWlsdG86c2lwJTNBMTIzNEAxOTIuMTY4LjMzLjMxPj5eTQ0KQ29udGFj dDogPHNpcDphc3Rlcmlza0AxOTIuMTY4LjMzLjMzOjUwNjA8aHR0cDovL3NpcDphc3Rlcmlza0Ax OTIuMTY4LjMzLjMzOjUwNjA+Pl5NDQpDYWxsLUlEOiBjMGE0MWY2MC0wOGQ3LTQzZTMtOTkwMS0z OTg2MGE4MDAxZjVeTQ0KQ1NlcTogMjExMzEgSU5WSVRFXk0NCkFsbG93OiBPUFRJT05TLCBSRUdJ
    U1RFUiwgU1VCU0NSSUJFLCBOT1RJRlksIFBVQkxJU0gsIElOVklURSwgQUNLLCBCWUUsIENBTkNF
    TCwgVVBEQVRFLCBQUkFDSywgTUVTU0FHRSwgUkVGRVJeTQ0KU3VwcG9ydGVkOiAxMDByZWwsIHRp bWVyLCByZXBsYWNlcywgbm9yZWZlcnN1YiwgaGlzdGluZm9eTQ0KU2Vzc2lvbi1FeHBpcmVzOiAx ODAwXk0NCk1pbi1TRTogOTBeTQ0KR2VvbG9jYXRpb246IDxjaWQ6d2hqd29AMTkyLjE2OC4zMy4z MzxtYWlsdG86Y2lkJTNBd2hqd29AMTkyLjE2OC4zMy4zMz4+Xk0NCkdlb2xvY2F0aW9uLVJvdXRp bmc6IG5vXk0NCk1heC1Gb3J3YXJkczogNzBeTQ0KVXNlci1BZ2VudDogQXN0ZXJpc2sgUEJYIDE4
    LjE0LjAtcmMxXk0NCkNvbnRlbnQtVHlwZTogbXVsdGlwYXJ0L21peGVkO2JvdW5kYXJ5PTg1NDJh OWNlLTdhYzQtNDdmNy04YzE3LWQ0Mjc3MWViZDU2NF5NDQpDb250ZW50LUxlbmd0aDogIDE0NzBe TQ0KXk0NCl5NDQotLTg1NDJhOWNlLTdhYzQtNDdmNy04YzE3LWQ0Mjc3MWViZDU2NF5NDQpDb250
    ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3NkcF5NDQpDb250ZW50LUxlbmd0aDogICAxODFeTQ0KXk0N
    CnY9MF5NDQpvPS0gODIzMDk5NDM1IDgyMzA5OTQzNSBJTiBJUDQgMTkyLjE2OC4zMy4zM15NDQpz PUFzdGVyaXNrXk0NCmM9SU4gSVA0IDE5Mi4xNjguMzMuMzNeTQ0KdD0wIDBeTQ0KbT1hdWRpbyAx NzIxNCBSVFAvQVZQIDBeTQ0KYT1ydHBtYXA6MCBQQ01VLzgwMDBeTQ0KYT1wdGltZToyMF5NDQph PW1heHB0aW1lOjE1MF5NDQphPXNlbmRyZWN2Xk0NCl5NDQotLTg1NDJhOWNlLTdhYzQtNDdmNy04
    YzE3LWQ0Mjc3MWViZDU2NF5NDQpDb250ZW50LUlEOiA8d2hqd29AMTkyLjE2OC4zMy4zMzxtYWls dG86d2hqd29AMTkyLjE2OC4zMy4zMz4+Xk0NCkNvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vcGlk Zit4bWxeTQ0KQ29udGVudC1MZW5ndGg6ICAxMDA5Xk0NCl5NDQo8P3htbCB2ZXJzaW9uPSIxLjAi Pz4NCjxwcmVzZW5jZSB4bWxucz0idXJuOmlldGY6cGFyYW1zOnhtbDpuczpwaWRmIiB4bWxuczpj YT0idXJuOmlldGY6cGFyYW1zOnhtbDpuczpwaWRmOmdlb3ByaXYxMDpjaXZpY0FkZHIiIHhtbG5z OmRtPSJ1cm46aWV0ZjpwYXJhbXM6eG1sOm5zOnBpZGY6ZGF0YS1tb2RlbCIgeG1sbnM6Zm49Imh0
    dHA6Ly93d3cudzMub3JnLzIwMDUveHBhdGgtZnVuY3Rpb25zIiB4bWxuczpnYnA9InVybjppZXRm OnBhcmFtczp4bWw6XA0KbnM6cGlkZjpnZW9wcml2MTA6YmFzaWNQb2xpY3kiIHhtbG5zOmdtbD0i aHR0cDovL3d3dy5vcGVuZ2lzLm5ldC9nbWwiIHhtbG5zOmdwPSJ1cm46aWV0ZjpwYXJhbXM6eG1s Om5zOnBpZGY6Z2VvcHJpdjEwIiB4bWxuczpncz0iaHR0cDovL3d3dy5vcGVuZ2lzLm5ldC9waWRm bG8vMS4wIiB4bWxuczpkYXRlPSJodHRwOi8vZXhzbHQub3JnL2RhdGVzLWFuZC10aW1lcyIgZW50
    aXR5PSJJU19wcm9mXzkiPg0KICA8ZG06ZGV2aWNlPg0KICAgIDxncDpnZW9wcml2Pg0KICAgICAg PGdwOmxvY2F0aW9uLWluZm8+DQogICAgICAgIDxjYTpjaXZpY0FkZHJlc3MgeG1sOmxhbmc9ImVu Ij4NCiAgICAgICAgICA8Y2E6Y291bnRyeS8+DQogICAgICAgICAgPGNhOkExLz4NCiAgICAgICAg ICA8Y2E6QTIvPg0KICAgICAgICAgIDxjYTpBMy8+DQogICAgICAgICAgPGNhOkhOTy8+DQogICAg ICAgICAgPGNhOlJELz4NCiAgICAgICAgICA8Y2E6U1RTLz4NCiAgICAgICAgICA8Y2E6UEMvPg0K
    ICAgICAgICA8L2NhOmNpdmljQWRkcmVzcz4NCiAgICAgIDwvZ3A6bG9jYXRpb24taW5mbz4NCiAg ICAgIDxncDp1c2FnZS1ydWxlcz4NCiAgICAgICAgPGdwOnJldHJhbnNtaXNzaW9uX2FsbG93ZWQ+
    eWVzPC9ncDpyZXRyYW5zbWlzc2lvbl9hbGxvd2VkPg0KICAgICAgPC9ncDp1c2FnZS1ydWxlcz4N
    CiAgICA8L2dwOmdlb3ByaXY+DQogICAgPGRtOnRpbWVzdGFtcD4yMDIyLTA4LTEwVDIwOjA0OjEy WjwvZG06dGltZXN0YW1wPg0KICA8L2RtOmRldmljZT4NCjwvcHJlc2VuY2U+DQpeTQ0KLS04NTQy YTljZS03YWM0LTQ3ZjctOGMxNy1kNDI3NzFlYmQ1NjQtLV5NDQoNCg0KRnJvbTogYXN0ZXJpc2st dXNlcnMgPGFzdGVyaXNrLXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbTxtYWlsdG86YXN0
    ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPj4gT24gQmVoYWxmIE9mIEdlb3Jn ZSBKb3NlcGgNClNlbnQ6IFdlZG5lc2RheSwgQXVndXN0IDEwLCAyMDIyIDE6MzQgUE0NClRvOiBB
    c3RlcmlzayBVc2VycyBNYWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxh c3Rlcmlzay11c2Vyc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vyc0BsaXN0
    cy5kaWdpdW0uY29tPj4NClN1YmplY3Q6IFJlOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10g W0V4dGVybmFsXSBbRXh0ZXJuYWxdIFtFeHRlcm5hbF0gR2VvIGxvY2F0aW9uIDE4LjE0LjAtcmMx IHF1ZXN0aW9uDQoNCg0KDQpPbiBXZWQsIEF1ZyAxMCwgMjAyMiBhdCAxMToyNSBBTSBEYW4gQ3Jv cHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFtdGVsY28uY29tPj4gd3JvdGU6DQpUaGFu ayB5b3UgR2VvcmdlLg0KDQpMb29raW5nIGZvcndhcmQgdG8gd29ya2luZyB3aXRoIHRoZSBjaGFu Z2VzLiAgSSB3aWxsIHJldHJpZXZlIHRoZW0gd2hlbiB0aGUgbmV4dCByZWxlYXNlIGNhbmRpZGF0
    ZSBjb21lcyBvdXQuDQoNCg0KQSBxdWljayBxdWVzdGlvbiBvbiB1c2luZyB2YXJpYWJsZXMgdG8g cGFzcyBjdXN0b20gR2VvIExvY2F0aW9uIHNldHRpbmdzIG9uIHZpYSBhbiBBTUkgT3JpZ2luYXRl Lg0KDQoNCklmIG15IEFNSSBvcmlnaW5hdGUgcmVxdWVzdCBsb29rcyBzb21ldGhpbmcgbGlrZSB0
    aGlz4oCmDQpBY3Rpb246IE9yaWdpbmF0ZQ0KQ2hhbm5lbDogUEpTSVAvMTIzNEAxOTIuMTY4Lngu eDxtYWlsdG86UEpTSVAvMTIzNEAxOTIuMTY4LngueD4NCkV4dGVuOiBjcmVhdGVjYWxsDQpDb250
    ZXh0OiBteWNvbnRleHQNClByaW9yaXR5OiAxDQpUaW1lb3V0OiA2MDAwMA0KQ2FsbGVySUQ6IEpv aG4gU21pdGggPDgwMDU1NTEyMzQ+DQpWYXJpYWJsZTogX01ZX0dFT19DT1VOVFJZPVVTLF9NWV9H
    RU9fTkFUU1VCPUZsb3JpZGEsX01ZX0dFT19DSVRZPU9ybGFuZG8sX01ZX0dFT19ITk89MTAwLF9N
    WV9HRU9fUkQ9TWFpbixfTVlfR0VPX1NUUz1TdHJlZXQNCkFzeW5jOiB0cnVlDQoNCkRvIEkgbmVl ZCB0byBwcm9ncmFtIHRoZSBsb2NhdGlvbl92YXJpYWJsZXMgaW4gdGhlIHByb2ZpbGUgbGlrZSB0
    aGlzPw0KDQpbMV0NCnR5cGUgPSBwcm9maWxlDQpwaWRmX2VsZW1lbnQgPSBkZXZpY2UNCnByb2Zp bGVfYWN0aW9uID0gZGlzY2FyZF9pbmNvbWluZw0KdXNhZ2VfcnVsZXMgPSByZXRyYW5zbWlzc2lv bl9hbGxvd2VkPXllcw0KbG9jYXRpb25fdmFyaWFibGVzID0gY291bnRyeT0ke19NWV9HRU9fQ09V
    TlRSWX0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEExPSR7X01ZX0dFT19OQVRJT05BTF9TVUJESVZJ
    U0lPTn0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEEyPSR7X01ZX0dFT19OQVRTVUJ9DQpsb2NhdGlv bl92YXJpYWJsZXMgPSBBMz0ke19NWV9HRU9fQ0lUWX0NCmxvY2F0aW9uX3ZhcmlhYmxlcyA9IEhO
    Tz0ke19NWV9HRU9fSE5PfQ0KbG9jYXRpb25fdmFyaWFibGVzID0gUkQ9JHtfTVlfR0VPX1JEfQ0K
    bG9jYXRpb25fdmFyaWFibGVzID0gU1RTPSR7X01ZX0dFT19TVFN9DQpsb2NhdGlvbl92YXJpYWJs ZXMgPSBQQz0ke19NWV9HRU9fUEN9DQoNCk9yIHdvdWxkIEkgbmVlZCB0byBwcm9ncmFtIHRoZSBs b2NhdGlvbl9pbmZvX3JlZmluZW1lbnRzIGluIHRoZSBwcm9maWxlIHRvIHVzZSB0aG9zZSB2YXJp YWJsZXM/DQoNCmxvY2F0aW9uX2luZm9fcmVmaW5lbWVudCBpcyB3aGF0IHlvdSB3YW50LiAgbG9j YXRpb25fdmFyaWFibGVzIGRlZmluZXMgbmV3IHZhcmlhYmxlcyB0byB1c2UgaW4gYWRkaXRpb24g dG8gdGhvc2Ugb24gdGhlIGNoYW5uZWwuICBZb3UnZCB1c2UgdGhlc2UgaWYgeW91IGhhZCB2YXJp YWJsZXMgdGhhdCBmb3Igc29tZSByZWFzb24geW91IGRpZG4ndCB3YW50IG9uIHRoZSBjaGFubmVs IGl0c2VsZi4NCg0KSG93ZXZlci4uLiAgIFRoZSBwcm9maWxlIHlvdSBkZWZpbmVkIGFib3ZlIGRv ZXNuJ3QgaGF2ZSBhIGxvY2F0aW9uIHJlZmVyZW5jZSB0byByZWZpbmUgc28geW91J2QgbmVlZCBh dCBsZWFzdCBhIGR1bW15IGxvY2F0aW9uIHdpdGggYSBmb3JtYXQgb2YgY2l2aWNBZGRyZXNzLg0K
    DQpbbXlsb2ddDQp0eXBlID0gbG9jYXRpb24NCmZvcm1hdCA9IGNpdmljQWRkcmVzcw0KDQpUaGVu IGluIHlvdXIgcHJvZmlsZS4uLg0KWzFdDQp0eXBlID0gcHJvZmlsZQ0KcGlkZl9lbGVtZW50ID0g ZGV2aWNlDQpwcm9maWxlX2FjdGlvbiA9IGRpc2NhcmRfaW5jb21pbmcNCnVzYWdlX3J1bGVzID0g cmV0cmFuc21pc3Npb25fYWxsb3dlZD15ZXMNCmxvY2F0aW9uX3JlZmVyZW5jZSA9IG15bG9jDQps b2NhdGlvbl92YXJpYWJsZXMgPSBjb3VudHJ5PSR7X01ZX0dFT19DT1VOVFJZfQ0KbG9jYXRpb25f dmFyaWFibGVzID0gQTE9JHtfTVlfR0VPX05BVElPTkFMX1NVQkRJVklTSU9OfQ0KLi4uDQoNCllv dSBjYW4gYWxzbyBkbyB0aGlzIHdoaWNoIG1pZ2h0IGFjdHVhbGx5IGJlIGZhc3Rlci4uLg0KW215
    bG9nXQ0KdHlwZSA9IGxvY2F0aW9uDQpmb3JtYXQgPSBjaXZpY0FkZHJlc3MNCmxvY2F0aW9uX2lu Zm8gPSBjb3VudHJ5PSR7X01ZX0dFT19DT1VOVFJZfSwgQTE9JHtfTVlfR0VPX05BVElPTkFMX1NV
    QkRJVklTSU9OfQ0KbG9jYXRpb25faW5mbyA9IEEyPSR7X01ZX0dFT19OQVRTVUJ9LCAuLi4NCg0K
    WzFdDQp0eXBlID0gcHJvZmlsZQ0KcGlkZl9lbGVtZW50ID0gZGV2aWNlDQpwcm9maWxlX2FjdGlv biA9IGRpc2NhcmRfaW5jb21pbmcNCnVzYWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dl ZD15ZXMNCmxvY2F0aW9uX3JlZmVyZW5jZSA9IG15bG9jDQoNClRoaXMgd2F5IHlvdSBkb24ndCBu ZWVkIHRvIHVzZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQgYXQgYWxsLg0KSUlSQyB0aGlzIHNh dmVzIGhhdmluZyB0byBwYXJzZSBsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQgYW5kIGJvdW5jZSBp dCBhZ2FpbnN0DQp0aGUgb3JpZ2luYWwgbG9jYXRpb25faW5mbyB3aGljaCBjb3VsZCBiZSBlbXB0
    eS4NCg0KDQoNCg0KDQoNCg0KRGFuDQoNCg0KRnJvbTogYXN0ZXJpc2stdXNlcnMgPGFzdGVyaXNr LXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbTxtYWlsdG86YXN0ZXJpc2stdXNlcnMtYm91
    bmNlc0BsaXN0cy5kaWdpdW0uY29tPj4gT24gQmVoYWxmIE9mIEdlb3JnZSBKb3NlcGgNClNlbnQ6
    IFdlZG5lc2RheSwgQXVndXN0IDEwLCAyMDIyIDg6NTggQU0NClRvOiBBc3RlcmlzayBVc2VycyBN
    YWlsaW5nIExpc3QgLSBOb24tQ29tbWVyY2lhbCBEaXNjdXNzaW9uIDxhc3Rlcmlzay11c2Vyc0Bs aXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11c2Vyc0BsaXN0cy5kaWdpdW0uY29tPj4N
    ClN1YmplY3Q6IFJlOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gW0V4dGVybmFsXSBbRXh0
    ZXJuYWxdIEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQpTb3JyeSBmb3IgdGhl IGRlbGF5IGJ1dCB0aGlzIHR1cm5lZCBvdXQgdG8gYmUgYSBiaXQgbW9yZSBjb21wbGV4IHRoYW4g SSBhbnRpY2lwYXRlZC4NClRoZXJlIGFyZSByZXZpZXdzIHVwIG9uIEdlcnJpdCBmb3IgdGhlIDE2
    IGFuZCAxOCBicmFuY2hlcyB0aGF0IGFkZHJlc3MgdGhlIGlzc3VlcyBiZWxvdyBhcyB3ZWxsIGFz IGNsZWFuIHVwIHRoZSBpbXBsZW1lbnRhdGlvbiwgcGx1ZyBzb21lIG1lbW9yeSBsZWFrcywgZXRj Lg0KMTY6IGh0dHBzOi8vZ2Vycml0LmFzdGVyaXNrLm9yZy9jL2FzdGVyaXNrLysvMTg4OTYNCjE4
    OiBodHRwczovL2dlcnJpdC5hc3Rlcmlzay5vcmcvYy9hc3Rlcmlzay8rLzE4ODk3DQoNCkkgYW50
    aWNpcGF0ZSB0aGVzZSB3aWxsIG1ha2UgaXQgaW50byB0aGUgbmV4dCBzZXQgb2YgcmVsZWFzZSBj YW5kaWRhdGVzIHdoaWNoIGFyZSBkdWUgdG8gYmUgY3V0IHRvbW9ycm93Lg0KDQpHaXZlIHRoZW0g YSB0cnkuDQoNCk9uIFdlZCwgQXVnIDMsIDIwMjIgYXQgMTo1MSBQTSBHZW9yZ2UgSm9zZXBoIDxn am9zZXBoQHNhbmdvbWEuY29tPG1haWx0bzpnam9zZXBoQHNhbmdvbWEuY29tPj4gd3JvdGU6DQpM
    b29rcyBsaWtlIGl0J2xsIGJlIHRvbW9ycm93IGJlZm9yZSBJIGNhbiBnZXQgdGhlIHBhdGNoIHVw LiAgSSByYW4gaW50byBzb21lIHN0cmFuZ2UgaXNzdWVzLg0KDQpPbiBUdWUsIEF1ZyAyLCAyMDIy IGF0IDE6NDMgUE0gRGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRhbkBhbXRlbGNv LmNvbT4+IHdyb3RlOg0KVGhhbmsgeW91IEdlb3JnZQ0KDQpGcm9tOiBhc3Rlcmlzay11c2VycyA8
    YXN0ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlzay11
    c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYgT2YgR2VvcmdlIEpvc2Vw aA0KU2VudDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgMjo0MCBQTQ0KVG86IEFzdGVyaXNrIFVz ZXJzIE1haWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24gPGFzdGVyaXNrLXVz ZXJzQGxpc3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1bS5j b20+Pg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJzXSBbRXh0ZXJuYWxd IEdlbyBsb2NhdGlvbiAxOC4xNC4wLXJjMSBxdWVzdGlvbg0KDQoNCg0KT24gVHVlLCBBdWcgMiwg MjAyMiBhdCAxOjM1IFBNIEdlb3JnZSBKb3NlcGggPGdqb3NlcGhAc2FuZ29tYS5jb208bWFpbHRv Omdqb3NlcGhAc2FuZ29tYS5jb20+PiB3cm90ZToNCg0KDQpPbiBUdWUsIEF1ZyAyLCAyMDIyIGF0
    IDE6MTMgUE0gRGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRhbkBhbXRlbGNvLmNv bT4+IHdyb3RlOg0KSXMgdGhlIGFsbG93X3JvdXRpbmcgc2V0dGluZyBvbiB0aGUgZ2VvbG9jYXRp b24gV2lraSBQcm9maWxlIGFsc28gbm90IGZ1bGx5IGltcGxlbWVudGVkPw0KDQpXZWxsLCA5OSUg b2YgdGhlIGNvZGUgaXMgdGhlcmUuICBUaGUgMSUgaXMgcGFyc2luZyB0aGUgY29uZmlnIG9wdGlv bi4gIE5vdCBzdXJlIGhvdyBJIG1pc3NlZCB0aGF0Lg0KSSdsbCBoYXZlIGEgcGF0Y2ggdXAgZmly c3QgdGhpbmcgaW4gdGhlIG1vcm5pbmcgVVRDLTYuDQpJJ2xsIGNhbGwgaXQgImFsbG93X3VzZV9m b3Jfcm91dGluZyIgaW4gcHJvZmlsZS4NCg0KQWN0dWFsbHkganVzdCAiYWxsb3dfcm91dGluZ191
    c2UiDQoNCg0KDQpJbiB0aGUgY29kZSwgSSBzZWUgZ2VvbG9jYXRpb25fcm91dGluZyB1c2VkIGlu c3RlYWQgb2YgYWxsb3dfcm91dGluZy4NCg0KVHJpZWQgYm90aCBhbmQgQXN0ZXJpc2sgaW5kaWNh dGVzIGl0IGNhbm5vdCBmaW5kIHN1aXRhYmxlIHNldHRpbmcgc28gaXQgZG9lc27igJl0IGNyZWF0
    ZSB0aGUgcHJvZmlsZSBvYmplY3QuDQoNCkRhbg0KDQpGcm9tOiBEYW4gQ3JvcHANClNlbnQ6IFR1
    ZXNkYXksIEF1Z3VzdCAyLCAyMDIyIDEwOjA0IEFNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGlu ZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMu ZGlnaXVtLmNvbTxtYWlsdG86YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4+DQpTdWJq ZWN0OiBSRTogW0V4dGVybmFsXSBbYXN0ZXJpc2stdXNlcnNdIEdlbyBsb2NhdGlvbiAxOC4xNC4w LXJjMSBxdWVzdGlvbg0KDQpUaGFuayB5b3UgR2VvcmdlLg0KDQpGcm9tOiBhc3Rlcmlzay11c2Vy cyA8YXN0ZXJpc2stdXNlcnMtYm91bmNlc0BsaXN0cy5kaWdpdW0uY29tPG1haWx0bzphc3Rlcmlz ay11c2Vycy1ib3VuY2VzQGxpc3RzLmRpZ2l1bS5jb20+PiBPbiBCZWhhbGYgT2YgR2VvcmdlIEpv c2VwaA0KU2VudDogVHVlc2RheSwgQXVndXN0IDIsIDIwMjIgOTo1NyBBTQ0KVG86IEFzdGVyaXNr IFVzZXJzIE1haWxpbmcgTGlzdCAtIE5vbi1Db21tZXJjaWFsIERpc2N1c3Npb24gPGFzdGVyaXNr LXVzZXJzQGxpc3RzLmRpZ2l1bS5jb208bWFpbHRvOmFzdGVyaXNrLXVzZXJzQGxpc3RzLmRpZ2l1
    bS5jb20+Pg0KU3ViamVjdDogUmU6IFtFeHRlcm5hbF0gW2FzdGVyaXNrLXVzZXJzXSBHZW8gbG9j YXRpb24gMTguMTQuMC1yYzEgcXVlc3Rpb24NCg0KDQoNCk9uIFR1ZSwgQXVnIDIsIDIwMjIgYXQg ODo0NiBBTSBEYW4gQ3JvcHAgPGRhbkBhbXRlbGNvLmNvbTxtYWlsdG86ZGFuQGFtdGVsY28uY29t Pj4gd3JvdGU6DQpJIGJlbGlldmUgSSBoYXZlIGV2ZXJ5dGhpbmcgY29uZmlndXJlZCBjb3JyZWN0
    bHksIGJ1dCBBc3RlcmlzayBpcyBjb21wbGFpbmluZyBhYm91dCBteSBjb25maWd1cmF0aW9uDQoN
    Ckl0IGlzIGNvbXBsYWluaW5nIGFib3V0IGNvbmZpZGVuY2Ugc2V0dGluZ3MuDQoNCkZyb20gdGhl IEFzdGVyaXNrIEdlb2xvY2F0aW9uIEltcGxlbWVudGF0aW9uIFdpa2ksIEkgYmVsaWV2ZSBJIGhh dmUgdGhpcyBzZXQgY29ycmVjdGx5Lg0KDQoNClN1Yi1wYXJhbWV0ZXJzOg0KDQogICogICB2YWx1
    ZTogQSBwZXJjZW50YWdlIGluZGljYXRpbmcgdGhlIGNvbmZpZGVuY2Ugb3IgInVua25vd24iLg0K
    ICAqICAgcGRmOiAidW5rbm93biIsICJub3JtYWwiIG9yICJyZWN0YW5ndWxhciINCkV4YW1wbGU6
    IGNvbmZpZGVuY2UgPSB2YWx1ZT04MCwgcGRmPXVua25vd24NCklmIG5vIGNvbmZpZGVuY2UgcGFy YW1ldGVyIGlzIHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgaXMgOTUlLg0KU2VlIFJGQzc0NTk8aHR0
    cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dlb2xvY2F0aW9uK1JlZmVy ZW5jZStJbmZvcm1hdGlvbiNHZW9sb2NhdGlvblJlZmVyZW5jZUluZm9ybWF0aW9uLXJmYzc0NTk+
    IGZvciB0aGUgZXhhY3QgZGVmaW5pdGlvbiBvZiB0aGlzIHBhcmFtZXRlci4NCg0KDQpbMDgvMDIg MDk6MzA6MDMuNzI0XSBFUlJPUls2ODI5NDRdIGNvbmZpZ19vcHRpb25zLmM6IENvdWxkIG5vdCBm aW5kIG9wdGlvbiBzdWl0YWJsZSBmb3IgY2F0ZWdvcnkgJ0lTX2xvY18xJyBuYW1lZCAnY29uZmlk ZW5jZScgYXQgbGluZSAxMiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSBy ZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBhbiBvYmplY3Qgb2YgdHlwZSAn bG9jYXRpb24nIHdpdGggaWQgJ0lTX2xvY18xJyBmcm9tIGNvbmZpZ3VyYXRpb24gZmlsZSAnZ2Vv bG9jYXRpb24uY29uZicNCg0KW0lTX2xvY18xXQ0KdHlwZSA9IGxvY2F0aW9uDQpmb3JtYXQgPSBj aXZpY0FkZHJlc3MNCmNvbmZpZGVuY2UgPSB2YWx1ZT05NSwgcGRmPXVua25vd24NCmxvY2F0aW9u X2luZm8gPSBjb3VudHJ5PVVTLEExPVdpc2NvbnNpbixBMz1NYWRpc29uDQpsb2NhdGlvbl9pbmZv ID0gSE5PPTQ4MDAsUkQ9TWFpbixTVFM9RHJpdmUsUEM9NTM3MDQNCg0KUmVtb3ZlIHRoZSBjb25m aWRlbmNlIHBhcmFtIGZvciBub3cuICAgIEkgZG9jdW1lbnRlZCBpdCBiZWZvcmUgSSBpbXBsZW1l bnRlZCBpdC4gOikNCg0KDQoNCkFsc28gc2VlaW5nIHByb2JsZW1zIHdpdGggbG9jYXRpb25fcmVm aW5lbWVudCBzZXR0aW5nLg0KQWdhaW4sIEkgYmVsaWV2ZSBteSBzZXR0aW5nIG1hdGNoZXMgd2hh dCBpcyBvbiB0aGUgQXN0ZXJpc2sgR2VvbG9jYXRpb24gSW1wbGVtZW50YXRpb24gd2lraS4NCg0K
    WzA4LzAyIDA5OjMwOjAzLjcyNF0gRVJST1JbNjgyOTQ0XSBjb25maWdfb3B0aW9ucy5jOiBDb3Vs ZCBub3QgZmluZCBvcHRpb24gc3VpdGFibGUgZm9yIGNhdGVnb3J5ICdJU19wcm9mXzIwJyBuYW1l ZCAnbG9jYXRpb25fcmVmaW5lbWVudCcgYXQgbGluZSA1NiBvZg0KWzA4LzAyIDA5OjMwOjAzLjcy NF0gRVJST1JbNjgyOTQ0XSByZXNfc29yY2VyeV9jb25maWcuYzogQ291bGQgbm90IGNyZWF0ZSBh biBvYmplY3Qgb2YgdHlwZSAncHJvZmlsZScgd2l0aCBpZCAnSVNfcHJvZl8yMCcgZnJvbSBjb25m aWd1cmF0aW9uIGZpbGUgJ2dlb2xvY2F0aW9uLmNvbmYnDQoNCltJU19wcm9mXzIwXQ0KdHlwZSA9
    IHByb2ZpbGUNCnByb2ZpbGVfYWN0aW9uID0gcHJlZmVyX2luY29taW5nDQpwaWRmX2VsZW1lbnQg PSBwZXJzb24NCnVzYWdlX3J1bGVzID0gcmV0cmFuc21pc3Npb25fYWxsb3dlZD1ubw0KbG9jYXRp b25fcmVmZXJlbmNlID0gSVNfbG9jXzIyDQpsb2NhdGlvbl9yZWZpbmVtZW50ID0gUk9PTT0yOTIN
    CmxvY2F0aW9uX3JlZmluZW1lbnQgPSBGTFI9MQ0KDQpQZmZmdC4gIEkgcmVuYW1lZCB0aGlzIHRv ICJsb2NhdGlvbl9pbmZvX3JlZmluZW1lbnQiIHRvIGJldHRlciBtYXRjaCB0aGUgImxvY2F0aW9u X2luZm8iIHBhcmFtZXRlciBpbiB0aGUgTG9jYXRpb24gb2JqZWN0LiAgSSBmb3Jnb3QgdG8gcmVu YW1lIGl0IGluIHRoZSB3aWtpIGRvY3VtZW50YXRpb24uICBJZiB5b3UganVzdCBjaGFuZ2UgdGhl IG5hbWUgaXQgc2hvdWxkIHdvcmsuDQoNCg0KDQoNCg0KRGFuDQotLQ0KX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQot LSBCYW5kd2lkdGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkgaHR0cDovL3d3dy5hcGktZGln aXRhbC5jb20gLS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJpc2sgY29tbXVuaXR5IGZvcnVt IGF0OiBodHRwczovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoNCk5ldyB0byBBc3Rlcmlzaz8g U3RhcnQgaGVyZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlzay5vcmcvd2lraS9kaXNwbGF5
    L0FTVC9HZXR0aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMgbWFpbGluZyBsaXN0DQpUbyBV
    TlNVQlNDUklCRSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAgIGh0dHA6Ly9saXN0cy5kaWdp dW0uY29tL21haWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMNCi0tDQpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18N
    Ci0tIEJhbmR3aWR0aCBhbmQgQ29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRwOi8vd3d3LmFwaS1k aWdpdGFsLmNvbSAtLQ0KDQpDaGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBjb21tdW5pdHkgZm9y dW0gYXQ6IGh0dHBzOi8vY29tbXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3IHRvIEFzdGVyaXNr PyBTdGFydCBoZXJlOg0KICAgICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3Bs YXkvQVNUL0dldHRpbmcrU3RhcnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWlsaW5nIGxpc3QNClRv IFVOU1VCU0NSSUJFIG9yIHVwZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0cDovL2xpc3RzLmRp Z2l1bS5jb20vbWFpbG1hbi9saXN0aW5mby9hc3Rlcmlzay11c2Vycw0KLS0NCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xw0KLS0gQmFuZHdpZHRoIGFuZCBDb2xvY2F0aW9uIFByb3ZpZGVkIGJ5IGh0dHA6Ly93d3cuYXBp LWRpZ2l0YWwuY29tIC0tDQoNCkNoZWNrIG91dCB0aGUgbmV3IEFzdGVyaXNrIGNvbW11bml0eSBm b3J1bSBhdDogaHR0cHM6Ly9jb21tdW5pdHkuYXN0ZXJpc2sub3JnLw0KDQpOZXcgdG8gQXN0ZXJp c2s/IFN0YXJ0IGhlcmU6DQogICAgICBodHRwczovL3dpa2kuYXN0ZXJpc2sub3JnL3dpa2kvZGlz cGxheS9BU1QvR2V0dGluZytTdGFydGVkDQoNCmFzdGVyaXNrLXVzZXJzIG1haWxpbmcgbGlzdA0K
    VG8gVU5TVUJTQ1JJQkUgb3IgdXBkYXRlIG9wdGlvbnMgdmlzaXQ6DQogICBodHRwOi8vbGlzdHMu ZGlnaXVtLmNvbS9tYWlsbWFuL2xpc3RpbmZvL2FzdGVyaXNrLXVzZXJzDQotLQ0KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fDQotLSBCYW5kd2lkdGggYW5kIENvbG9jYXRpb24gUHJvdmlkZWQgYnkgaHR0cDovL3d3dy5h cGktZGlnaXRhbC5jb20gLS0NCg0KQ2hlY2sgb3V0IHRoZSBuZXcgQXN0ZXJpc2sgY29tbXVuaXR5
    IGZvcnVtIGF0OiBodHRwczovL2NvbW11bml0eS5hc3Rlcmlzay5vcmcvDQoNCk5ldyB0byBBc3Rl cmlzaz8gU3RhcnQgaGVyZToNCiAgICAgIGh0dHBzOi8vd2lraS5hc3Rlcmlzay5vcmcvd2lraS9k aXNwbGF5L0FTVC9HZXR0aW5nK1N0YXJ0ZWQNCg0KYXN0ZXJpc2stdXNlcnMgbWFpbGluZyBsaXN0
    DQpUbyBVTlNVQlNDUklCRSBvciB1cGRhdGUgb3B0aW9ucyB2aXNpdDoNCiAgIGh0dHA6Ly9saXN0
    cy5kaWdpdW0uY29tL21haWxtYW4vbGlzdGluZm8vYXN0ZXJpc2stdXNlcnMNCi0tDQpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18NCi0tIEJhbmR3aWR0aCBhbmQgQ29sb2NhdGlvbiBQcm92aWRlZCBieSBodHRwOi8vd3d3
    LmFwaS1kaWdpdGFsLmNvbSAtLQ0KDQpDaGVjayBvdXQgdGhlIG5ldyBBc3RlcmlzayBjb21tdW5p dHkgZm9ydW0gYXQ6IGh0dHBzOi8vY29tbXVuaXR5LmFzdGVyaXNrLm9yZy8NCg0KTmV3IHRvIEFz dGVyaXNrPyBTdGFydCBoZXJlOg0KICAgICAgaHR0cHM6Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtp L2Rpc3BsYXkvQVNUL0dldHRpbmcrU3RhcnRlZA0KDQphc3Rlcmlzay11c2VycyBtYWlsaW5nIGxp c3QNClRvIFVOU1VCU0NSSUJFIG9yIHVwZGF0ZSBvcHRpb25zIHZpc2l0Og0KICAgaHR0cDovL2xp c3RzLmRpZ2l1bS5jb20vbWFpbG1hbi9saXN0aW5mby9hc3Rlcmlzay11c2Vycw0K

  • Whew.

    I _believe_ I can allow you to specify “location” parameters directly on a profile which would be mutually exclusive with the location_reference parameter. Let me look at it.

    A good idea. I can’t think of any element that would need to be sent empty but I’m wondering if I’ll need to add a config option like
    “suppress_empty_elements”. Let me investigate.

  • The email was getting too long for the mailing list so I’ve truncated it. Anyway…

    Dan, Have you tried using the GEOLOC_PROFILE dialplan function to create a profile on the fly? I’m not sure how this would fit into your use of Originate but…

    Create a dummy geoloc profile.
    []
    type=profile profile_precedence=discard_config

    In pjsip.conf, set geoloc_outgoing_call_profile = on the outgoing channel.

    Either in the dialplan or via the Originate (I forget how) call GEOLOC_PROFILE. Here’s what it’d look like in the dialplan…

    [geoloc_callee]
    exten = s,1,NoOp(); CID: ${CALLERID(all)} CL: ${CONNECTEDLINE(all)})
    same = n,Set(GEOLOC_PROFILE(format)=civicAddress)
    same = n,Set(GEOLOC_PROFILE(location_info)=country=US,A1=Colorado)
    same = n,Set(GEOLOC_PROFILE(pidf_element)=device)
    same = n,Return()

    [default]
    exten = 911,Dial(PJSIP/upstream-carrier,20,b(geoloc_callee^s^1))

    Not sure if this helps. I am working on the other suggestions though.

  • Oh, for now, you can also use something like this to conditionally set an element:
    ${IF(${EXISTS(${MyA3})}?A3=${MyA3})}

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KR29vZCBpZGVhIG9uIHRoZSBwYXNzdGhyb3VnaCBwcm9maWxl Lg0KDQpJcyB0aGVyZSBhIHdheSB0byBzZXQgdGhlIEdFT0xPQ19QUk9GSUxFIHZhbHVlcyBmcm9t IHRoZSBBTUkgT3JpZ2luYXRlIGNvbW1hbmQ/DQoNCkkgdHJpZWQgdGhlIGZvbGxvd2luZywgYnV0
    IGl0IGRvZXNu4oCZdCBsaWtlIHRoZSBHRU9MT0NfUFJPRklMRSB2YWx1ZXMgaW4gdGhlIHZhcmlh YmxlIHBhcmFtZXRlci4gIElmIHRoZXJlIGlzIGEgd2F5IHRvIGRvIHRoaXMsIHRoZSBwYXNzdGhy b3VnaCB3b3VsZCBzb2x2ZSB0aGUgcHJvYmxlbSBvZiBHZW8gTG9jYXRpb24gaW5mb3JtYXRpb24g c2V0dGluZ3MgbmVlZGluZyB0byBiZSBwcm92aWRlZCBieSBhIHRoaXJkLXBhcnR5IGFwcGxpY2F0
    aW9uLg0KDQpBY3Rpb246IE9yaWdpbmF0ZQ0KQ2hhbm5lbDogUEpTSVAvMTIzNEAxOTIuMTY4LjMz LjMxDQpFeHRlbjogY3JlYXRlY2FsbA0KQ29udGV4dDogbXljb250ZXh0DQpQcmlvcml0eTogMQ0K
    VGltZW91dDogNjAwMDANCkNhbGxlcklEOiBKb2huIFNtaXRoIDw4MDA1NTUxMjM0Pg0KVmFyaWFi bGU6IEdFT0xPQ19QUk9GSUxFKGZvcm1hdCk9Y2l2aWNBZGRyZXNzLEdFT0xPQ19QUk9GSUxFKG1l dGhvZCk9TWFudWFsLEdFT0xPQ19QUk9GSUxFKGxvY2F0aW9uX2luZm8pPT0iY291bnRyeT1VUyxB
    MT1GbG9yaWRhLEEzPU9ybGFuZG8sSE5PPTEwMCxSRD1NYWluLFNUUz1TdHJlZXQiLENBTExFUklE
    KG51bS1wcmVzKT1hbGxvd2VkX3Bhc3NlZF9zY3JlZW4NCkFzeW5jOiB0cnVlDQoNCkkgYmVsaWV2
    ZSB0aGlzIHBvcnRpb24gYmVsaWV2ZSBpbmRpY2F0ZXMgQXN0ZXJpc2sgdHJlYXRzIHRoZSBHRU9M
    T0NfUFJPRklMRSh4eHgpIGFzIEdFT0xPQ1BST0ZJTEVTVEFUVVMgdmFyaWFibGUgbmFtZS4NCg0K
    WzA4LzE1IDEzOjQxOjQxLjYwOV0gREVCVUdbNDI0MjRdIG1hbmFnZXIuYzogRXhhbWluaW5nIEFN
    SSBldmVudDoNCkV2ZW50OiBWYXJTZXReTQ0KUHJpdmlsZWdlOiBkaWFscGxhbixhbGxeTQ0KQ2hh bm5lbDogUEpTSVAvMTkyLjE2OC4zMy4zMS0wMDAwMDAwMF5NDQpDaGFubmVsU3RhdGU6IDBeTQ0K
    Q2hhbm5lbFN0YXRlRGVzYzogRG93bl5NDQpDYWxsZXJJRE51bTogPHVua25vd24+Xk0NCkNhbGxl cklETmFtZTogPHVua25vd24+Xk0NCkNvbm5lY3RlZExpbmVOdW06IDx1bmtub3duPl5NDQpDb25u ZWN0ZWRMaW5lTmFtZTogPHVua25vd24+Xk0NCkxhbmd1YWdlOiBlbl5NDQpBY2NvdW50Q29kZTog MjBeTQ0KQ29udGV4dDogSVNeTQ0KRXh0ZW46IHNeTQ0KUHJpb3JpdHk6IDFeTQ0KVW5pcXVlaWQ6
    IDE2NjA1ODg5MDEuMF5NDQpMaW5rZWRpZDogMTY2MDU4ODkwMS4wXk0NClZhcmlhYmxlOiBHRU9M
    T0NQUk9GSUxFU1RBVFVTXk0NClZhbHVlOiAwXk0NCl5NDQoNCkRhbg0K

  • R2VvcmdlLA0KDQpJcyBpdCBwb3NzaWJsZSB0byBzZXQgdGhlIEdFT0xPQ19QUk9GSUxFIGZpZWxk cyBzaW1pbGFyIHRvIHRoZSB3YXkgUEpTSVBfSEVBREVSKGFkZCwg4oCmKSB3b3Jrcz8NCg0KQXNr aW5nLCBiZWNhdXNlIHdlIGFscmVhZHkgdXNlIHRoZSBQSlNJUF9IRUFERVIoYWRkLCB4eHgpIGZy b20gQU1JIE9yaWdpbmF0ZSB0byBhZGQgUEpTSVAgaGVhZGVycyB0byB0aGUgb3V0Ym91bmQgb3Jp Z2luYXRlLg0KDQoNCkFjdGlvbjogT3JpZ2luYXRlDQpBY3Rpb25JRDogUzYyDQpDaGFubmVsOiBQ
    SlNJUC8xMjM0QDE5Mi4xNjguMTIuMzQNCkV4dGVuOiBjcmVhdGVjYWxsDQpDb250ZXh0OiBteWNv bnRleHQNClByaW9yaXR5OiAxDQpUaW1lb3V0OiA2MDAwMA0KQ2FsbGVySUQ6IEpvaG4gU21pdGgg PDgwMDU1NTEyMTI+DQpWYXJpYWJsZTogUEpTSVBfSEVBREVSKGFkZCxhYmMpPTEyMyxDQUxMRVJJ
    RChudW0tcHJlcyk9YWxsb3dlZF9wYXNzZWRfc2NyZWVuDQpBc3luYzogdHJ1ZQ0KQ29kZWNzOiB1
    bGF3DQoNCkRhbg0KDQoNCg0KRnJvbTogRGFuIENyb3BwDQpTZW50OiBNb25kYXksIEF1Z3VzdCAx NSwgMjAyMiAyOjAwIFBNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNv bW1lcmNpYWwgRGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4NClN1
    YmplY3Q6IFJFOiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gR2VvIGxvY2F0aW9uIDE4LjE0
    LjAtcmMxIHF1ZXN0aW9uDQoNClRoYW5rIHlvdSBHZW9yZ2UuDQoNCkdvb2QgaWRlYSBvbiB0aGUg cGFzc3Rocm91Z2ggcHJvZmlsZS4NCg0KSXMgdGhlcmUgYSB3YXkgdG8gc2V0IHRoZSBHRU9MT0Nf UFJPRklMRSB2YWx1ZXMgZnJvbSB0aGUgQU1JIE9yaWdpbmF0ZSBjb21tYW5kPw0KDQpJIHRyaWVk IHRoZSBmb2xsb3dpbmcsIGJ1dCBpdCBkb2VzbuKAmXQgbGlrZSB0aGUgR0VPTE9DX1BST0ZJTEUg dmFsdWVzIGluIHRoZSB2YXJpYWJsZSBwYXJhbWV0ZXIuICBJZiB0aGVyZSBpcyBhIHdheSB0byBk byB0aGlzLCB0aGUgcGFzc3Rocm91Z2ggd291bGQgc29sdmUgdGhlIHByb2JsZW0gb2YgR2VvIExv Y2F0aW9uIGluZm9ybWF0aW9uIHNldHRpbmdzIG5lZWRpbmcgdG8gYmUgcHJvdmlkZWQgYnkgYSB0
    aGlyZC1wYXJ0eSBhcHBsaWNhdGlvbi4NCg0KQWN0aW9uOiBPcmlnaW5hdGUNCkNoYW5uZWw6IFBK
    U0lQLzEyMzRAMTkyLjE2OC4zMy4zMTxtYWlsdG86UEpTSVAvMTIzNEAxOTIuMTY4LjMzLjMxPg0K
    RXh0ZW46IGNyZWF0ZWNhbGwNCkNvbnRleHQ6IG15Y29udGV4dA0KUHJpb3JpdHk6IDENClRpbWVv dXQ6IDYwMDAwDQpDYWxsZXJJRDogSm9obiBTbWl0aCA8ODAwNTU1MTIzND4NClZhcmlhYmxlOiBH
    RU9MT0NfUFJPRklMRShmb3JtYXQpPWNpdmljQWRkcmVzcyxHRU9MT0NfUFJPRklMRShtZXRob2Qp PU1hbnVhbCxHRU9MT0NfUFJPRklMRShsb2NhdGlvbl9pbmZvKT09ImNvdW50cnk9VVMsQTE9Rmxv cmlkYSxBMz1PcmxhbmRvLEhOTz0xMDAsUkQ9TWFpbixTVFM9U3RyZWV0IixDQUxMRVJJRChudW0t cHJlcyk9YWxsb3dlZF9wYXNzZWRfc2NyZWVuDQpBc3luYzogdHJ1ZQ0KDQpJIGJlbGlldmUgdGhp cyBwb3J0aW9uIGJlbGlldmUgaW5kaWNhdGVzIEFzdGVyaXNrIHRyZWF0cyB0aGUgR0VPTE9DX1BS
    T0ZJTEUoeHh4KSBhcyBHRU9MT0NQUk9GSUxFU1RBVFVTIHZhcmlhYmxlIG5hbWUuDQoNClswOC8x NSAxMzo0MTo0MS42MDldIERFQlVHWzQyNDI0XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZl bnQ6DQpFdmVudDogVmFyU2V0Xk0NClByaXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6
    IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAwMDAwMDBeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5u ZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2FsbGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5h bWU6IDx1bmtub3duPl5NDQpDb25uZWN0ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVk TGluZU5hbWU6IDx1bmtub3duPl5NDQpMYW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0N
    CkNvbnRleHQ6IElTXk0NCkV4dGVuOiBzXk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYw NTg4OTAxLjBeTQ0KTGlua2VkaWQ6IDE2NjA1ODg5MDEuMF5NDQpWYXJpYWJsZTogR0VPTE9DUFJP
    RklMRVNUQVRVU15NDQpWYWx1ZTogMF5NDQpeTQ0KDQpEYW4NCg=

  • You’ve got 2 equals signs when you set location_info :). I just tried GEOLOC_PROFILE(format)=civicAddress,GEOLOC_PROFILE(location_info)=”country=US,A3=\”New York\””,GEOLOC_PROFILE(pidf_element)=device and it worked.

    I believe this portion believe indicates Asterisk treats the

    GEOLOCPROFILESTATUS is the variable GEOLOC_PROFILE sets to indicate success or failure. The value of “0” indicates success. What was the actual result in the channel?

  • I can try but unlike the HEADER functions, the profile has multiple levels of name/value pairs so it might take a bit of work and testing. Let me finish the other things first then I’ll evaluate this.

  • VGhhbmsgeW91IEdlb3JnZS4NCg0KQXMgeW91IHBvaW50ZWQgb3V0LCBteSBtaXN0YWtlIG9mIHRo ZSBkb3VibGUgZXF1YWwgc2lnbiBjYXVzZWQgdGhlIHByb2JsZW0uDQoNClVzaW5nIHRoZSBwYXNz dGhyb3VnaCBwcm9maWxlIGFuZCBpbiB0aGUgQU1JIE9yaWdpbmF0ZSBzZXR0aW5nIHRoZSBWYXJp YWJsZTogR0VPTE9DX1BST0ZJTEUobmFtZSkgaXMgZXhhY3RseSB3aGF0IHdlIG5lZWQuDQpNeSBz b2Z0d2FyZSB3aWxsIHJlY2VpdmUgdGhlIEdFTyBzZXR0aW5ncyBmcm9tIHRoaXJkIHBhcnR5IHNv ZnR3YXJlLg0KSWYgdGhpcmQgcGFydHkgcGFzc2VkIGEgZmllbGQvdmFsdWUgdGhhdCBkb2VzbuKA
    mXQgbWF0Y2ggdGhlIEFzdGVyaXNrIGRlZmF1bHRzLCBvdXIgc29mdHdhcmUgd2lsbCBhZGQgdGhl IEdFT0xPQ19QUk9GSUxFKG5hbWUpIHRvIHRoZSBPcmlnaW5hdGUgVmFyaWFibGUgZmllbGQuDQpU
    aGVuIEkgc2VuZCB0aGUgT3JpZ2luYXRlIHBhY2tldCB0byBBc3RlcmlzayB2aWEgQU1JLg0KDQpU
    aGFuayB5b3UgZm9yIGFsbCB5b3VyIHdvcmsgb24gdGhpcyEhIQ0KDQpEYW4NCg0KRnJvbTogYXN0
    ZXJpc2stdXNlcnMgPGFzdGVyaXNrLXVzZXJzLWJvdW5jZXNAbGlzdHMuZGlnaXVtLmNvbT4gT24g QmVoYWxmIE9mIEdlb3JnZSBKb3NlcGgNClNlbnQ6IFR1ZXNkYXksIEF1Z3VzdCAxNiwgMjAyMiA3
    OjQ5IEFNDQpUbzogQXN0ZXJpc2sgVXNlcnMgTWFpbGluZyBMaXN0IC0gTm9uLUNvbW1lcmNpYWwg RGlzY3Vzc2lvbiA8YXN0ZXJpc2stdXNlcnNAbGlzdHMuZGlnaXVtLmNvbT4NClN1YmplY3Q6IFJl OiBbRXh0ZXJuYWxdIFthc3Rlcmlzay11c2Vyc10gW0V4dGVybmFsXSBHZW8gbG9jYXRpb24gMTgu MTQuMC1yYzEgcXVlc3Rpb24NCg0KDQoNCk9uIE1vbiwgQXVnIDE1LCAyMDIyIGF0IDE6NTkgUE0g RGFuIENyb3BwIDxkYW5AYW10ZWxjby5jb208bWFpbHRvOmRhbkBhbXRlbGNvLmNvbT4+IHdyb3Rl Og0KVGhhbmsgeW91IEdlb3JnZS4NCg0KR29vZCBpZGVhIG9uIHRoZSBwYXNzdGhyb3VnaCBwcm9m aWxlLg0KDQpJcyB0aGVyZSBhIHdheSB0byBzZXQgdGhlIEdFT0xPQ19QUk9GSUxFIHZhbHVlcyBm cm9tIHRoZSBBTUkgT3JpZ2luYXRlIGNvbW1hbmQ/DQoNCkkgdHJpZWQgdGhlIGZvbGxvd2luZywg YnV0IGl0IGRvZXNu4oCZdCBsaWtlIHRoZSBHRU9MT0NfUFJPRklMRSB2YWx1ZXMgaW4gdGhlIHZh cmlhYmxlIHBhcmFtZXRlci4gIElmIHRoZXJlIGlzIGEgd2F5IHRvIGRvIHRoaXMsIHRoZSBwYXNz dGhyb3VnaCB3b3VsZCBzb2x2ZSB0aGUgcHJvYmxlbSBvZiBHZW8gTG9jYXRpb24gaW5mb3JtYXRp b24gc2V0dGluZ3MgbmVlZGluZyB0byBiZSBwcm92aWRlZCBieSBhIHRoaXJkLXBhcnR5IGFwcGxp Y2F0aW9uLg0KDQpBY3Rpb246IE9yaWdpbmF0ZQ0KQ2hhbm5lbDogUEpTSVAvMTIzNEAxOTIuMTY4
    LjMzLjMxPG1haWx0bzoxMjM0QDE5Mi4xNjguMzMuMzE+DQpFeHRlbjogY3JlYXRlY2FsbA0KQ29u dGV4dDogbXljb250ZXh0DQpQcmlvcml0eTogMQ0KVGltZW91dDogNjAwMDANCkNhbGxlcklEOiBK
    b2huIFNtaXRoIDw4MDA1NTUxMjM0Pg0KVmFyaWFibGU6IEdFT0xPQ19QUk9GSUxFKGZvcm1hdCk9
    Y2l2aWNBZGRyZXNzLEdFT0xPQ19QUk9GSUxFKG1ldGhvZCk9TWFudWFsLEdFT0xPQ19QUk9GSUxF
    KGxvY2F0aW9uX2luZm8pPT0iY291bnRyeT1VUyxBMT1GbG9yaWRhLEEzPU9ybGFuZG8sSE5PPTEw MCxSRD1NYWluLFNUUz1TdHJlZXQiLENBTExFUklEKG51bS1wcmVzKT1hbGxvd2VkX3Bhc3NlZF9z Y3JlZW4NCkFzeW5jOiB0cnVlDQoNCg0KWW91J3ZlIGdvdCAyIGVxdWFscyBzaWducyB3aGVuIHlv dSBzZXQgbG9jYXRpb25faW5mbyA6KS4NCkkganVzdCB0cmllZA0KR0VPTE9DX1BST0ZJTEUoZm9y bWF0KT1jaXZpY0FkZHJlc3MsR0VPTE9DX1BST0ZJTEUobG9jYXRpb25faW5mbyk9ImNvdW50cnk9
    VVMsQTM9XCJOZXcgWW9ya1wiIixHRU9MT0NfUFJPRklMRShwaWRmX2VsZW1lbnQpPWRldmljZQ0K
    YW5kIGl0IHdvcmtlZC4NCg0KSSBiZWxpZXZlIHRoaXMgcG9ydGlvbiBiZWxpZXZlIGluZGljYXRl cyBBc3RlcmlzayB0cmVhdHMgdGhlIEdFT0xPQ19QUk9GSUxFKHh4eCkgYXMgR0VPTE9DUFJPRklM
    RVNUQVRVUyB2YXJpYWJsZSBuYW1lLg0KDQpHRU9MT0NQUk9GSUxFU1RBVFVTIGlzIHRoZSB2YXJp YWJsZSBHRU9MT0NfUFJPRklMRSBzZXRzIHRvIGluZGljYXRlDQpzdWNjZXNzIG9yIGZhaWx1cmUu ICBUaGUgdmFsdWUgb2YgIjAiIGluZGljYXRlcyBzdWNjZXNzLiAgV2hhdCB3YXMgdGhlIGFjdHVh bCByZXN1bHQgaW4gdGhlIGNoYW5uZWw/DQoNClswOC8xNSAxMzo0MTo0MS42MDldIERFQlVHWzQy NDI0XSBtYW5hZ2VyLmM6IEV4YW1pbmluZyBBTUkgZXZlbnQ6DQpFdmVudDogVmFyU2V0Xk0NClBy aXZpbGVnZTogZGlhbHBsYW4sYWxsXk0NCkNoYW5uZWw6IFBKU0lQLzE5Mi4xNjguMzMuMzEtMDAw MDAwMDBeTQ0KQ2hhbm5lbFN0YXRlOiAwXk0NCkNoYW5uZWxTdGF0ZURlc2M6IERvd25eTQ0KQ2Fs bGVySUROdW06IDx1bmtub3duPl5NDQpDYWxsZXJJRE5hbWU6IDx1bmtub3duPl5NDQpDb25uZWN0
    ZWRMaW5lTnVtOiA8dW5rbm93bj5eTQ0KQ29ubmVjdGVkTGluZU5hbWU6IDx1bmtub3duPl5NDQpM
    YW5ndWFnZTogZW5eTQ0KQWNjb3VudENvZGU6IDIwXk0NCkNvbnRleHQ6IElTXk0NCkV4dGVuOiBz Xk0NClByaW9yaXR5OiAxXk0NClVuaXF1ZWlkOiAxNjYwNTg4OTAxLjBeTQ0KTGlua2VkaWQ6IDE2
    NjA1ODg5MDEuMF5NDQpWYXJpYWJsZTogR0VPTE9DUFJPRklMRVNUQVRVU15NDQpWYWx1ZTogMF5N
    DQpeTQ0KDQpEYW4NCi0tDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCi0tIEJhbmR3aWR0aCBhbmQgQ29sb2NhdGlv biBQcm92aWRlZCBieSBodHRwOi8vd3d3LmFwaS1kaWdpdGFsLmNvbSAtLQ0KDQpDaGVjayBvdXQg dGhlIG5ldyBBc3RlcmlzayBjb21tdW5pdHkgZm9ydW0gYXQ6IGh0dHBzOi8vY29tbXVuaXR5LmFz dGVyaXNrLm9yZy8NCg0KTmV3IHRvIEFzdGVyaXNrPyBTdGFydCBoZXJlOg0KICAgICAgaHR0cHM6
    Ly93aWtpLmFzdGVyaXNrLm9yZy93aWtpL2Rpc3BsYXkvQVNUL0dldHRpbmcrU3RhcnRlZA0KDQph c3Rlcmlzay11c2VycyBtYWlsaW5nIGxpc3QNClRvIFVOU1VCU0NSSUJFIG9yIHVwZGF0ZSBvcHRp b25zIHZpc2l0Og0KICAgaHR0cDovL2xpc3RzLmRpZ2l1bS5jb20vbWFpbG1hbi9saXN0aW5mby9h c3Rlcmlzay11c2Vycw0K