ZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvUkVBRE1FLnR4dC5pbmZvIGIvcnVudGltZS90dXRvci9SRUFETUUudHh0LmluZm8KaW5kZXggZTdmYTExNC4uMjM4YjExZiAxMDA3NTUKLS0tIGEvcnVudGltZS90dXRvci9SRUFETUUudHh0LmluZm8KKysrIGIvcnVudGltZS90dXRvci9SRUFETUUudHh0LmluZm8KQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvcnVudGltZS90dXRvci90dXRvci5jYSBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuY2EKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjAzYTM0NwotLS0gL2Rldi9udWxsCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuY2EKQEAgLTAsMCArMSw4MDcgQEAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKz0gICAgQiBlIG4gdiBpIG4gZyB1IHQgcyAgIGEgbCAgIHQgdSB0IG8gciAgIGQgZSBsICAgViBJIE0gICAtICAgVmVyc2nzIDEuNSAgID0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgRWwgVmltIOlzIHVuIGVkaXRvciBtb2x0IHBvdGVudCBxdWUgdOkgbW9sdGVzIG9yZHJlcywgbWFzc2VzIGNvbSBwZXIKKyAgIGV4cGxpY2FyLWxlcyB0b3RlcyB1biB0dXRvciBjb20gYXF1ZXN0LiBBcXVlc3QgdHV0b3IgZXN04CBkaXNzZW55YXQKKyAgIHBlciBkZXNjcml1cmUgbGVzIG9yZHJlcyBi4HNpcXVlcyBxdWUgdXMgcGVybWV0aW4gZmVyIHNlcnZpciBlbCBWaW0gY29tCisgICBhIGVkaXRvciBkZSBwcm9w8nNpdCBnZW5lcmFsLgorCisgICBFbCB0ZW1wcyBhcHJveGltYXQgZGUgc2VndWlyIGVsIHR1dG9yIGNvbXBsZXQg6XMgZCd1bnMgMjUgbyAzMCBtaW51dHMKKyAgIGRlcGVuZW50IGRlIHF1YW50IHRlbXBzIGRlZGlxdWV1IGEgZXhwZXJpbWVudGFyLgorCisgICBGZXUgdW5hIGPycGlhIGQnYXF1ZXN0IGZpdHhlciBwZXIgcHJhY3RpY2FyLWhpIChzaSBoZXUgY29tZW7nYXQgYW1iIGVsCisgICBwcm9ncmFtYSB2aW10dXRvciBhaXjyIHF1ZSBlc3RldSBsbGVnaW50IGphIOlzIHVuYSBj8nBpYSkuCisKKyAgIMlzIGltcG9ydGFudCByZWNvcmRhciBxdWUgYXF1ZXN0IHR1dG9yIGVzdOAgcGVuc2F0IHBlciBlbnNlbnlhcgorICAgcHJhY3RpY2FudC4gyXMgYSBkaXIsIHF1ZSBoYXVyZXUgZCdleGVjdXRhciBsZXMgb3JkcmVzIHNpIGxlcyB2b2xldQorICAgYXByZW5kcmUuIFNpIG5vbelzIGxsZWdpdSBlbCB0ZXh0IGVsIG3pcyBwcm9iYWJsZSDpcyBxdWUgbGVzIG9ibGlkZXUuCisKKyAgIEFyYSBhc3NlZ3VyZXUtdm9zIHF1ZSBsYSB0ZWNsYSBkZSBibG9xdWVpZyBkZSBtYWr6c2N1bGVzIG5vIGVzdOAKKyAgIGFjdGl2YWRhIGkgcHJlbWV1IGxhIHRlY2xhICAgaiAgIHBlciBtb3VyZSBlbCBjdXJzb3IgYXZhbGwsIGZpbnMgcXVlCisgICBsYSBsbGnn8yAxLjEgb2N1cGkgY29tcGxldGFtZW50IGxhIHBhbnRhbGxhLgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgTGxp5/MgMS4xOiAgTU9VUkUgRUwgQ1VSU09SCisKKworICAqKiBQZXIgbW91cmUgZWwgY3Vyc29yIHByZW1ldSBsZXMgdGVjbGVzIGgsaixrLGwgdGFsIGNvbSBlc3TgIGluZGljYXQuICoqCisgICAgICAgXgorICAgICAgIGsJUGlzdGE6IExhIGgg6XMgYSBsJ2VzcXVlcnJhIGkgbW91IGVsIGN1cnNvciBjYXAgYSBsJ2VzcXVlcnJhLgorICA8IGgJICBsID4JICAgICAgIExhIGwg6XMgYSBsYSBkcmV0YSBpIG1vdSBlbCBjdXJzb3IgY2FwIGEgbGEgZHJldGEuCisgICAgICAgagkgICAgICAgTGEgaiBzZW1ibGEgdW5hIGZsZXR4YSBjYXAgYXZhbGwuCisgICAgICAgdgorICAxLiBNb3ZldSBlbCBjdXJzb3IgcGVyIGxhIHBhbnRhbGxhIGZpbnMgcXVlIHVzIHNlbnRpdSBjb25mb3J0YWJsZXMuCisKKyAgMi4gTWFudGluZ3VldSBwcmVtdWRhIGxhIHRlY2xhIGF2YWxsIChqKSB1bmEgZXN0b25hLgorLS0tPiBBcmEgc2FiZXUgY29tIG1vdXJlLXVzIGZpbnMgYSBsYSBwcvJ4aW1hIGxsaefzLgorCisgIDMuIFVzYW50IGxhIHRlY2xhIGF2YWxsLCBhbmV1IGEgbGEgbGxp5/MgMS4yLgorCitOb3RhOiBTaSBubyBlc3RldSBzZWd1cnMgZGUgbGEgdGVjbGEgcXVlIGhldSBwcmVtdXQsIHByZW1ldSA8RVNDPiBwZXIgdG9ybmFyCisgICAgICBhbCBtb2RlIE5vcm1hbC4gTGxhdm9ycyB0b3JuZXUgYSB0ZWNsZWphciBsJ29yZHJlIHF1ZSB2b2ztZXUuCisKK05vdGE6IExlcyB0ZWNsZXMgZGUgbW92aW1lbnQgZGVsIGN1cnNvciAoZmxldHhlcykgdGFtYukgZnVuY2lvbmVuLiBQZXLyIHVzYW50CisgICAgICBoamtsIGFuaXJldSBt6XMgcuBwaWQsIHF1YW4gdXMgaGkgaOBnaXUgYWNvc3R1bWFudC4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGxp5/MgMS4yOiBFTlRSQVIgSSBTT1JUSVIgREVMIFZJTQorCisKKyAgISEgTk9UQTogQWJhbnMgZGUgc2VndWlyIGVscyBwYXNzb3Mgc2Vn/GVudHMgbGxlZ2l1ICp0b3RhKiBsYSBsbGnn8yEhCisKKyAgMS4gUHJlbWV1IDxFU0M+IChwZXIgZXN0YXIgc2VndXJzIHF1ZSBlc3RldSBlbiBlbCBtb2RlIE5vcm1hbCkuCisKKyAgMi4gVGVjbGVnZXU6CQkJOnEhIDxFTlRSQVI+LgorCistLS0+IEFtYiBhaXjyIHNvcnRpcmV1IGRlIGwnZWRpdG9yIFNFTlNFIGRlc2FyIGVscyBjYW52aXMgcXVlIGjgZ2l1IHBvZ3V0CisgICAgIGZlci4gU2kgdm9sZXUgZGVzYXIgZWxzIGNhbnZpcyB0ZWNsZWdldToKKwkJCQk6d3EgIDxFTlRSQVI+CisKKyAgMy4gUXVhbiB2ZWdldSBsJ2ludHJvZHVjdG9yIGRlIGxhIHNoZWxsIGVzY3Jpdml1IGwnb3JkcmUgYW1iIGxhIHF1YWwgaGV1CisgICAgIGFycmliYXQgYSBhcXVlc3QgdHV0b3IuIFBvZHJpYSBzZXI6ICAgdmltdHV0b3IgPEVOVFJBUj4KKwkJCSAgICAgTyBi6ToJICAgdmltIHR1dG9yIDxFTlRSQVI+CisKKy0tLT4gJ3ZpbScg6XMgbCdlZGl0b3IgdmltLCBpICd0dXRvcicg6XMgZWwgZml0eGVyIHF1ZSB2b2xldSBlZGl0YXIuCisKKyAgNC4gU2kgaGV1IG1lbW9yaXR6YXQgbGVzIG9yZHJlcywgZmV1IGVscyBwYXNzb3MgYW50ZXJpb3JzLCBkZSBsJzEgYWwgMywKKyAgICAgcGVyIHNvcnRpciBpIHRvcm5hciBhIGVudHJhciBhIGwnZWRpdG9yLiBMbGF2b3JzIG1vdmV1IGVsIGN1cnNvciBhdmFsbAorICAgICBmaW5zIGxhIGxsaefzIDEuMy4KK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMbGnn8yAxLjM6IEVESVRBUiBURVhUIC0gRVNCT1JSQVIKKworCisgICoqIEVuIG1vZGUgTm9ybWFsIHByZW1ldSAgeCAgcGVyIGVzYm9ycmFyIGVsIGNhcuBjdGVyIGRlIHNvdGEgZWwgY3Vyc29yLiAqKgorCisgIDEuIE1vdmV1IGVsIGN1cnNvciBmaW5zIGxhIGztbmlhIHF1ZSBoaSBoYSBt6XMgYXZhbGwgbWFyY2FkYSBhbWIgLS0tPi4KKworICAyLiBQb3NldSBlbCBjdXJzb3IgYSBzb2JyZSBlbCBjYXLgY3RlciBxdWUgY2FsIGVzYm9ycmFyLCBwZXIgY29ycmVnaXIgZWxzCisgICAgIGVycm9ycy4KKworICAzLiBQcmVtZXUgbGEgdGVjbGEgICB4ICAgcGVyIGVzYm9ycmFyIGVsIGNhcuBjdGVyLgorCisgIDQuIFJlcGV0aXUgZWxzIHBhc3NvcyAyIGkgMyBmaW5zIHF1ZSBsYSBmcmFzZSBzaWd1aSBjb3JyZWN0YS4KKworLS0tPiBVbm5hIHZhYWNhIHZ2YSBzYWx0dGFyIHNvYmJyZWUgbGEgbGxsdW5hLgorCisgIDUuIEFyYSBxdWUgbGEgbO1uaWEg6XMgY29ycmVjdGEsIGFuZXUgYSBsYSBsbGnn8yAxLjQuCisKK05PVEE6IE1lbnRyZSBhbmV1IGZlbnQgbm8gdHJhY3RldSBkZSBtZW1vcml0emFyLCBwcmFjdGlxdWV1IGkgcHJvdS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExsaefzIDEuNDogRURJVEFSIFRFWFQgLSBJTlNFUklSCisKKworCSAgICAqKiBFbiBtb2RlIE5vcm1hbCBwcmVtZXUgICBpICAgcGVyIGluc2VyaXIgdGV4dC4gKioKKworICAxLiBNb3ZldSBlbCBjdXJzb3IgYXZhbGwgZmlucyBsYSBwcmltZXJhIGztbmlhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gUGVyIGZlciBsYSBwcmltZXJhIGztbmlhIGlndWFsIHF1ZSBsYSBzZWdvbmEgcG9zZXUgZWwgY3Vyc29yIHNvYnJlIGVsCisgICAgIHByaW1lciBjYXLgY3RlciBQT1NURVJJT1IgYWwgdGV4dCBxdWUgcydoYSBkJ2luc2VyaXIuCisKKyAgMy4gUHJlbWV1IGxhIHRlY2xhICBpICBpIGVzY3Jpdml1IGVsIHRleHQgcXVlIGZhbHRhLgorCisgIDQuIFF1YW4gaOBnaXUgYWNhYmF0IHByZW1ldSA8RVNDPiBwZXIgdG9ybmFyIGFsIG1vZGUgTm9ybWFsLiBSZXBldGl1CisgICAgIGVscyBwYXNzb3MgMiwgMyBpIDQgcGVyIGNvcnJlZ2lyIGxhIGZyYXNlLgorCistLS0+IEZhbHRlbiBjYXJjdHJzIGVuIGFxdWVzdGEgLgorLS0tPiBGYWx0ZW4gYWxndW5zIGNhcuBjdGVycyBlbiBhcXVlc3RhIGztbmlhLgorCisgIDUuIFF1YW4gdXMgdHJvYmV1IGPybW9kZXMgaW5zZXJpbnQgdGV4dCBhbmV1IGFsIHN1bWFyaSBkZSBiYWl4LgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgIExMScfTIDEgU1VNQVJJCisKKworICAxLiBFbCBjdXJzb3IgZXMgbW91IGFtYiBsZXMgZmxldHhlcyBvIGLpIGFtYiBsZXMgdGVjbGVzIGhqa2wuCisJIGggKGVzcXVlcnJhKQlqIChhdmFsbCkgICAgICAgayAoYW11bnQpICAgIGwgKGRyZXRhKQorCisgIDIuIFBlciBlbnRyYXIgYWwgVmltIChkZXMgZGUgbGEgc2hlbGwpIGVzY3Jpdml1OiAgdmltIEZJVFhFUiA8RU5UUkFSPgorCisgIDMuIFBlciBzb3J0aXIgdGVjbGVnZXU6ICAgPEVTQz4gICA6cSEJIDxFTlRSQVI+ICBwZXIgZGVzY2FydGFyIGVscyBjYW52aXMuCisJICAgTyBCySB0ZWNsZWdldTogICA8RVNDPiAgIDp3cQkgPEVOVFJBUj4gIHBlciBkZXNhciBlbHMgY2FudmlzLgorCisgIDQuIFBlciBlc2JvcnJhciBlbCBjYXLgY3RlciBkZSBzb3RhIGVsIGN1cnNvciBlbiBlbCBtb2RlIE5vcm1hbCBwcmVtZXU6ICB4CisKKyAgNS4gUGVyIGluc2VyaXIgdGV4dCBvbiBoaSBoYSBlbCBjdXJzb3IsIGVuIG1vZGUgTm9ybWFsLCBwcmVtZXU6CisJIGkgICAgIGVzY3Jpdml1IGVsIHRleHQgICAgPEVTQz4KKworTk9UQTogTGEgdGVjbGEgPEVTQz4gdXMgcG9ydGFy4CBhbCBtb2RlIE5vcm1hbCBvIGNhbmNlbLdsYXLgIHVuYSBvcmRyZQorICAgICAgcXVlIGVzdGlndWkgYSBtaXRnZXMuCisKK0FyYSBjb250aW51ZXUgYW1iIGxhIGxsaefzIDIuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGxp5/MgMi4xOiBPUkRSRVMgUEVSIEVTQk9SUkFSCisKKworICAgICAgICoqIFRlY2xlZ2V1ICBkdyAgcGVyIGVzYm9ycmFyIGZpbnMgYWwgZmluYWwgZCd1bmEgcGFyYXVsYS4gKioKKworICAxLiBQcmVtZXUgIDxFU0M+ICBwZXIgZXN0YXIgc2VndXJzIHF1ZSBlc3RldSBlbiBtb2RlIG5vcm1hbC4KKworICAyLiBNb3ZldSBlbCBjdXJzb3IgYXZhbGwgZmlucyBsYSBs7W5pYSBtYXJjYWRhIGFtYiAtLS0+LgorCisgIDMuIE1vdmV1IGVsIGN1cnNvciBmaW5zIGVsIHByaW5jaXBpIGRlIGxhIHBhcmF1bGEgcXVlIHMnaGEgZCdlc2JvcnJhci4KKworICA0LiBUZWNsZWdldSAgIGR3ICBwZXIgZmVyIGRlc2FwYXLoaXhlciBsYSBwYXJhdWxhLgorCitOT1RBOiBMZXMgbGxldHJlcyBkdyBhcGFyZWl4ZXJhbiBhIGxhIGztbmlhIGRlIGJhaXggZGUgbGEgcGFudGFsbGEgbWVudHJlCisgICAgICBsZXMgYW5ldSBlc2NyaXZpbnQuIFNpIHVzIGVxdWl2b3F1ZXUgcHJlbWV1IDxFU0M+IGkgdG9ybmV1IGEgY29tZW7nYXIuCisKKy0tLT4gSGkgaGFuIGFsZ3VuZXMgcGFyYXVsZXMgZGl2ZXJ0aXQgcXVlIG5vIHBlcnRhbnllbiBwYXBlciBhIGFxdWVzdGEgZnJhc2UuCisKKyAgNS4gUmVwZXRpdSBlbCBwYXNzb3MgMyBpIDQgZmlucyBxdWUgbGEgZnJhc2Ugc2lndWkgY29ycmVjdGEgaSBjb250aW51ZXUgYQorICAgICBsYSBsbGnn8yAyLjIuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICBMbGnn8yAyLjI6IE3JUyBPUkRSRVMgUEVSIEVTQk9SUkFSCisKKworCSoqIEVzY3Jpdml1ICBkJCAgcGVyIGVzYm9ycmFyIGZpbnMgYWwgZmluYWwgZGUgbGEgbO1uaWEuICoqCisKKyAgMS4gUHJlbWV1ICA8RVNDPiAgcGVyIGVzdGFyIHNlZ3VycyBxdWUgZXN0ZXUgZW4gZWwgbW9kZSBOb3JtYWwuCisKKyAgMi4gTW92ZXUgZWwgY3Vyc29yIGF2YWxsIGZpbnMgYSBsYSBs7W5pYSBtYXJjYWRhIGFtYiAtLS0+LgorCisgIDMuIE1vdmV1IGVsIGN1cnNvciBmaW5zIGVsIGZpbmFsIGRlIGxhIGztbmlhIGNvcnJlY3RhCisgICAgIChERVNQUslTIGRlbCBwcmltZXIgLiApLgorCisgIDQuIFRlY2xlZ2V1ICAgZCQgICBwZXIgZXNib3JyYXIgZmlucyBhbCBmaW5hbCBkZSBsYSBs7W5pYS4KKworLS0tPiBBbGf6IGhhIGVzY3JpdCBlbCBmaW5hbCBkJ2FxdWVzdGEgbO1uaWEgZG9zIGNvcHMuIGztbmlhIGRvcyBjb3BzLgorCisgIDUuIEFuZXUgYSBsYSBsbGnn8yAyLjMgcGVyIGVudGVuZHJlIHF16CBlc3TgIHBhc3NhbnQuCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGxp5/MgMi4zOiBTT0JSRSBPUkRSRVMgSSBPQkpFQ1RFUworCisKKyAgRWwgZm9ybWF0IGRlIGwnb3JkcmUgZCdlc2JvcnJhciAgZCAg6XMgZWwgc2Vn/GVudDoKKworCSBbbm9tYnJlXSAgIGQJb2JqZWN0ZQkgICAgTyBCySAgICAgZAkgW25vbWJyZV0gICBvYmplY3RlCisgIE9uOgorICAgIG5vbWJyZSAgLSDpcyBlbCBub21icmUgZGUgY29wcyBxdWUgcydoYSBkJ2V4ZWN1dGFyIChvcGNpb25hbCwgb21pc3Np8z0xKS4KKyAgICBkICAgICAgIC0g6XMgbCdvcmRyZSBwZXIgZXNib3JyYXIuCisgICAgb2JqZWN0ZSAtIOlzIGxhIGNvc2EgYW1iIGxhIHF1YWwgb3BlcmFyIChsbGlzdGEgYSBiYWl4KS4KKworICBVbmEgcGV0aXRhIGxsaXN0YSBkJ29iamVjdGVzOgorICAgIHcgLSBkZXMgZGVsIGN1cnNvciBmaW5zIGFsIGZpbmFsIGRlIGxhIHBhcmF1bGEsIGluY2xvZW50LWhpIGwnZXNwYWkuCisgICAgZSAtIGRlcyBkZWwgY3Vyc29yIGZpbnMgYWwgZmluYWwgZGUgbGEgcGFyYXVsYSwgU0VOU0UgaW5jbG91cmUgbCdlc3BhaS4KKyAgICAkIC0gZGVzIGRlbCBjdXJzb3IgZmlucyBhbCBmaW5hbCBkZSBsYSBs7W5pYS4KKworTk9UQTogIFBlciBhbHMgYXZlbnR1cmVyczogc2kgdGVjbGVnZXUgbm9t6XMgbCdvYmplY3RlLCBlbiBlbCBtb2RlIE5vcm1hbCwKKyAgICAgICBzZW5zZSBjYXAgb3JkcmUsIGVsIGN1cnNvciBlcyBtb3Vy4CB0YWwgY29tIGVzdOAgZXNwZWNpZmljYXQgYSBsYQorICAgICAgIGxsaXN0YSBkJ29iamVjdGVzLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgTGxp5/MgMi40OiBVTkEgRVhDRVBDSdMgQSAnT1JEUkUtT0JKRUNURScKKworCisJICAgICAgICoqIFRlY2xlZ2V1ICAgZGQgICBlc2JvcnJhciB0b3RhIGxhIGztbmlhLiAqKgorCisgIENvbSBxdWUgbW9sdCBzb3ZpbnQgcydoYW4gZCdlbGltaW5hciBs7W5pZXMgc2VuY2VyZXMgZWxzIGRpc3NlbnlhZG9ycyBkZWwKKyAgVmkgdmFuIGNyZXVyZSBxdWUgc2VyaWEgbelzIGbgY2lsIHRlY2xlamFyIGRkIHBlciBlc2JvcnJhciB0b3RhIGxhIGztbmlhLgorCisgIDEuIE1vdmV1IGVsIGN1cnNvciBhIGxhIHNlZ29uYSBs7W5pYSBkZSBsYSBmcmFzZSBkZSBiYWl4LgorICAyLiBUZWNsZWdldSAgZGQgIHBlciBlc2JvcnJhciBsYSBs7W5pYS4KKyAgMy4gQXJhIGFuZXUgYSBsYSBxdWFydGEgbO1uaWEuCisgIDQuIFRlY2xlZ2V1ICAyZGQgIHBlciBlc2JvcnJhciBkdWVzIGztbmllcyAocmVjb3JkZXUgbm9tYnJlLW9yZHJlLW9iamVjdGUpLgorCisgICAgICAxKSAgTGVzIHJvc2VzIHPzbiB2ZXJtZWxsZXMsCisgICAgICAyKSAgRWwgZmFuZyDpcyBkaXZlcnRpdCwKKyAgICAgIDMpICBMZXMgdmlvbGV0ZXMgc/NuIGJsYXZlcywKKyAgICAgIDQpICBUaW5jIHVuIGNvdHhlLAorICAgICAgNSkgIEVscyByZWxsb3RnZXMgZGl1ZW4gbCdob3JhLAorICAgICAgNikgIEVsIHN1Y3JlIOlzIGRvbOcsCisgICAgICA3KSAgSWd1YWwgcXVlIHR1LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBMbGnn8yAyLjU6IEwnT1JEUkUgREVTRkVSCisKKworICoqIFByZW1ldSAgdSAgcGVyIGRlc2ZlciBlbHMg+mx0aW1zIGNhbnZpcywgIFUgIHBlciBhcnJlZ2xhciB0b3RhIGxhIGztbmlhLiAqKgorCisgIDEuIE1vdmV1IGVsIGN1cnNvciBzb2JyZSBlbCBwcmltZXIgZXJyb3IgZGUgbO1uaWEgZGUgYmFpeCBtYXJjYWRhIGFtYiAtLS0+CisgIDIuIFByZW1ldSAgeCAgcGVyIGVzYm9ycmFyIGVsIGNhcuBjdGVyIG5vIGRlc2l0amF0LgorICAzLiBBcmEgcHJlbWV1ICB1ICBwZXIgZGVzZmVyIGwn+mx0aW1hIG9yZHJlIGV4ZWN1dGFkYS4KKyAgNC4gQXF1ZXN0IGNvcCBjb3JyZWdpdSB0b3RzIGVscyBlcnJvcnMgZGUgbGEgbO1uaWEgYW1iIGwnb3JkcmUgIHguCisgIDUuIEFyYSBwcmVtZXUgIFUgIHBlciByZXN0YWJsaXIgbGEgbO1uaWEgYWwgc2V1IGVzdGF0IG9yaWdpbmFsLgorICA2LiBBcmEgcHJlbWV1ICB1ICB1bnMgcXVhbnRzIGNvcHMgcGVyIGRlc2ZlciAgVSAgaSBsZXMgb3JkcmVzIGFudGVyaW9ycy4KKyAgNy4gQXJhIHByZW1ldSAgQ09OVFJPTC1SICAobGVzIGR1ZXMgdGVjbGVzIGFsIG1hdGVpeCB0ZW1wcykgdW5zIHF1YW50cyBjb3BzCisgICAgIHBlciByZWZlciBsZXMgb3JkcmVzLgorCistLS0+IENvcnJlZWdpdSBlbHMgZXJyb3JzIGQnYXFxdWVzdGEgbO1uaWEgaSBkZXNzZmV1LWxvcyBhYW1iIGRlc2Zlci4KKworICA4LiBBcXVlc3RlcyBvcmRyZXMgc/NuIG1vbHQg+nRpbHMuIEFyYSBhbmV1IGFsIHN1bWFyaSBkZSBsYSBsbGnn8yAyLgorCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBMTEnH0yAyIFNVTUFSSQorCisKKyAgMS4gUGVyIGVzYm9ycmFyIGRlbCBjdXJzb3IgYWwgZmluYWwgZGUgbGEgcGFyYXVsYSB0ZWNsZWdldTogICAgIGR3CisKKyAgMi4gUGVyIGVzYm9ycmFyIGRlbCBjdXJzb3IgYWwgZmluYWwgZGUgbGEgbO1uaWEgdGVjbGVnZXU6ICAgICAgIGQkCisKKyAgMy4gUGVyIGVzYm9ycmFyIHVuYSBs7W5pYSBzZW5jZXJhIHRlY2xlZ2V1OiAgICAgZGQKKworICA0LiBFbCBmb3JtYXQgZGUgcXVhbHNldm9sIG9yZHJlIGRlbCBtb2RlIE5vcm1hbCDpczoKKworICAgICAgIFtub21icmVdICAgb3JkcmUgICBvYmplY3RlICAgICBPIELJICAgICBvcmRyZQlbbm9tYnJlXSAgIG9iamVjdGUKKyAgICAgb246CisgICAgICAgbm9tYnJlICAtIOlzIHF1YW50cyBjb3BzIHJlcGV0aXIgbCdvcmRyZQorICAgICAgIG9yZHJlICAgLSDpcyBxdeggZmVyLCBjb20gYXJhICBkICBwZXIgZXNib3JyYXIKKyAgICAgICBvYmplY3RlIC0g6XMgYW1iIHF16CBzJ2hhIGQnYWN0dWFyLCBjb20gYXJhICB3ICAocGFyYXVsYSksCisJCSAkIChmaW5zIGEgZmluYWwgZGUgbO1uaWEpLCBldGMuCisKKyAgNS4gUGVyIGRlc2ZlciBsZXMgYWNjaW9ucyBhbnRlcmlvcnMgcHJlbWV1OgkJdQorICAgICBQZXIgZGVzZmVyIHRvdHMgZWwgY2FudmlzIGVuIHVuYSBs7W5pYSBwcmVtZXU6CVUKKyAgICAgUGVyIGRlc2ZlciBsJ29yZHJlIGRlc2ZlciBwcmVtZXU6CQkJQ1RSTC1SCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGxp5/MgMy4xOiBMJ09SRFJFICdQT1NBUicKKworCisgKiogUHJlbWV1ICBwICBwZXIgcG9zYXIgbCf6bHRpbWEgY29zYSBxdWUgaGV1IGVzYm9ycmF0IGRlc3By6XMgZGVsIGN1cnNvci4gKioKKworCisgIDEuIE1vdmV1IGVsIGN1cnNvciBhIGxhIHByaW1lcmEgbO1uaWEgZGUgbGxpc3RhIGRlIGJhaXguCisKKyAgMi4gVGVjbGVnZXUgIGRkICBwZXIgZXNib3JyYXIgbGEgbO1uaWEgaSBkZXNhci1sYSBhIGxhIG1lbfJyaWEuCisKKyAgMy4gTW92ZXUgZWwgY3Vyc29yIGEgbGEgbO1uaWEgQU5URVJJT1Igb24gaGF1cmlhIGQnYW5hci4KKworICA0LiBFbiBtb2RlIE5vcm1hbCwgcHJlbWV1ICBwICBwZXIgaW5zZXJpciBsYSBs7W5pYS4KKworICA1LiBSZXBldGl1IGVscyBwYXNzb3MgMiwgMyBpIDQgcGVyIG9yZGVuYXIgbGVzIGztbmllcyBjb3JyZWN0YW1lbnQuCisKKyAgICAgZCkgUG90cyBhcHJlbmRyZSB0dT8KKyAgICAgYikgTGVzIHZpb2xldGVzIHPzbiBibGF2ZXMsCisgICAgIGMpIEwnaW50ZWy3bGln6G5jaWEgcydhcHLobiwKKyAgICAgYSkgTGVzIHJvc2VzIHPzbiB2ZXJtZWxsZXMsCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICBMbGnn8yAzLjI6IEwnT1JEUkUgU1VCU1RJVFVJUgorCisKKyAqKiBQcmVtZXUgIHIgIGkgdW4gY2Fy4GN0ZXIgcGVyIHN1YnN0aXR1aXIgZWwgY2Fy4GN0ZXIgZGUgc290YSBlbCBjdXJzb3IuICoqCisKKyAgMS4gTW92ZXUgZWwgY3Vyc29yIGEgbGEgcHJpbWVyYSBs7W5pYSBkZSBzb3RhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gTW92ZXUgZWwgY3Vyc29yIGEgc29icmUgZGVsIHByaW1lciBjYXLgY3RlciBlcXVpdm9jYXQuCisKKyAgMy4gUHJlbWV1ICByICBpIHRvdCBzZWd1aXQgZWwgY2Fy4GN0ZXIgY29ycmVjdGUgcGVyIGNvcnJlZ2lyIGwnZXJyb3IuCisKKyAgNC4gUmVwZXRpdSBlbHMgcGFzc29zIDIgaSAzIGZpbnMgcXVlIGxhIGztbmlhIHNpZ3VpIGNvcnJlY3RhLgorCistLS0+ICBRdWVuIHZhbiBlc2Nyb3VyZSBhcXVlcnRhIGztbmlhLCBhbGdoIHZhIGFwcmV0YXIgdGlrbGVzIGVxdWl2b2NhZGVzIQorLS0tPiAgUXVhbiB2YW4gZXNjcml1cmUgYXF1ZXN0YSBs7W5pYSwgYWxn+iB2YSBhcHJldGFyIHRlY2xlcyBlcXVpdm9jYWRlcyEKKworICA1LiBBcmEgY29udGludWV1IGEgbGEgbGxp5/MgMy4yLgorCitOT1RBOiBSZWNvcmRldSBxdWUgaGV1IGRlIHByYWN0aWNhciwgbm8gbWVtb3JpdHphci4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJIExsaefzIDMuMzogTCdPUkRSRSBDQU5WSUFSCisKKworCSoqIFBlciBjYW52aWFyIHVuYSBwYXJ0IG8gdG90YSBsYSBwYXJhdWxhLCBlc2NyaXZpdSAgY3cgLiAqKgorCisgIDEuIE1vdmV1IGVsIGN1cnNvciBhIGxhIHByaW1lcmEgbO1uaWEgZGUgc290YSBtYXJjYWRhIGFtYiAtLS0+LgorCisgIDIuIFBvc2V1IGVsIGN1cnNvciBzb2JyZSBsYSB1IGRlICdsdWdoYycuCisKKyAgMy4gVGVjbGVnZXUgIGN3ICBpIGNvcnJlZ2l1IGxhIHBhcmF1bGEgKGVuIGFxdWVzdCBjYXMgZXNjcml2aXUgJ+1uaWEnLikKKworICA0LiBQcmVtZXUgPEVTQz4gaSBhbmV1IGFsIHNlZ/xlbnQgZXJyb3IuCisKKyAgNS4gUmVwZXRpdSBlbHMgcGFzc29zIDMgaSA0IGZpbnMgcXVlIGxlcyBkdWVzIGZyYXNlcyBzaWd1aW4gaWd1YWxzLgorCistLS0+IEFxdWVzdGEgbHVnaGMgdOkgYWxndW5lcyBwYXJhZHNrbCBxdWUgcydoYW4gZGUgY2RkZGYuCistLS0+IEFxdWVzdGEgbO1uaWEgdOkgYWxndW5lcyBwYXJhdWxlcyBxdWUgcydoYW4gZGUgY2Fudmlhci4KKworTm90ZXUgcXVlICBjdyAgbm8gbm9t6XMgY2FudmlhIGxhIHBhcmF1bGEsIHRhbWLpIHVzIHBvc2EgZW4gbW9kZSBkJ2luc2VyY2nzLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMbGnn8yAzLjQ6IE3JUyBDQU5WSVMgQU1CIGMKKworCisgKiogTCdvcmRyZSBjYW52aWFyIHMndXNhIGFtYiBlbHMgbWF0ZWl4b3Mgb2JqZWN0ZXMgcXVlIGwnb3JkcmUgZXNib3JyYXIuICoqCisKKyAgMS4gTCdvcmRyZSBjYW52aWFyIGZ1bmNpb25hIGlndWFsIHF1ZSBsYSBkJ2VzYm9ycmFyLiBFbCBmb3JtYXQg6XM6CisKKyAgICAgICBbbm9tYnJlXSAgIGMgICBvYmplY3RlCSAgTyBCyQkgICAgYwlbbm9tYnJlXSAgIG9iamVjdGUKKworICAyLiBFbHMgb2JqZWN0ZXMgc/NuIGVscyBtYXRlaXhvcywgY29tICB3ICAocGFyYXVsYSksICQgKGZpbmFsIGRlIGztbmlhKSwgZXRjLgorCisgIDMuIE1vdmV1IGVsIGN1cnNvciBmaW5zIGxhIHByaW1lcmEgbO1uaWEgbWFyY2FkYSBhbWIgLS0tPi4KKworICA0LiBBdmFuY2V1IGZpbnMgYWwgcHJpbWVyIGVycm9yLgorCisgIDUuIFByZW1ldSAgYyQgIHBlciBmZXIgbGEgbO1uaWEgaWd1YWwgcXVlIGxhIHNlZ29uYSBpIHByZW1ldSA8RVNDPi4KKworLS0tPiBFbCBmaW5hbCBkJ2FxdWVzdGEgbO1uaWEgbmVjZXNzaXRhIGNhbnZpcyBwZXIgc2VyIGlndWFsIHF1ZSBsYSBzZWdvbmEuCistLS0+IEVsIGZpbmFsIGQnYXF1ZXN0YSBs7W5pYSBzJ2hhIGRlIGNvcnJlZ2lyIGFtYiBsJ29yZHJlIGMkLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkJTExJx9MgMyBTVU1BUkkKKworCisgIDEuIFBlciB0b3JuYXIgYSBwb3NhciBlbCB0ZXh0IHF1ZSBzJ2hhIGVzYm9ycmF0LCBwcmVtZXUgIHAgLiBBaXjyIHBvc2EgZWwKKyAgICAgdGV4dCBlc2JvcnJhdCBERVNQUslTIGRlbCBjdXJzb3IgKHNpIGhldSBlc2JvcnJhdCB1bmEgbO1uaWEgYW5pcuAgYQorICAgICBwYXJhciBhIGxhIGztbmlhIFNFR9xFTlQgZCdvbiBoaSBoYSBlbCBjdXJzb3IpLgorCisgIDIuIFBlciBzdWJzdGl0dWlyIGVsIGNhcuBjdGVyIGRlIHNvdGEgZWwgY3Vyc29yLCBwcmVtZXUgIHIgIGkgdG90IHNlZ3VpdAorICAgICBlbCBjYXLgY3RlciBxdWUgaGEgZGUgcmVlbXBsYedhciBsJ29yaWdpbmFsLgorCisgIDMuIEwnb3JkcmUgY2FudmlhciBwZXJtZXQgY2FudmlhciBsJ29iamVjdGUgZXNwZWNpZmljYXQgZGVzIGRlbCBjdXJzb3IKKyAgICAgZmlucyBlbCBmaW5hbCBkZSBsJ29iamVjdGUuIFBlciBleGVtcGxlLCAgY3cgIGNhbnZpYSBlbCBxdWUgaGkgaGEgZGVzCisgICAgIGRlbCBjdXJzb3IgZmlucyBhbCBmaW5hbCBkZSBsYSBwYXJhdWxhLCBpICBjJCAgZmlucyBhbCBmaW5hbCBkZSBs7W5pYS4KKworICA0LiBFbCBmb3JtYXQgZGUgbCdvcmRyZSBjYW52aWFyIOlzOgorCisJIFtub21icmVdICAgYwlvYmplY3RlCSAgICAgIE8gQskJYyAgIFtub21icmVdICAgb2JqZWN0ZQorCitBcmEgYW5ldSBhIGxhIHBy8nhpbWEgbGxp5/MuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgIExsaefzIDQuMTogU0lUVUFDSdMgSSBFU1RBVCBERUwgRklUWEVSCisKKworICAqKiBQcmVtZXUgQ1RSTC1nIHBlciB2ZXVyZSBsYSBzaXR1YWNp8yBkaW5zIGRlbCBmaXR4ZXIgaSBlbCBzZXUgZXN0YXQuCisgICAgIFByZW1ldSBTSElGVC1HIHBlciBhbmFyIGEgdW5hIGztbmlhIGRldGVybWluYWRhLiAqKgorCisgIE5vdGE6IE5vIHByb3ZldSByZXMgZmlucyBxdWUgaOBnaXUgbGxlZ2l0IFRPVEEgbGEgbGxp5/MhIQorCisgIDEuIE1hbnRpbmd1ZXUgcHJlbXVkYSBsYSB0ZWNsYSBDb250cm9sIGkgcHJlbWV1ICBnIC4gQSBsYSBwYXJ0IGRlIGJhaXggZGUKKyAgICAgbGEgcOBnaW5hIGFwYXJlaXhlcuAgdW4gbO1uaWEgYW1iIGVsIG5vbSBkZWwgZml0eGVyIGkgbGEgbO1uaWEgZW4gbGEKKyAgICAgcXVhbCB1cyB0cm9iZXUuIFJlY29yZGV1IGVsIG76bWVybyBkZSBsYSBs7W5pYSBwZWwgUGFzIDMuCisKKyAgMi4gUHJlbWV1IFNoaWZ0LUcgcGVyIGFuYXIgYWwgZmluYWwgZGUgdG90IGRlbCBmaXR4ZXIuCisKKyAgMy4gVGVjbGVnZXUgZWwgbvptZXJvIGRlIGxhIGztbmlhIG9uIOlyZXUgaSBkZXNwculzIHByZW1ldSBTaGlmdC1HLiBBaXjyCisgICAgIHVzIHRvcm5hcuAgYSBsYSBs7W5pYSBvbiDpcmV1IHF1YW4gaGV1IHByZW11dCBwZXIgcHJpbWVyIGNvcCBDdHJsLWcuCisgICAgIChRdWFuIHRlY2xlZ2V1IGVsIG76bWVybyBOTyBlcyB2ZXVy4CBhIGxhIHBhbnRhbGxhLikKKworICA0LiBBcmEgZXhlY3V0ZXUgZWxzIHBhc3NvcyBkZSBsJzEgYWwgMy4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBMbGnn8yA0LjI6IEwnT1JEUkUgQ0VSQ0FSCisKKworCSAgICoqIFByZW1ldSAgLyAgc2VndWl0IGRlIGxhIGZyYXNlIHF1ZSB2dWxndWV1IGNlcmNhci4gKioKKworICAxLiBFbiBlbCBtb2RlIE5vcm1hbCBwcmVtZXUgZWwgY2Fy4GN0ZXIgIC8gLiBOb3RldSBxdWUgZWwgY3Vyc29yIGFwYXJlaXgKKyAgICAgYSBsYSBwYXJ0IGRlIGJhaXggZGUgbGEgcGFudGFsbGEgaWd1YWwgcXVlIGFtYiBsJ29yZHJlICA6IC4KKworICAyLiBBcmEgZXNjcml2aXUgJ2VycnJvb3InIDxFTlRSQVI+LiBBcXVlc3RhIOlzIGxhIHBhcmF1bGEgcXVlIHZvbGV1CisgICAgIGNlcmNhci4KKworICAzLiBQZXIgdG9ybmFyIGEgY2VyY2FyIGxhIG1hdGVpeGEgZnJhc2UsIHByZW1ldSAgbiAuCisgICAgIFBlciBjZXJjYXIgbGEgbWF0ZWl4YSBmcmFzZSBlbiBkaXJlY2Np8yBjb250cmFyaWEsIHByZW1ldSBTaGlmdC1OIC4KKworICA0LiBTaSB2b2xldSBjZXJjYXIgdW5hIGZyYXNlIGVuIGRpcmVjY2nzIGFzY2VuZGVudCwgdXNldSBsJ29yZHJlICA/ICBlbgorICAgICBsbG9jIGRlIC8uCisKKy0tLT4gImVycnJvb3IiIG5vIOlzIGNvbSBzJ2VzY3JpdSBlcnJvcjsgZXJycm9vciDpcyB1biBlcnJvci4KKworTm90ZTogUXVhbiBsYSBjZXJjYSBhcnJpYmkgYWwgZmluYWwgZGVsIGZpdHhlciBjb250aW51YXLgIGEgbCdpbmljaS4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgIExsaefzIDQuMzogQ0VSQ0EgREUgUEFSyE5URVNJUworCisKKwkgICAqKiBQcmVtZXUgICUgIHBlciBjZXJjYXIgZWwgKSxdLCBvIH0gY29ycmVzcG9uZW50LiAqKgorCisgIDEuIFBvc2V1IGVsIGN1cnNvciBlbiBxdWFsc2V2b2wgKCwgWywgbyB7IGRlIGxhIGztbmlhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gQXJhIHByZW1ldSBlbCBjYXLgY3RlciAgJSAuCisKKyAgMy4gRWwgY3Vyc29yIGhhdXJpYSBkJ2FuYXIgYSBsYSBjbGF1IG8gcGFy6G50ZXNpcyBjb3JyZXNwb25lbnQuCisKKyAgNC4gUHJlbWV1ICAlICBwZXIgdG9ybmFyIGVsIGN1cnNvciBhbCBwcmltZXIgcGFy6G50ZXNpLgorCistLS0+IEFpePIgKCDpcyB1bmEgbO1uaWEgYW1iIGNhcuBjdGVycyAoLCBbIF0gaSB7IH0gZGUgcHJvdmEuICkpCisKK05vdGE6IEFpePIg6XMgbW9sdCD6dGlsIHBlciB0cm9iYXIgZXJyb3JzIGVuIHByb2dyYW1lcyBpbmZvcm3gdGljcyEKKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgIExsaefzIDQuNDogVU5BIE1BTkVSQSBERSBDQU5WSUFSIEVSUk9SUworCisKKyAgICAgICAqKiBFc2NyaXZpdSAgOnMvdmVsbC9ub3UvZyAgcGVyIHN1YnN0aXR1aXIgJ3ZlbGwnIHBlciAnbm91Jy4gKioKKworICAxLiBNb3ZldSBlbCBjdXJzb3IgYSBsYSBs7W5pYSBkZSBzb3RhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gRXNjcml2aXUgIDpzL2xhYS9sYSA8RU5UUkFSPiAuIEFxdWVzdGEgb3JkcmUgbm9t6XMgY2FudmlhIGxhIHByaW1lcmEKKyAgICAgY29pbmNpZOhuY2lhIHF1ZSBlcyB0cm9iaSBhIGxhIGztbmlhLgorCisgIDMuIEFyYSBlc2NyaXZpdSAgOnMvbGFhL2xhL2cgIHBlciBmZXIgdW5hIHN1YnN0aXR1Y2nzIGdsb2JhbC4gQWl48gorICAgICBjYW52aWFy4CB0b3RlcyBsZXMgY29pbmNpZOhuY2llcyBxdWUgZXMgdHJvYmluIGEgbGEgbO1uaWEuCisKKy0tLT4gbGFhIG1pbGxvciDocG9jYSBwZXIgdmV1cmUgbGFhIGZsb3Ig6XMgbGFhIHByaW1hdmVyYS4KKworICA0LiBQZXIgY2FudmlhciB0b3RlcyBsZXMgY29pbmNpZOhuY2llcyBkJ3VuYSBjYWRlbmEgZW50cmUgZHVlcyBs7W5pZXMsCisgICAgIGVzY3Jpdml1ICA6Iywjcy92ZWxsL25vdS9nICBvbiAjLCMgc/NuIGVscyBub21icmVzIGRlIGxlcyBs7W5pZXMuCisgICAgIEVzY3Jpdml1ICA6JXMvdmVsbC9ub3UvZyAgcGVyIHN1YnN0aXR1aXIgbGEgY2FkZW5hIGEgdG90IGVsIGZpdHhlci4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgICAgTExJx9MgNCBTVU1BUkkKKworCisgIDEuIEN0cmwtZyBtb3N0cmEgbGEgcG9zaWNp8yBkaW5zIGRlbCBmaXR4ZXIgaSBsJ2VzdGF0IGRlbCBtYXRlaXguCisgICAgIFNoaWZ0LUcgdXMgcG9ydGEgYWwgZmluYWwgZGVsIGZpdHhlci4gVW4gbvptZXJvIHNlZ3VpdCBkZSBTaGlmdC1HCisgICAgIHVzIHBvcnRhIGEgbGEgbO1uaWEgY29ycmVzcG9uZW50LgorCisgIDIuIEwnb3JkcmUgIC8gIHNlZ3VpZGEgZCd1bmEgZnJhc2UgY2VyY2EgbGEgZnJhc2UgRU5EQVZBTlQuCisgICAgIEwnb3JkcmUgID8gIHNlZ3VpZGEgZCd1bmEgZnJhc2UgY2VyY2EgbGEgZnJhc2UgRU5EQVJSRVJFLgorICAgICBEZXNwculzIGQndW5hIGNlcmNhIHByZW1ldSAgbiAgcGVyIHRyb2JhciBsYSBwcvJ4aW1hIGNvaW5jaWTobmNpYSBlbgorICAgICBsYSBtYXRlaXhhIGRpcmVjY2nzLCBvICBTaGlmdC1OICBwZXIgY2VyY2FyIGVuIGxhIGRpcmVjY2nzIGNvbnRy4HJpYS4KKworICAzLiBMJ29yZHJlICAlICBxdWFuIGVsIGN1cnNvciDpcyBhIHNvYnJlIHVuICgsKSxbLF0seywgbyB9IHRyb2JhIGxhCisgICAgIHBhcmVsbGEgY29ycmVzcG9uZW50LgorCisgIDQuIFBlciBzdWJzdGl0dWlyIGVsIHByaW1lciAndmVsbCcgcGVyICdub3UnIGVuIHVuYSBs7W5pYSAgIDpzL3ZlbGwvbm91CisgICAgIFBlciBzdWJzdGl0dWlyIHRvdHMgZWxzICd2ZWxsJyBwZXIgJ25vdScgZW4gdW5hIGztbmlhICAgIDpzL3ZlbGwvbm91L2cKKyAgICAgUGVyIHN1YnN0aXR1aXIgZnJhc2VzIGVudHJlIGxlcyBs7W5pZXMgIyBpICMJICAgICAgOiMsI3MvdmVsbC9ub3UvZworICAgICBQZXIgc3Vic3RpdHVpciB0b3RlcyBsZXMgY29pbmNpZOhuY2llcyBlbiBlbCBmaXR4ZXIgICAgICA6JXMvdmVsbC9ub3UvZworICAgICBQZXIgZGVtYW5hciBjb25maXJtYWNp8yBjYWRhIGNvcCBhZmVnaXUgJ2MnCSAgICAgIDolcy92ZWxsL25vdS9nYworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgTGxp5/MgNS4xOiBDT00gRVhFQ1VUQVIgVU5BIE9SRFJFIEVYVEVSTkEKKworCisgICAgICAgKiogVGVjbGVnZXUgIDohICBzZWd1aXQgZCd1bmEgb3JkcmUgZXh0ZXJuYSBwZXIgZXhlY3V0YXItbGEuICoqCisKKyAgMS4gUHJlbWV1IGVsIGZhbWlsaWFyICA6ICBwZXIgY29st2xvY2FyIGVsIGN1cnNvciBhIGxhIHBhcnQgZGUgYmFpeCBkZQorICAgICBsYSBwYW50YWxsYS4gIEFpePIgdXMgcGVybWV0IGVudHJhciB1bmEgb3JkcmUuCisKKyAgMi4gQXJhIHRlY2xlZ2V1IGVsIGNhcuBjdGVyICAhICAoc2lnbmUgZCdleGNsYW1hY2nzKS4gQWl48iB1cyBwZXJtZXQKKyAgICAgZXhlY3V0YXIgcXVhbHNldm9sIG9yZHJlIGRlIGxhIHNoZWxsLgorCisgIDMuIENvbSBhIGV4ZW1wbGUgZXNjcml2aXUgIGxzICBpIHRvdCBzZWd1aXQgcHJlbWV1IDxFTlRSQVI+LiBBaXjyIHVzCisgICAgIG1vc3RyYXLgIGVsIGNvbnRpbmd1dCBkZWwgZGlyZWN0b3JpLCB0YWwgY29tIHNpIGVzdGlndelzc2l1IGEgbGEKKyAgICAgbO1uaWEgZCdvcmRyZXMuIEZldSBzZXJ2aXIgIDohZGlyICBzaSBscyBubyBmdW5jaW9uYS4KKworTm90YTogIEQnYXF1ZXN0YSBtYW5lcmEgZXMgcG90IGV4ZWN1dGFyIHF1YWxzZXZvbCBvcmRyZSBleHRlcm5hLgorCitOb3RhOiAgVG90ZXMgbGVzIG9yZHJlcyAgOiAgcydoYW4gZCdhY2FiYXIgYW1iIGxhIHRlY2xhIDxFTlRSQVI+CisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCSAgICAgICBMbGnn8yA1LjI6IE3JUyBTT0JSRSBMJ0VTQ1JJUFRVUkEgREUgRklUWEVSUworCisKKwkgICoqIFBlciBkZXNhciBlbHMgY2FudmlzIGZldHMsIGVzY3Jpdml1ICA6dyAgRklUWEVSLiAqKioKKworICAxLiBFc2NyaXZpdSAgOiFkaXIgIG8gYukgIDohbHMgIHBlciBvYnRlbmlyIHVuIGxsaXN0YXQgZGVsIGRpcmVjdG9yaS4KKyAgICAgSmEgc2FiZXUgcXVlIGhldSBkZSBwcultZXIgPEVOVFJBUj4gZGVzcHLpcyBkJ2FpePIuCisKKyAgMi4gVHJpZXUgdW4gbm9tIGRlIGZpdHhlciBxdWUgbm8gZXhpc3RlaXhpLCBjb20gYXJhIFBST1ZBLgorCisgIDMuIEFyYSBmZXU6ICA6dyBQUk9WQSAgKG9uIFBST1ZBIOlzIGVsIG5vbSBxdWUgaGV1IHRyaWF0LikKKworICA0LiBBaXjyIGRlc2EgdG90IGVsIGZpdHhlciBhbWIgZWwgbm9tIGRlIFBST1ZBLiBQZXIgY29tcHJvdmFyLWhvCisgICAgIGVzY3Jpdml1ICA6IWRpciAgcGVyIHZldXJlIGVsIGNvbnRpbmd1dCBkZWwgZGlyZWN0b3JpLgorCitOb3RlOiBTaSBzb3J0aXUgZGVsIFZpbSBpIGVudHJldSB1bmEgYWx0cmEgdmVnYWRhIGFtYiBlbCBmaXR4ZXIgUFJPVkEsIGVsCisgICAgICBmaXR4ZXIgc2Vy4CB1bmEgY/JwaWEgZXhhY3RhIGRlbCB0dXRvciBxdWUgaGV1IGRlc2F0LgorCisgIDUuIEFyYSBlc2JvcnJldSBlbCBmaXR4ZXIgdGVjbGVqYW50IChNUy1ET1MpOiAgIDohZGVsIFBST1ZBCisJCQkJICAgbyBi6SAoVW5peCk6ICAgOiFybSBQUk9WQQorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgTGxp5/MgNS4zOiBVTkEgT1JEUkUgU0VMRUNUSVZBIFBFUiBERVNBUgorCisKKwkqKiBQZXIgZGVzYXIgdW5hIHBhcnQgZGVsIGZpdHhlciwgZXNjcml2aXUgIDojLCMgdyBGSVRYRVIgKioKKworICAxLiBVbiBhbHRyZSBjb3AsIGZldSAgOiFkaXIgIG8gIDohbHMgIHBlciBvYnRlbmlyIHVuIGxsaXN0YXQgZGVsIGRpcmVjdG9yaQorICAgICBpIHRyaWV1IHVuIG5vbSBkZSBmaXR4ZXIgYWRlcXVhdCBjb20gYXJhIFBST1ZBLgorCisgIDIuIE1vdmV1IGVsIGN1cnNvciBhIGRhbHQgZGUgdG90IGRlIGxhIHDgZ2luYSBpIHByZW1ldSAgQ3RybC1nICBwZXIKKyAgICAgc2FiZXIgZWwgbvptZXJvIGRlIGxhIGztbmlhLiAgUkVDT1JERVUgQVFVRVNUIE7aTUVSTyEKKworICAzLiBBcmEgYW5ldSBhIGJhaXggZGUgdG90IGRlIGxhIHDgZ2luYSBpIHRvcm5ldSBhIHBy6W1lciAgQ3RybC1nLgorICAgICBSRUNPUkRFVSBBUVVFU1QgTtpNRVJPIFRBTULJIQorCisgIDQuIFBlciBkZXNhciBOT03JUyB1bmEgc2VjY2nzIGVuIHVuIGZpdHhlciwgZXNjcml2aXUgIDojLCMgdyBQUk9WQSAgb24KKyAgICAgIywjIHPzbiBlbHMgZG9zIG76bWVyb3MgcXVlIGhldSByZWNvcmRhdCAoZGFsdCxiYWl4KSBpIFBST1ZBIGVsIG5vbQorICAgICBkZWwgZml0eGVyLgorCisgIDUuIE1pcmV1IHF1ZSBlbCBmaXR4ZXIgbm91IGhpIHNpZ3VpIGFtYiAgOiFkaXIgIHBlcvIgbm8gbCdlc2JvcnJldS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgTGxp5/MgNS40OiBPQlRFTklSIEkgQUpVTlRBUiBGSVRYRVJTCisKKworCSAqKiBQZXIgaW5zZXJpciBlbCBjb250aW5ndXQgZCd1biBmaXR4ZXIsIGZldSAgOnIgRklUWEVSICoqCisKKyAgMS4gQXNzZWd1cmV1LXZvcywgYW1iIGwnb3JkcmUgIDohZGlyICwgcXVlIGVsIGZpdHhlciBQUk9WQSBlbmNhcmEgaGkg6XMuCisKKyAgMi4gUG9zZXUgZWwgY3Vyc29yIGEgZGFsdCBkZSB0b3QgZCdhcXVlc3RhIHDgZ2luYS4KKworTk9UQTogIERlc3By6XMgZCdleGVjdXRhciBlbCBQYXMgMyB2ZXVyZXUgbGEgbGxp5/MgNS4zLiBBbGVzaG9yZXMgbW92ZXUtdm9zCisgICAgICAgY2FwIGF2YWxsIGZpbnMgYSBhcXVlc3RhIGxsaefzIHVuIGFsdHJlIGNvcC4KKworICAzLiBBcmEgb2J0aW5ndWV1IGVsIGZpdHhlciBQUk9WQSBhbWIgbCdvcmRyZSAgOnIgUFJPVkEgIG9uIFBST1ZBIOlzIGVsCisgICAgIG5vbSBkZWwgZml0eGVyLgorCitOT1RBOiAgRWwgZml0eGVyIHF1ZSBvYnRpbmd1ZXUgZXMgcG9zYSBlbiBlbCBsbG9jIG9uIGhpIGhhZ2kgZWwgY3Vyc29yLgorCisgIDQuIFBlciBjb21wcm92YXIgcXVlIHMnaGEgb2J0aW5ndXQgZWwgZml0eGVyIHRpcmV1IGVucmVyZSBpIG1pcmV1IGNvbQorICAgICBhcmEgaGkgaGFuIGR1ZXMgY/JwaWVzIGRlIGxhIGxsaefzIDUuMzogbCdvcmlnaW5hbCBpIGxhIGRlbCBmaXR4ZXIuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCQlMTEnH0yA1IFNVTUFSSQorCisKKyAgMS4gIDohb3JkcmUgIGV4ZWN1dGEgdW5hIG9yZHJlIGV4dGVybmEuCisKKyAgICAgIEFsZ3VucyBleGVtcGxlcyD6dGlscyBz8246CisJIChNUy1ET1MpCSAgKFVuaXgpCisJICA6IWRpcgkJICAgOiFscwkJIC0gIG1vc3RyYSB1biBsbGlzdGF0IGRlbCBkaXJlY3RvcmkKKwkgIDohZGVsIEZJVFhFUiAgICAgOiFybSBGSVRYRVIgICAtICBlc2JvcnJhIGVsIGZpdHhlciBGSVRYRVIKKworICAyLiAgOncgRklUWEVSICBlc2NyaXUgZWwgZml0eGVyIGVkaXRhdCBhbCBkaXNjIGR1ciwgYW1iIGVsIG5vbSBGSVRYRVIuCisKKyAgMy4gIDojLCN3IEZJVFhFUiAgZGVzYSBsZXMgbO1uaWVzIGRlICMgYSAjIGVuIGVsIGZpdHhlciBGSVRYRVIuCisKKyAgNC4gIDpyIEZJVFhFUiAgbGxlZ2VpeCBlbCBmaXR4ZXIgRklUWEVSIGRlbCBkaXNjIGR1ciBpIGwnaW5zZXJlaXggZW4gZWwKKyAgICAgIGZpdHhlciBlZGl0YXQgYSBsYSBwb3NpY2nzIG9uIGhpIGhhIGVsIGN1cnNvci4KKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBMbGnn8yA2LjE6IEwnT1JEUkUgT0JSSVIKKworCisqKiBQcmVtZXUgIG8gIHBlciBvYnJpciB1bmEgbO1uaWEgc290YSBlbCBjdXJzb3IgaSBlbnRyYXIgZW4gbW9kZSBpbnNlcmNp8y4gKioKKworICAxLiBNb3ZldSBlbCBjdXJzb3IgYSBsYSBs7W5pYSBkZSBzb3RhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gUHJlbWV1ICBvICAobWlu+nNjdWxhKSBwZXIgb2JyaXIgdW5hIGztbmlhIFNPVEEgZWwgY3Vyc29yIGkgc2l0dWFyLXZvcworICAgICBlbiBtb2RlIGQnaW5zZXJjafMuCisKKyAgMy4gQXJhIGNvcGlldSBsYSBs7W5pYSBtYXJjYWRhIGFtYiAtLS0+IGkgcHJlbWV1IDxFU0M+IHBlciB0b3JuYXIgYWwgbW9kZQorICAgICBub3JtYWwuCisKKy0tLT4gRGVzcHLpcyBkZSBwcultZXIgIG8gIGVsIGN1cnNvciBlcyBzaXR1YSBhIGxhIGztbmlhIG5vdmEgZW4gbW9kZSBpbnNlcmNp8y4KKworICA0LiBQZXIgb2JyaXIgdW5hIGztbmlhIFNPQlJFIGVsIGN1cnNvciwgcHJlbWV1IGxhICBPICBtYWr6c2N1bGEsIGVuIGxsb2MKKyAgICAgZGUgbGEgbWlu+nNjdWxhLiBQcm92ZXUtaG8gYW1iIGxhIGztbmlhIGRlIHNvdGEuCitPYnJpdSB1bmEgbO1uaWEgc29icmUgYXF1ZXN0YSBhbWIgU2hpZnQtTyBhbWIgZWwgY3Vyc29yIGVuIGFxdWVzdGEgbO1uaWEuCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGxp5/MgNi4yOiBMJ09SRFJFIEFGRUdJUgorCisKKwkgICAgKiogUHJlbWV1ICBhICBwZXIgYWZlZ2lyIHRleHQgREVTUFLJUyBkZWwgY3Vyc29yLiAqKgorCisgIDEuIE1vdmV1IGVsIGN1cnNvciBhbCBmaW5hbCBkZSBsYSBwcmltZXJhIGztbmlhIGRlIHNvdGEgbWFyY2FkYQorICAgICBhbWIgLS0tPiBwcmVtZW50ICAkICBlbiBlbCBtb2RlIE5vcm1hbC4KKworICAyLiBQcmVtZXUgbGEgbGxldHJhICBhICAobWlu+nNjdWxhKSBwZXIgYWZlZ2lyIHRleHQgREVTUFLJUyBkZWwgY2Fy4GN0ZXIKKyAgICAgc290YSBlbCBjdXJzb3IuICAoTGEgIEEgIG1havpzY3VsYSBhZmVnZWl4IHRleHQgYWwgZmluYWwgZGUgbO1uaWEuKQorCitOb3RhOiBBaXjtIHMnZXZpdGEgaGF2ZXIgZGUgcHLpbWVyICBpICwgbCf6bHRpbSBjYXLgY3RlciwgZWwgdGV4dCBhIGluc2VyaXIsCisgICAgICBsYSB0ZWNsYSA8RVNDPiwgY3Vyc29yIGEgbGEgZHJldGEsIGkgZmluYWxtZW50ICB4ICwgbm9t6XMgcGVyIGFmZWdpcgorICAgICAgdGV4dCBhIGZpbmFsIGRlIGztbmlhLgorCisgIDMuIEFyYSBjb21wbGV0ZXUgbGEgcHJpbWVyYSBs7W5pYS4gVGluZ3VldSBlbiBjb21wdGUgcXVlIGFxdWVzdGEgb3JkcmUKKyAgICAg6XMgZXhhY3RhbWVudCBpZ3VhbCBxdWUgbGEgZCdpbnNlcmlyLCBleGNlcHRlIHBlbCBxdWUgZmEgYWwgbGxvYyBvbgorICAgICBzJ2luc2VyZWl4IGVsIHRleHQuCisKKy0tLT4gQXF1ZXN0YSBs7W5pYSB1cyBwZXJtZXRy4CBwcmFjdGljYXIKKy0tLT4gQXF1ZXN0YSBs7W5pYSB1cyBwZXJtZXRy4CBwcmFjdGljYXIgYWZlZ2lyIHRleHQgYSBmaW5hbCBkZSBs7W5pYS4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgTGxp5/MgNi4zOiBVTkEgQUxUUkEgTUFORVJBIERFIFNVQlNUSVRVSVIKKworCisgICAgICAqKiBUZWNsZWdldSB1bmEgIFIgIG1havpzY3VsYSBwZXIgc3Vic3RpdHVpciBt6XMgZCd1biBjYXLgY3Rlci4gKioKKworICAxLiBNb3ZldSBlbCBjdXJzb3IgYSBsYSBs7W5pYSBkZSBzb3RhIG1hcmNhZGEgYW1iIC0tLT4uCisKKyAgMi4gUG9zZXUgZWwgY3Vyc29yIGFsIHByaW5jaXBpIGRlIGxhIHByaW1lcmEgcGFyYXVsYSBxdWUgZXMgZGlmZXJlbnQKKyAgICAgcmVzcGVjdGUgYSBsYSBzZWdvbmEgbO1uaWEgbWFyY2FkYSBhbWIgLS0tPiAobGEgcGFyYXVsYSAibCf6bHRpbWEiKS4KKworICAzLiBBcmEgcHJlbWV1ICBSICBpIHN1YnN0aXR173UgZWwgcXVlIHF1ZWRhIGRlIHRleHQgYSBsYSBwcmltZXJhIGztbmlhCisgICAgIGVzY3JpdmludCBzb2JyZSBlbCB0ZXh0IHZlbGwsIHBlciBmZXItbGEgaWd1YWwgcXVlIGxhIHNlZ29uYS4KKworLS0tPiBQZXIgZmVyIGFxdWVzdGEgbO1uaWEgaWd1YWwgcXVlIGwn+mx0aW1hIHVzZXUgbGVzIHRlY2xlcy4KKy0tLT4gUGVyIGZlciBhcXVlc3RhIGztbmlhIGlndWFsIHF1ZSBsYSBzZWdvbmEsIHByZW1ldSBSIGkgZWwgdGV4dCBub3UuCisKKyAgNC4gVGluZ3VldSBlbiBjb21wdGUgcXVlIGVuIHBy6W1lciA8RVNDPiBwZXIgc29ydGlyLCBlbCB0ZXh0IHF1ZSBubworICAgICBzJ2hhZ2kgYWx0ZXJhdCBlcyBtYW506S4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMbGnn8yA2LjQ6IEVTVEFCTElSIE9QQ0lPTlMKKworICAgICAgKiogRmV1IHF1ZSBsZXMgb3JkcmVzIGNlcmNhciBvIHN1YnN0aXR1aXIgaWdub3JpbiBsZXMgZGlmZXLobmNpZXMKKwkJICAgICBlbnRyZSBtYWr6c2N1bGVzIGkgbWlu+nNjdWxlcyAqKgorCisgIDEuIENlcnF1ZXUgbGEgcGFyYXVsYSAnaWdub3JhcicgYW1iOiAvaWdub3JhcgorICAgICBSZXBldGl1LWhvIHVucyBxdWFudHMgY29wcyBhbWIgbGEgdGVjbGEgbi4KKworICAyLiBFc3RhYmxpdSBsJ29wY2nzICdpYycgKElnbm9yYXIgQ2FwaXRhbHMpIGVzY3JpdmludDoKKyAgICAgOnNldCBpYworCisgIDMuIEFyYSBjZXJxdWV1ICdpZ25vcmFyJyB1biBhbHRyZSBjb3AgYW1iIGxhIHRlY2xhIG4uCisgICAgIFJlcGV0aXUtaG8gdW5zIHF1YW50cyBjb3BzIG3pcy4KKworICA0LiBFc3RhYmxpdSBsZXMgb3BjaW9ucyAnaGxzZWFyY2gnIGkgJ2luY3NlYXJjaCc6CisgICAgIDpzZXQgaGxzIGlzCisKKyAgNS4gQXJhIHRvcm5ldSBhIGV4ZWN1dGFyIHVuYSBvcmRyZSBkZSBjZXJjYSwgaSBtaXJldSBxdeggcGFzc2E6CisgICAgIC9pZ25vcmFyCisKKyAgNi4gUGVyIHRyZXVyZSBlbCByZXNzYWx0IGRlbHMgcmVzdWx0YXRzLCBmZXU6CisgICAgIDpub2hsc2VhcmNoCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgIExMScfTIDYgU1VNQVJJCisKKworICAxLiBMJ29yZHJlICBvICBvYnJlIHVuYSBs7W5pYSBTT1RBIGxhIGRlbCBjdXJzb3IgaSBtb3UgZWwgY3Vyc29yIGEgbGEgbm92YQorICAgICBs7W5pYSwgZW4gbW9kZSBJbnNlcmNp8y4KKyAgICAgTGEgIE8gIG1havpzY3VsYSBvYnJlIGxhIGztbmlhIGEgU09CUkUgbGEgcXVlIGhpIGhhIGVsIGN1cnNvci4KKworICAyLiBQcmVtZXUgdW5hICBhICBwZXIgYWZlZ2lyIHRleHQgREVTUFLJUyBkZWwgY2Fy4GN0ZXIgc290YSBlbCBjdXJzb3IuCisgICAgIExhICBBICBtYWr6c2N1bGEgYWZlZ2VpeCBhdXRvbeB0aWNhbWVudCBlbCB0ZXh0IGEgZmluYWwgZGUgbO1uaWEuCisKKyAgMy4gTCdvcmRyZSAgUiAgbWFq+nNjdWxhIHVzIHBvc2EgZW4gbW9kZSBzdWJzdGl0dWNp8yBmaW5zIHF1ZSBwcmVtZXUgPEVTQz4uCisKKyAgNC4gRXNjcml2aXUgIjpzZXQgeHh4IiBwZXIgZXN0YWJsaXIgbCdvcGNp8yAieHh4IgorCisKKworCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIExMScfTIDc6IE9SRFJFUyBEJ0FKVURBCisKKworCQkgKiogVXRpbGl0emV1IGVsIHNpc3RlbWEgaW50ZXJuIGQnYWp1ZGEgKioKKworICBFbCBWaW0gdOkgdW4gZXh0ZW5zIHNpc3RlbWEgZCdhanVkYS4gUGVyIGxsZWdpciB1bmEgaW50cm9kdWNjafMgcHJvdmV1IHVuYQorICBkJ2FxdWVzdGVzIHRyZXMgY29zZXM6CisJLSBwcmVtZXUgbGEgdGVjbGEgPEFKVURBPiAoc2kgZW4gdGVuaXUgYWxndW5hKQorCS0gcHJlbWV1IGxhIHRlY2xhIDxGMT4gKHNpIGVuIHRlbml1IGFsZ3VuYSkKKwktIGVzY3Jpdml1ICAgOmhlbHAgPEVOVFJBUj4KKworICBUZWNsZWdldSAgOnEgPEVOVFJBUj4gIHBlciB0YW5jYXIgbGEgZmluZXN0cmEgZCdhanVkYS4KKworICBQb2RldSB0cm9iYXIgYWp1ZGEgc29icmUgcHLgY3RpY2FtZW50IHF1YWxzZXZvbCB0ZW1hIGRvbmFudCB1biBhcmd1bWVudAorICBhIGwnb3JkcmUgIjpoZWxwIi4gUHJvdmV1IGFpePIgKG5vIG9ibGlkZXUgcHLpbWVyIDxFTlRSQVI+KToKKworCTpoZWxwIHcKKwk6aGVscCBjXzxUCisJOmhlbHAgaW5zZXJ0LWluZGV4CisJOmhlbHAgdXNlci1tYW51YWwKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgIExMScfTIDg6IENSRUFSIFVOIFNDUklQVCBEJ0lOSUNJCisKKwkJICAgICAqKiBBY3RpdmFyIGZ1bmNpb25zIGF1dG9t4HRpY2FtZW50ICoqCisKKyBFbCBWaW0gdOkgbW9sdGVzIG3pcyBmdW5jaW9ucyBxdWUgZWwgVmksIHBlcvIgbW9sdGVzIGVzdGFuIGRlc2FjdGl2YWRlcyBwZXIKKyBvbWlzc2nzLiBQZXIgY29tZW7nYXIgYSB1dGlsaXR6YXIgbelzIGZ1bmNpb25zIGhldSBkZSBjcmVhciB1biBmaXR4ZXIgInZpbXJjIi4KKworICAxLiBDb21lbmNldSBhIGVkaXRhciBlbCBmaXR4ZXIgInZpbXJjIiwgZGVwZW5lbnQgZGVsIHNpc3RlbWEKKwk6ZWRpdCB+Ly52aW1yYwkJCXBlciBVbml4CisJOmVkaXQgJFZJTS9fdmltcmMJCXBlciBNUy1XaW5kb3dzCisKKyAgMi4gQXJhIGxsZWdpdSBlbCBmaXR4ZXIgInZpbXJjIiBkJ2V4ZW1wbGU6CisKKwk6cmVhZCAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQorCisgIDMuIERlc2V1IGVsIGZpdHhlciBhbWI6CisKKwk6d3JpdGUKKworIEVsIHBy8nhpbSBjb3AgcXVlIGV4ZWN1dGV1IGVsIFZpbSB1c2Fy4CByZXNzYWx0IGRlIHNpbnRheGkuCisgUG9kZXUgYWZlZ2lyIGVscyBhanVzdG9zIHF1ZSB2dWxndWV1IGVuIGFxdWVzdCBmaXR4ZXIgInZpbXJjIi4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKKyAgQXF17SBjb25jbG91IGVsIFR1dG9yIGRlbCBWaW0uIEhhIHNpZ3V0IHVuIGludGVudCBkZSBmZXItdm9zIHVuYSBicmV1CisgIGludHJvZHVjY2nzIGEgbCdlZGl0b3IgVmltLCBzdWZpY2llbnQgY29tIHBlciBxdeggZWwgcHVndWV1IGNvbWVu52FyIGEgZmVyCisgIHNlcnZpci4gRXN04CBsbHVueSBkZSBzZXIgY29tcGxldCBwZXJxdeggZWwgVmltIHTpIG1vbHRlcyBt6XMgb3JkcmVzLgorICBMbGVnaXUgZWwgbWFudWFsIGRlIGwndXN1YXJpOiAiOmhlbHAgdXNlci1tYW51YWwiLgorCisgIFBlciB1biBlc3R1ZGkgbelzIHByb2Z1bmQgdXMgcmVjb21hbmVtIGVsIHNlZ/xlbnQgbGxpYnJlOgorCVZpbSAtIFZpIEltcHJvdmVkIC0gZGUgU3RldmUgT3VhbGxpbmUKKwlFZGl0b3JpYWw6IE5ldyBSaWRlcnMKKyAgyXMgZWwgcHJpbWVyIGxsaWJyZSBkZWRpY2F0IGNvbXBsZXRhbWVudCBhbCBWaW0sIGVzcGVjaWFsbWVudCD6dGlsIHBlciBhCisgIHVzdWFyaXMgbm92ZWxscy4gVOkgbW9sdHMgZXhlbXBsZXMgaSBkaWJ1aXhvcy4KKyAgVmVnZXUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBBcXVlc3QgYWx0cmUg6XMgbelzIHZlbGwgaSB0cmFjdGEgbelzIHNvYnJlIGVsIFZpIHF1ZSBzb2JyZSBlbCBWaW06CisJTGVhcm5pbmcgdGhlIFZpIEVkaXRvciAtIGRlIExpbmRhIExhbWIKKwlFZGl0b3JpYWw6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCisgIMlzIHVuIGJvbiBsbGlicmUgcGVyIHNhYmVyIHF1YWxzZXZvbCBjb3NhIHF1ZSBkZXNpdGdldSBzb2JyZSBlbCBWaS4KKyAgTGEgc2lzZW5hIGVkaWNp8yB0YW1i6SBpbmNsb3UgaW5mb3JtYWNp8yBzb2JyZSBlbCBWaW0uCisKKyAgQXF1ZXN0IHR1dG9yaWFsIGhhIGVzdGF0IGVzY3JpdCBwZXIgTWljaGFlbCBDLiBQaWVyY2UgaSBSb2JlcnQgSy4gV2FyZSwKKyAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIGFtYiBsYSBjb2y3bGFib3JhY2nzIGRlIENoYXJsZXMgU21pdGgsCisgIENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkuIEUtbWFpbDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1LgorCisgIE1vZGlmaWNhdCBwZWwgVmltIHBlciBCcmFtIE1vb2xlbmFhci4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmNzIGIvcnVudGltZS90dXRvci90dXRvci5jcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iYWFlZjY2Ci0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS90dXRvci90dXRvci5jcwpAQCAtMCwwICsxLDgxMiBAQAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPSAgICBWIO0gdCBlIGogdCBlICAgdiAgdCB1IHQgbyByIGkgYSBsIHUgICBWIEkgTSAgICAgICAtICAgIFZlcnplIDEuNSAgICAgICAgPQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICAgIFZpbSBqZSB2ZWxtaSB2/Wtvbm79IGVkaXRvciwga3Rlcv0gbeEgcPjtbGm5IG1ub2hvIHD47WthevkgbmEgdG8sIGFieQorICAgICBtb2hseSBi/XQgdrllY2hueSB2eXN27HRsZW7pIHZlIHb9dWNlIGpha28gdGF0by4gVGF0byB2/XVrYSBvYnNhaHVqZQorICAgICBkb3N0YXRl6G7pIG1ub75zdHbtIHD47WthevkgbmEgdG8sIGFieSBieWxvIG1vvm7pIHBvdb7tdmF0IFZpbSBqYWtvCisgICAgIHbtY2X66GVsb3b9IGVkaXRvci4KKworICAgICBQ+GlibGm+bv0g6GFzIHBvdPhlYm79IGtlIHp2bOFkbnV07SB06XRvIHb9dWt5IGplIDI1LTMwIG1pbnV0LCB64Wxlvu0KKyAgICAgbmEgdG9tLCBrb2xpayDoYXN1IHN0cuF27XRlIHD4ZXprdblvduFu7W0uCisKKyAgICAgUPjta2F6eSB2IGxla2PtY2ggdXByYXZ1au0gdGV4dC4gVnl0dm/4IGtvcGlpIHRvaG90byBzb3Vib3J1IHBybworICAgICBwcm9jdmnob3bhbu0gKHD4aSBzdGFydHUgInZpbXR1dG9yIiBqZSBqab4gdG90byBrb3BpZSkuCisKKyAgICAgSmUgZPlsZb5pdOkgcGFtYXRvdmF0LCC+ZSB0YXRvIHb9dWthIGplIHZ5dHZv+GVuYSBwcm8gdv11a3UgcG91vu124W7tbS4KKyAgICAgVG8gem5hbWVu4SwgvmUgamUgcG90+GViYSBzaSBw+O1rYXp5IHZ5emtvdblldCBwcm8gamVqaWNoIHNwcuF2bukKKyAgICAgbmF16GVu7S4gUG9rdWQgc2kgamVuIOh0ZbkgdGV4dCwgcPjta2F6eSB6YXBvbWVuZbkhCisKKyAgICAgTnlu7SBzZSBw+GVzduxk6HRlLCC+ZSBTaGlmdC1Mb2NrIE5FTs0gc3RsYehlbv0gYSBu7GtvbGlrcuF0IHN0aXNrbux0ZQorICAgICBrbOF2ZXN1ICBqICAgYWJ5IHNlIGt1cnpvciBwb3N1bnVsIG5hdG9saWssIL5lIGxla2NlIDEuMSB6YXBsbu0gY2Vsb3UKKyAgICAgb2JyYXpvdmt1Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtjZSAxLjE6ICBQT0hZQiBLVVJaT1JVCisKKworICAgKiogUHJvIHBvaHliIGt1cnpvcnUgcG91vu12ZWoga2zhdmVzeSBoLGosayxsIGphayBqZSB6buF6b3Ju7G5vIG7tvmUuICoqCisJICAgICBeCisJICAgICBrCQkgICBGdW5rY2U6IEts4XZlc2EgaCBqZSB2bGV2byBhIHZ5a29u4SBwb2h5YiB2bGV2by4KKyAgICAgICA8IGgJIGwgPgkJICAgS2zhdmVzYSBsIGplIHZwcmF2byBhIHZ5a29u4SBwb2h5YiB2cHJhdm8uCisJICAgICBqCQkJICAgS2zhdmVzYSBqIHZ5cGFk4SBuYSC5aXBrdSBkb2x1LgorCSAgICAgdgorICAxLiBQb2h5YnVqIGt1cnpvcmVtIHBvIG9icmF6b3ZjZSBkb2t1ZCBzaSBuYSB0byBuZXp2eWtuZbkuCisKKyAgMi4gRHK+IGts4XZlc3UgcHJvIHBvaHliIGRvbHUgKGopLCBkb2t1ZCBzZSBqZWrtIGZ1bmtjZSBuZXpvcGFrdWplLgorLS0tPiBUZe8gdu25IGphayBzZSBw+GVzdW5vdXQgbmEgbuFzbGVkdWrtY+0gbGVrY2kuCisKKyAgMy4gUG91vml07W0ga2zhdmVzeSBkb2x1IHD4ZWpkaSBuYSBsZWtjaSAxLjIuCisKK1Bvem7hbWthOiBQb2t1ZCBzaSBu7GtkeSBuZWpzaSBqaXN0IG7s6O1tLCBjbyBqc2kgbmFwc2FsLCBzdGxh6CA8RVNDPiBwcm8KKyAgICAgICAgICBw+GVjaG9kIGRvIE5vcm3hbG7taG8gbfNkdS4gUG906SBw+GVwabkgcG++YWRvdmFu/SBw+O1rYXouCisKK1Bvem7hbWthOiBLdXJ6b3Jvdukga2zhdmVzeSB0YWvpIGZ1bmd1au0sIGF2uWFrIHBvdb7tduFu7SBoamtsIGplIHJ5Y2hsZWq57QorICAgICAgICAgIGpha21pbGUgc2kgbmEgbuxqIHp2eWtuZbkuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla2NlIDEuMjogU1BVqVTMTs0gQSBVS09OyEVOzSBWSU0KKworCisgICEhIFBPWk7BTUtBOiBQ+GVkIHZ5a29u4W7tbSB07GNodG8ga3Jva/kgc2kgcPhl6HRpIGNlbG91IGxla2NpISEKKworICAxLiBTdGxh6CA8RVNDPiAocHJvIHVqabl07G7tLCC+ZSBzZSBuYWNo4XrtuSB2IE5vcm3hbG7tbSBt82R1KS4KKworICAyLiBOYXBpuToJCQk6cSEgPEVOVEVSPi4KKworLS0tPiBU7W10byB1a29u6O25IGVkaXRvciBCRVogdWxvvmVu7SB6bexuLCBrdGVy6SBzaSB2eWtvbmFsLgorICAgICBQb2t1ZCBjaGNluSB1bG++aXQgem3sbnkgYSB1a29u6Gl0IGVkaXRvciBuYXBpuToKKwkJCQk6d3EgIDxFTlRFUj4KKworICAzLiBBviBzZSBkb3N0YW5luSBuYSBw+O1rYXpvdv0g+OFkZWssIG5hcGm5IHD47Wtheiwga3Rlcv1tIHNlIGRvc3RhbmW5IHpw7HQKKyAgICAgZG8gdOl0byB2/XVreS4gVG8gbfm+ZSBi/XQ6IHZpbXR1dG9yIDxFTlRFUj4KKyAgICAgQuy+buwgc2UgcG91vu124ToJCSB2aW0gdHV0b3IgPEVOVEVSPgorCistLS0+ICd2aW0nIHpuYW1lbuEgc3B1uXTsbu0gZWRpdG9ydSwgJ3R1dG9yJyBqZSBzb3Vib3IgayBlZGl0YWNpLgorCisgIDQuIFBva3VkIHNpIHR5dG8ga3Jva3kgc3BvbGVobGl27CBwYW1hdHVqZbksIHZ5a29uZWoga3Jva3kgMSBhviAzLCDo7W2+CisgICAgIHVrb27o7bkgYSB6bm92dSBzcHVzdO25IGVkaXRvci4gUG90b20gcPhlc3XyIGt1cnpvciBkb2x1IG5hIGxla2NpIDEuMy4KKyAgICAgCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICBMZWtjZSAxLjM6INpQUkFWQSBURVhUVSAtIE1BWsFOzQorCisKKyAgKiogU3Rpc2tudXTtbSBrbOF2ZXN5ICB4ICB2IE5vcm3hbG7tbSBt82R1IHNtYb5luSB6bmFrIG5hIG3tc3TsIGt1cnpvcnUuICoqCisKKyAgMS4gUPhlc3XyIGt1cnpvciBu7b5lIG5hIPjhZGVrIG96bmHoZW79IC0tLT4uCisKKyAgMi4gSyBvZHN0cmFu7G7tIGNoeWIgcPhlamRpIGt1cnpvcmVtIG5hIHpuYWssIGt0ZXL9IGNoY2W5IHNtYXphdC4KKworICAzLiBTdGxh6CBrbOF2ZXN1ICB4ICBrIG9kc3RyYW7sbu0gbmVjaHTsbv1jaCB6bmFr+S4KKworICA0LiBPcGFrdWoga3Jva3kgMiBhviA0IGRva3VkIG5lbu0gdux0YSBzcHLhdm7sLgorCistLS0+IEty4eF2YSBza2/o6GlsbGEgcPhlc3Mgbexzc+1jLgorCisgIDUuIFBva3VkIGplIHbsdGEgc3By4XZu7CwgcPhlamRpIG5hIGxla2NpIDEuNC4KKworUE9aTsFNS0E6IE5lc25hviBzZSBwb3V6ZSB6YXBhbWF0b3ZhdCBw+GVkduFk7G7pIHD47WthenksIHXoIHNlIGplIHBvdb7tduFu7W0uCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla2NlIDEuNDog2lBSQVZBIFRFWFRVIC0gVktMwUTBTs0KKworCisgICAgICAqKiBTdGxh6GVu7SBrbOF2ZXN5ICBpICB2IE5vcm3hbG7tbSBt82R1IHVtb77ydWplIHZrbOFk4W7tIHRleHR1LiAqKgorCisgIDEuIFD4ZXN18iBrdXJ6b3IgbmEgcHJ2bu0g+OFkZWsgb3puYehlbv0gLS0tPi4KKworICAyLiBQcm8gdXByYXZlbu0gcHJ2bu1obyD44WRrdSBkbyBwb2RvYnkg+OFka3UgZHJ1aOlobywgcPhlc3XyIGt1cnpvciBuYQorICAgICBwcnZu7SB6bmFrIHphIG3tc3RvLCBrZGUgbeEgYv10IHRleHQgdmxvvmVu/S4KKworICAzLiBTdGxh6CAgaSAgYSBuYXBpuSBwb3T4ZWJu/SBkb2RhdGVrLgorCisgIDQuIFBvIG9wcmF2ZW7tIGthvmTpIGNoeWJ5IHN0bGHoIDxFU0M+IHBybyBu4XZyYXQgZG8gTm9ybeFsbu1obyBt82R1LgorICAgICBPcGFrdWoga3Jva3kgMiBhviA0IGRva3VkIG5lbu0gdux0YSBzcHLhdm7sLgorCistLS0+IE7samFr/SB0eHQgbmEgdOl0byAuCistLS0+IE7samFr/SB0ZXh0IGNoeWLtIG5hIHTpdG8g+OFkY2UuCisKKyAgNS4gUG9rdWQgamm+IG92bOFk4bkgdmts4WThbu0gdGV4dHUsIHD4ZWpkaSBuYSBu4XNsZWR1au1j7SBzaHJudXTtLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgICAgU0hSTlVUzSBMRUtDRSAxCisKKworICAxLiBLdXJ6b3JlbSBzZSBwb2h5YnVqZSBwb21vY+0guWlwZWsgbmVibyBrbOF2ZXNhbWkgaGprbC4KKwloICh2bGV2bykJaiAoZG9sdSkJayAobmFob3J1KQlsICh2cHJhdm8pCisKKyAgMi4gUHJvIHNwdbl07G7tIFZpbXUgKHogcPjta2F6b3bpaG8g+OFka3UpIG5hcGm5OiB2aW0gU09VQk9SIDxFTlRFUj4KKworICAzLiBQcm8gdWtvbuhlbu0gVmltdSBuYXBpuTogPEVTQz4gIDpxISAgPEVOVEVSPiAgYmV6IHVsb75lbu0gem3sbi4KKwkgICAgIAkgICAgICAgYW5lYm86IDxFU0M+ICA6d3EgIDxFTlRFUj4gIHBybyB1bG++ZW7tIHpt7G4uCisKKyAgNC4gUHJvIHNtYXrhbu0gem5ha3UgcG9kIGt1cnpvcmVtIG5hcGm5IHYgTm9ybeFsbu1tIG3zZHU6ICB4CisKKyAgNS4gUHJvIHZrbOFk4W7tIHRleHR1IG9kIG3tc3RhIGt1cnpvcnUgbmFwabkgdiBOb3Jt4Wxu7W0gbfNkdToKKwkgaSAgICAgdmts4WRhbv0gdGV4dAk8RVNDPgorCitQT1pOwU1LQTogU3RsYehlbu0gPEVTQz4gdOwgcPhlbe1zdO0gZG8gTm9ybeFsbu1obyBt82R1IG5lYm8genJ1ue0gbmVjaHTsbv0KKyAgICAgIGEg6OFzdGXobuwgZG9rb27oZW79IHD47Wthei4KKworTnlu7SBwb2tyYeh1aiBMZWtj7SAyLgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGVrY2UgMi4xOiBQ2M1LQVpZIE1BWsFOzQorCisKKwkgICAgICAgKiogUPjta2F6ICBkdyAgc21hvmUgem5ha3kgZG8ga29uY2Ugc2xvdmEuICoqCisKKyAgMS4gU3RsYeggIDxFU0M+ICBrIHViZXpwZehlbu0sIL5lIGpzaSB2IE5vcm3hbG7tbSBt82R1LgorCisgIDIuIFD4ZXN18iBrdXJ6b3Igbu2+ZSBuYSD44WRlayBvem5h6GVu/SAtLS0+LgorCisgIDMuIFD4ZXN18iBrdXJ6b3IgbmEgemHo4XRlayBzbG92YSwga3RlcukgamUgcG90+GViYSBzbWF6YXQuCisKKyAgNC4gTmFwabkgICBkdwkgLCBhYnkgc2xvdm8gem1pemVsby4KKworUE9aTsFNS0E6IFDtc21lbmEgZHcgc2Ugem9icmF67SBuYSBwb3NsZWRu7W0g+OFka3Ugb2JyYXpvdmt5IGpha21pbGUgamUKKwkgIG5hcO25ZbkuIEtkeb4gbmFw7blluSBu7GNvILlwYXRu7Cwgc3RsYeggIDxFU0M+ICBhIHph6G5pIHpub3ZhLgorCistLS0+IEpzb3UgdHUgbuxqYWvhIHNsb3ZhIHrhYmF2YSwga3RlcuEgbmVwYXT47SBsaXN0IGRvIHTpdG8gdux0eS4KKworICA1LiBPcGFrdWoga3Jva3kgMyBhviA0IGRva3VkIG5lbu0gdux0YSBzcHLhdm7sIGEgcPhlamRpIG5hIGxla2NpIDIuMi4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtjZSAyLjI6IFbNQ0UgUNjNS0Fa2SBNQVrBTs0KKworCisJICAgKiogTmFwc+Fu7SBw+O1rYXp1ICBkJCAgc21hvmUgdrllIGG+IGRvIGtvbmNlIPjhZGt5LiAqKgorCisgIDEuIFN0bGHoICA8RVNDPiAgayB1YmV6cGXoZW7tLCC+ZSBqc2kgdiBOb3Jt4Wxu7W0gbfNkdS4KKworICAyLiBQ+GVzdfIga3Vyem9yIG7tvmUgbmEg+OFkZWsgb3puYehlbv0gLS0tPi4KKworICAzLiBQ+GVzdfIga3Vyem9yIG5hIGtvbmVjIHNwcuF2bukgdux0eSAoWkEgcHJ2bu0gdGXoa3UpLgorCisgIDQuIE5hcGm5ICBkJCAgLGFieSBqc2kgc21hemFsIHpuYWt5IGG+IGRvIGtvbmNlIPjhZGt1LgorCistLS0+IE7sa2RvIG5hcHNhbCBrb25lYyB06XRvIHbsdHkgZHZha3LhdC4ga29uZWMgdOl0byB27HR5IGR2YWty4XQuCisKKworICA1LiBQ+GVqZGkgbmEgbGVrY2kgMi4zIHBybyBwb2Nob3Blbu0gdG9obywgY28gc2Ugc3RhbG8uCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgTGVrY2UgMi4zOiBST1qpSdhPVkFDzSBQ2M1LQVpZIEEgT0JKRUtUWQorCisKKyAgRm9ybeF0IG1hemFj7WhvIHD47WthenUgIGQgIGplIG7hc2xlZHVq7WPtOgorCisJIFvo7XNsb10gICBkICAgb2JqZWt0ICAgICBORUJPICAgICBkICAgW+jtc2xvXSAgIG9iamVrdAorICBLZGU6CisgICAg6O1zbG8gLSB1ZOF24SBrb2xpa3LhdCBzZSBw+O1rYXogdnlrb27hICh2b2xpdGVsbuksIHb9Y2hveu09MSkuCisgICAgZCAtIGplIHD47WtheiBtYXrhbu0uCisgICAgb2JqZWt0IC0gdWThduEgbmEg6GVtIHNlIHD47WtheiB2eWtvbuF24SAodnlwc2Fu6SBu7b5lKS4KKworICBLcuF0a/0gdv1waXMgb2JqZWt0+ToKKyAgICB3IC0gb2Qga3Vyem9ydSBkbyBrb25jZSBzbG92YSwgduhldG7sIG1lemVyLgorICAgIGUgLSBvZCBrdXJ6b3J1IGRvIGtvbmNlIHNsb3ZhLCBCRVogbWV6ZXIuCisgICAgJCAtIG9kIGt1cnpvcnUgZG8ga29uY2Ug+OFka3UuCisKK1BPWk7BTUtBOiAgU3RsYehlbu1tIGts4XZlc3kgb2JqZWt0dSB2IE5vcm3hbG7tbSBt82R1IHNlIGt1cnpvciBw+GVzdW5lIG5hCisgICAgICAgICAgIG3tc3RvIHVw+GVzbuxu6SB2ZSB2/XBpc3Ugb2JqZWt0+S4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgMi40OiBW3UpJTUtBIFogJ1DYzUtBWi1PQkpFS1QnCisKKworICAgIAkgICAgICAgICAgKiogTmFwc+Fu7W0gICBkZCAgIHNtYb5luSBjZWz9IPjhZGVrLiAqKgorCisgIFZ6aGxlZGVtIGsg6GFzdG9zdGkgbWF64W7tIGNlbOlobyD44WRrdSBzZSBhdXRv+GkgVmltdSByb3pob2RsaSwgvmUgYnVkZQorICBqZWRub2R1ue0gbmFwc2F0IHByb3N07CBkduwgZCBrIHNtYXrhbu0gY2Vs6WhvIPjhZGt1LgorCisgIDEuIFD4ZXN18iBrdXJ6b3IgbmEgZHJ1aP0g+OFkZWsgc3BvZG7taG8gdGV4dHUuCisgIDIuIE5hcGm5ICBkZCAgcHJvIHNtYXrhbu0g+OFka3UuCisgIDMuIFD4ZWpkaSBuYSDodHZydP0g+OFkZWsuCisgIDQuIE5hcGm5ICAgMmRkICAgKHZ6cG9tZfIgc2kgIOjtc2xvLXD47Wthei1vYmpla3QpIHBybyBzbWF64W7tIGR2b3Ug+OFka/kuCisKKyAgICAgIDEpICBS+b5lIGpzb3Ug6GVydmVu6SwKKyAgICAgIDIpICBCbOF0byBqZSB64WJhdm7pLAorICAgICAgMykgIEZpYWxreSBqc291IG1vZHLpLAorICAgICAgNCkgIE3hbSBhdXRvLAorICAgICAgNSkgIEhvZGlua3kgdWthenVq7SDoYXMsCisgICAgICA2KSAgQ3VrciBqZSBzbGFka/0sCisgICAgICA3KSAgQSB0byBqc2kgaSB0eS4KKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgIExla2NlIDIuNTogUNjNS0FaIFVORE8KKworCisgICAqKiBTdGxh6CAgdQlwcm8gdnLhY2Vu7SBwb3NsZWRu7WhvIHD47WthenUsICBVICBwcm8gY2Vsb3Ug+OFka3UuICoqCisKKyAgMS4gUPhlc3XyIGt1cnpvciBu7b5lIG5hIPjhZGVrIG96bmHoZW79IC0tLT4gYSBw+GVt7XN0aSBobyBuYSBwcnZu7SBjaHlidS4KKyAgMi4gTmFwabkgIHggIHBybyBzbWF64W7tIHBydm7taG8gbmVjaHTsbulobyB6bmFrdS4KKyAgMy4gVGXvIG5hcGm5ICB1ICDo7W2+IHZy4XTtuSB6cOx0IHBvc2xlZG7tIHZ5a29uYW79IHD47Wthei4KKyAgNC4gTnlu7SBvcHJhdiB2uWVjaG55IGNoeWJ5IG5hIPjhZGt1IHBvbW9j7SBw+O1rYXp1ICB4ICAuCisgIDUuIE5hcGm5IHZlbGvpICBVICDo7W2+IHZy4XTtuSD44WRlayBkbyBw+XZvZG7taG8gc3RhdnUuCisgIDYuIFRl7yBuYXBpuSAgdSAgbuxrb2xpa3LhdCwg6O1tviB2cuF07bkgenDsdCBw+O1rYXogIFUgIC4KKyAgNy4gU3RsYeggQ1RSTC1SIChrbOF2ZXN1IENUUkwgZHK+IHN0bGHoZW5vdSBhIHN0aXNrbmkgUikgbuxrb2xpa3LhdCwKKyAgICAg6O1tviB2cuF07bkgenDsdCBw+GVkdO1tIHZy4WNlbukgcPjta2F6eSAocmVkbykuCisKKy0tLT4gT3BwcmF2IGNoeWJieSBubmEgdG9vbXRvIPjhZGt1IGEgbmFocmHvIGplIHBvbW1vY+0gdW5kby4KKworICA4LiBUb3RvIGpzb3UgdmVsbWkgdb5pdGXobukgcPjta2F6eS4gTnlu7SBw+GVqZGkgbmEgc291aHJuIExla2NlIDIuCisKKyAgCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJOVVTNIExFS0NFIDIKKworCisgIDEuIFBybyBzbWF64W7tIHpuYWv5IG9kIGt1cnpvcnUgZG8ga29uY2Ugc2xvdmEgbmFwabk6ICAgIGR3CisKKyAgMi4gUHJvIHNtYXrhbu0gem5ha/kgb2Qga3Vyem9ydSBkbyBrb25jZSD44WRrdSBuYXBpuTogICAgZCQKKworICAzLiBQcm8gc21heuFu7SBjZWzpaG8g+OFka3UgbmFwabk6ICAgIGRkCisKKyAgNC4gRm9ybeF0IHD47WthenUgdiBOb3Jt4Wxu7W0gbfNkdSBqZToKKworICAgICAgIFvo7XNsb10gICBw+O1rYXogICBvYmpla3QgICAgTkVCTyAgICBw+O1rYXogICAgIFvo7XNsb10gICBvYmpla3QKKyAgICAga2RlOgorICAgICAgIOjtc2xvIC0gdWThduEgcG/oZXQgb3Bha2924W7tIHD47WthenUKKyAgICAgICBw+O1rYXogLSB1ZOF24SBjbyBqZSB0+GViYSB2eWtvbmF0LCBuYXD47WtsYWQgIGQgIG1hvmUKKyAgICAgICBvYmpla3QgLSB1ZOF24SByb3pzYWggcPjta2F6dSwgbmFw+O1rbGFkICB3ICAoc2xvdm8pLAorCQkkIChkbyBrb25jZSD44WRrdSksIGF0ZC4KKworICA1LiBQcm8gdnLhY2Vu7SBw+GVkZbls6SDoaW5ub3N0aSwgbmFwabk6CXUgKG1hbOkgdSkKKyAgICAgUHJvIHZy4WNlbu0gdrllY2gg+nByYXYgbmEg+OFka3UgbmFwabk6CVUgKHZlbGvpIFUpCisgICAgIFBybyB2cuFjZW7tIHZy4WNlbv1jaCD6cHJhdiAocmVkbykgbmFwabk6CUNUUkwtUgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSBMZWtjZSAzLjE6IFDYzUtBWiBWTE+uSVQKKworCisgICAgICAgKiogUPjta2EgIHAgIHZsb77tIHBvc2xlZG7tIHZ5bWF6YW79IHRleHQgemEga3Vyem9yLiAqKgorCisgIDEuIFD4ZXN18iBrdXJ6b3Igbu2+ZSBuYSBwb3NsZWRu7SD44WRlayB0ZXh0dS4KKworICAyLiBOYXBpuSAgZGQgIHBybyBzbWF64W7tIPjhZGt1IGEgamVobyB1bG++ZW7tIGRvIGJ1ZmZlcnUuCisKKyAgMy4gUPhlc3XyIGt1cnpvciBW3alFIHRhbSwga2FtIHNtYXphbv0g+OFkZWsgcGF0+O0uCisKKyAgNC4gViBOb3Jt4Wxu7W0gbfNkdSBuYXBpuSAgcCAgcHJvIG9w7HRu6SB2bG++ZW7tIPjhZGt1LgorCisgIDUuIE9wYWt1aiBrcm9reSAyIGG+IDQgZG9rdWQg+OFka3kgbmVidWRvdSB2ZSBzcHLhdm7pbSBwb/hhZO0uCisKKyAgICAgZCkgVGFr6SBzZSBkb2vhvmW5IHZ6ZOxs4XZhdD8KKyAgICAgYikgRmlhbGt5IGpzb3UgbW9kcuksCisgICAgIGMpIEludGVsaWdlbmNlIHNlIHXo7SwKKyAgICAgYSkgUvm+ZSBqc291IOhlcnZlbuksCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgIExla2NlIDMuMjogUNjNS0FaIE5BSFJBWkVOzQorCisKKyAgICAgICAgICAqKiBOYXBz4W7tbSAgciAgYSB6bmFrdSBzZSBuYWhyYWTtIHpuYWsgcG9kIGt1cnpvcmVtLiAqKgorCisgIDEuIFD4ZXN18iBrdXJ6b3Igbu2+ZSBuYSBwcnZu7SD44WRlayBvem5h6GVu/SAtLS0+LgorCisgIDIuIFD4ZXN18iBrdXJ6b3IgbmEgemHo4XRlayBwcnZu7SBjaHlieS4KKworICAzLiBOYXBpuSAgciAgYSBwb3RvbSB6bmFrLCBrdGVy/SBuYWhyYWTtIGNoeWJ1LgorCisgIDQuIE9wYWt1aiBrcm9reSAyIGG+IDMgZG9rdWQgbmVu7SBwcnZu7SD44WRrYSBzcHLhdm7sLgorCistLS0+ICBLZGm+IGJ5bCBweuFuIHRlbnRvIPjhZGVnLCBu7GtkdSBzdGxhvmlsILlwYXFu6SBrbOF2ZXN5IQorLS0tPiAgS2R5viBieWwgcHPhbiB0ZW50byD44WRlaywgbuxrZG8gc3RsYejtbCC5cGF0bukga2zhdmVzeSEKKworICA1LiBOeW7tIHD4ZWpkaSBuYSBMZWtjaSAzLjIuCisKK1BPWk7BTUtBOiBaYXBhbWF0dWogc2ksIL5lIGJ5IHNlcyBt7GwgdehpdCBwb3W+7Xbhbu1tLCBuZSB6YXBhbWF0b3bhbu1tLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICAgICAgTGVrY2UgMy4zOiBQ2M1LQVog2lBSQVZZCisKKworCSAgKiogUG9rdWQgY2hjZbkgem3sbml0IOjhc3QgbmVibyBjZWzpIHNsb3ZvLCBuYXBpuSAgY3cgLiAqKgorCisgIDEuIFD4ZXN18iBrdXJ6b3Igbu2+ZSBuYSBwcnZu7SD44WRlayBvem5h6GVu/SAtLS0+LgorCisgIDIuIFVt7XN0aSBrdXJ6b3IgbmEgcO1zbWVubyBpIHYgc2xvduwg+Gm7b2suCisKKyAgMy4gTmFwabkgIGN3ICBhIG9wcmF2IHNsb3ZvICh2IHRvbXRvIHD47XBhZOwgbmFwabkgJ+FkZWsnLikKKworICA0LiBTdGxh6CA8RVNDPiBhIHD4ZWpkaSBuYSBkYWy57SBjaHlidSAocHJ2bu0gem5haywga3Rlcv0gdPhlYmEgem3sbml0LikKKworICA1LiBPcGFrdWoga3Jva3kgMyBhviA0IGRva3VkIG5lbu0gcHJ2bu0gdux0YSBzdGVqbuEgamFrbyB0YSBkcnVo4S4KKworLS0tPiBUZW50byD4abtvayBt4SBu7GtvbGlrIHNraWMsIGt0ZXLpIHBzYWRvaW5zYSB6bexuaXQgcGFzZGdmIHD47WthenUuCistLS0+IFRlbnRvIPjhZGVrIG3hIG7sa29saWsgc2xvdiwga3RlcukgcG90+GVidWrtIHpt7G5pdCBwb21vY+0gcPjta2F6dS4KKworVrlpbW5pIHNpLCC+ZSAgY3cgIG5lamVuIG5haHJhenVqZSBzbG92bywgYWxlIHRha+kgcPhlbe1zdO0gZG8gdmts4WThbu0uCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgIExla2NlIDMuNDogVs1DRSBaTcxOIFBPVa5JVM1NIGMKKworCisgICAqKiBQ+O1rYXogcHJvIPpwcmF2dSBzZSBkcnW+7SBzZSBzdGVqbv1taSBvYmpla3R5IGpha28gdGVuIHBybyBtYXrhbu0uICoqCisKKyAgMS4gUPjta2F6IHBybyD6cHJhdnUgcHJhY3VqZSBzdGVqbuwgamFrbyBwcm8gbWF64W7tLiBGb3Jt4XQgamU6CisKKyAgICAgICBb6O1zbG9dICAgYyAgIG9iamVrdAkgTkVCTwkgICBjCVvo7XNsb10gICBvYmpla3QKKworICAyLiBPYmpla3R5IGpzb3UgdGFr6SBzaG9kbuksIGpha28gbmFw+C46IHcgKHNsb3ZvKSwgJCAoa29uZWMg+OFka3UpLCBhdGQuCisKKyAgMy4gUPhlamRpIG7tvmUgbmEgcHJ2bu0g+OFkZWsgb3puYehlbv0gLS0tPi4KKworICA0LiBQ+GVzdfIga3Vyem9yIG5hIHBydm7tIHJvemTtbC4KKworICA1LiBOYXBpuSAgYyQgIHBybyB1cHJhdmVu7SB6Ynl0a3Ug+OFka3UgcG9kbGUgdG9obyBkcnVo6WhvIGEgc3RsYeggPEVTQz4uCisKKy0tLT4gS29uZWMgdG9ob3RvIPjhZGt1IHBvdPhlYnVqZSBwb21vYywgYWJ5IGJ5bCBqYWtvIHRlbiBkcnVo/S4KKy0tLT4gS29uZWMgdG9ob3RvIPjhZGt1IHBvdPhlYnVqZSBvcHJhdml0IHBvdb5pdO1tIHD47WthenUgIGMkICAuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJOVVTNIExFS0NFIDMKKworCisgIDEuIFBybyB2bG++ZW7tIHRleHR1LCBrdGVy/SBieWwgc21heuFuLCBuYXBpuSAgcCAgLiBUbyB2bG++7SBzbWF6YW79IHRleHQKKyAgICAgWkEga3Vyem9yIChwb2t1ZCBieWwg+OFkZWsgc21hemFu/SwgcPhlamRlIG5hIPjhZGVrIHBvZCBrdXJ6b3JlbSkuCisKKyAgMi4gUHJvIG5haHJhemVu7SB6bmFrdSBwb2Qga3Vyem9yZW0sIG5hcGm5ICByICBhIHBvdG9tIHpuYWssIGt0ZXL9bQorICAgICBjaGNluSBw+XZvZG7tIHpuYWsgbmFocmFkaXQuCisKKyAgMy4gUPjta2F6IG5hIHVwcmF2b3bhbu0gdW1vvvJ1amUgem3sbml0IHNwZWNpZmlrb3Zhbv0gb2JqZWt0IG9kIGt1cnpvcnUKKyAgICAgZG8ga29uY2Ugb2JqZWt0dS4gTmFw+O1rbGFkOiBOYXBpuSAgY3cgICzo7W2+IHpt7G7tuSB0ZXh0IG9kIHBvemljZQorICAgICBrdXJ6b3J1IGRvIGtvbmNlIHNsb3ZhLCAgYyQgIHpt7G7tIHRleHQgZG8ga29uY2Ug+OFka3UuCisKKyAgNC4gRm9ybeF0IHBybyBuYWhyYXpvduFu7SBqZToKKworCSBb6O1zbG9dICAgYyAgIG9iamVrdCAgICAgIE5FQk8gICAgIGMgICBb6O1zbG9dICAgb2JqZWt0CisKK055bu0gcPhlamRpIG5hIG7hc2xlZHVq7WPtIGxla2NpLgorCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrY2UgNC4xOiBQT1pJQ0UgQSBTVEFUVVMgU09VQk9SVQorCisKKyAgKiogU3RsYeggQ1RSTC1nIHBybyB6b2JyYXplbu0gc3bpIHBvemljZSB2IHNvdWJvcnUgYSBzdGF0dXN1IHNvdWJvcnUuCisgICAgIFN0bGHoIFNISUZULUcgcHJvIHD4ZWNob2QgbmEg+OFkZWsgdiBzb3Vib3J1LiAqKgorCisgIFBvem7hbWthOiBQ+GXodGkgc2kgY2Vsb3UgbGVrY2kgbmW+IHph6G5luSB2eWtvbuF2YXQga3Jva3khIQorCisgIDEuIERyviBrbOF2ZXN1IEN0cmwgc3RsYehlbm91IGEgc3Rpc2tuaSAgZyAgLiBWZXNwb2Qgb2JyYXpvdmt5IHNlIHpvYnJheu0KKyAgICAgc3Rhdm92/SD44WRlayBzIG7henZlbSBzb3Vib3J1IGEg+OFka291IG5hIGt0ZXLpIHNlIG5hY2jheu25LiBaYXBhbWF0dWoKKyAgICAgc2kg6O1zbG8g+OFka3UgcHJvIGtyb2sgMy4KKworICAyLiBTdGxh6CBzaGlmdC1HIHBybyBw+GVzdW4gbmEga29uZWMgc291Ym9ydS4KKworICAzLiBOYXBpuSDo7XNsbyD44WRrdSBuYSBrdGVy6W0gc2kgc2UgbmFjaOF6ZWwgYSBzdGxh6CBzaGlmdC1HLiBUbyB07AorICAgICB2cuF07SBuYSD44WRlaywgbmEga3RlcultIGpzaSBk+O12ZSBzdGlza2wgQ3RybC1nLgorICAgICAoS2R5viBw7blluSDo7XNsYSwgdGFrIHNlIE5FWk9CUkFaVUrNIG5hIG9icmF6b3ZjZS4pCisKKyAgNC4gUG9rdWQgc2UgY+107bkgc2Nob3Bu/SB2eWtvbmF0IHR5dG8ga3Jva3ksIHZ5a29uZWogamUuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCUxla2NlIDQuMjogUNjNS0FaIFZZSExFRMFWwU7NCisKKworICAgICAqKiBOYXBpuSAgLyAgbuFzbGVkb3Zhbukg+GV07HpjZW0gcHJvIHZ5aGxlZOFu7SBvbm9obyD4ZXTsemNlLiAqKgorCisgIDEuIFN0aXNrbmkgLyB2IE5vcm3hbG7tbSBt82R1LiAgVrlpbW5pIHNpLCC+ZSB0ZW50byB6bmFrIHNlIHNwb2x1IHMKKyAgICAga3Vyem9yZW0gem9icmF67SB2IGRvbG7tIOjhc3RpIG9icmF6b3ZreSBqYWtvIHD47WtheiAgOiAgLgorCisgIDIuIE55bu0gbmFwabkgJ2NoaHliYmEnIDxFTlRFUj4uICBUbyBqZSBzbG92bywga3RlcukgY2hjZbkgdnlobGVkYXQuCisKKyAgMy4gUHJvIHZ5aGxlZOFu7SBkYWy57WhvIHb9c2xlZGt1IHN0ZWpu6WhvIPhldOx6Y2UsIGplZG5vZHW5ZSBzdGxh6CAgbiAgLgorICAgICBQcm8gdnlobGVk4W7tIGRhbLntaG8gdv1zbGVka3Ugc3Rlam7paG8g+GV07HpjZSBvcGHobv1tIHNt7HJlbSwgc3Rpc2tuaQorICAgICBTaGlmdC1OLgorCisgIDQuIFBva3VkIGNoY2W5IHZ5aGxlZGF0IPhldOx6ZWMgdiBvcGHobultIHNt7HJ1LCBwb3W+aWogcPjta2F6ICA/ICBt7XN0bworICAgICBw+O1rYXp1ICAvICAuCisKKy0tLT4gImNoaHliYmEiIG5lbu0genD5c29iLCBqYWsgaGzhc2tvdmF0IGNoeWJhOyBjaGh5YmJhIGplIGNoeWJhLgorCitQb3pu4W1rYTogS2R5viB2eWhsZWThduFu7SBkb3PhaG5lIGtvbmNlIHNvdWJvcnUsIGJ1ZGUgcG9rcmHob3ZhdCBuYSBqZWhvCisgICAgICAgICAgemHo4XRrdS4KKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgIExla2NlIDQuMzogVllITEVEwVbBTs0gUMFST1bJIFrBVk9SS1kKKworCisJICAgICAgKiogTmFwabkgICUgIHBybyBuYWxlemVu7SBw4XJvdukgKSxdLCBuZWJvIH0gLiAqKgorCisgIDEuIFD4ZW3tc3RpIGt1cnpvciBuYSBrdGVyb3Vrb2xpICgsIFssIG5lYm8geyB2IPjhZGt1IG96bmHoZW7pbSAtLS0+LgorCisgIDIuIE55bu0gbmFwabkgem5hayAgJSAgLgorCisgIDMuIEt1cnpvciBzZSBw+GVt7XN07SBuYSBvZHBvdu1kYWrtY+0geuF2b3JrdS4KKworICA0LiBTdGxh6CAgJSAgcHJvIHD4ZXN1biBrdXJ6b3J1IHpw7HQgbmEgb3R27XJhau1j7SB64XZvcmt1LgorCistLS0+IFRvdG8gKCBqZSB0ZXN0b3ZhY+0g+OFkZWsgKCdzLCBbJ3MgXSBhIHsncyB9IHYgbuxtLiApKQorCitQb3pu4W1rYTogVG90byBqZSB2ZWxtaSB1vml0Zehu6SBw+O0gbGFk7G7tIHByb2dyYW11IHMgY2h5Yuxq7WPtbWkKKyAgICAgICAgICB1emF27XJhY+1taSB64XZvcmthbWkuCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla2NlIDQuNDogWlDZU09CIEpBSyBaTcxOSVQgQ0hZQlkKKwkJICAgICAgCisKKyAgICoqIE5hcGm5ICA6cy9zdGFy6S9ub3bpL2cgIHBybyBuYWhyYXplbu0gc2xvdmEgJ25vduknIHphICdzdGFy6ScuICoqCisKKyAgMS4gUPhlc3XyIGt1cnpvciBuYSD44WRlayBvem5h6GVu/SAtLS0+LgorCisgIDIuIE5hcGm5ICA6cy9kb2Jy6ekvZG9icukgPEVOVEVSPiAuICBWuWltbmkgc2ksIL5lIHRlbnRvIHD47WtheiB6bexu7SBwb3V6ZQorICAgICBwcnZu7SB2/XNreXQgdiD44WRrdS4KKworICAzLiBOeW7tIG5hcGm5CSA6cy9kb2Jy6ekvZG9icukvZyAgY2++IHpuYW1lbuEgY2Vsa2926SBuYWhyYXplbu0gdiD44WRrdS4KKyAgICAgVG90byBuYWhyYWTtIHa5ZWNobnkgdv1za3l0eSB2IPjhZGt1LgorCistLS0+IGRvYnLp6SBzdXJvdmlueSBhIGRvYnLp6SBu4ehpbu0ganNvdSB64WtsYWRlbSBkb2Jy6ekga3VjaHlu7C4KKworICA0LiBQcm8gem3sbnUgdrllY2ggdv1za3l0+SD4ZXTsemNlIG1lemkgZHbsbWEg+OFka3ksCisgICAgIE5hcGm5ICAgOiMsI3Mvc3Rhcukvbm926S9nICBrZGUgIywjIGpzb3Ug6O1zbGEgb27sY2gg+OFkZWsuCisgICAgIE5hcGm5ICAgOiVzL3N0YXLpL25vdukvZyAgICBwcm8gem3sbnUgdrllY2ggdv1za3l0+SB2IGNlbOltIHNvdWJvcnUuCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgICAgIFNIUk5VVM0gTEVLQ0UgNAorCisKKyAgMS4gQ3RybC1nICB2eXDtuWUgdHZvdSBwb3ppY2kgdiBzb3Vib3J1IGEgc3RhdHVzIHNvdWJvcnUuCisgICAgIFNoaWZ0LUcgIHTsIHD4ZW3tc3TtIG5hIGtvbmVjIHNvdWJvcnUuICDI7XNsbyBu4XNsZWRvdmFu6QorICAgICBTaGlmdC1HICB07CBw+GVzdW5lIG5hIGRhbukg6O1zbG8g+OFka3UuCisKKyAgMi4gTmFwc+Fu7SAgLyAgbuFzbGVkb3Zhbukg+GV07HpjZW0gdnlobGVk4SD4ZXTsemVjIHNt7HJlbSBET1DYRURVLgorICAgICBOYXBz4W7tICA/ICBu4XNsZWRvdmFu6SD4ZXTsemNlbSB2eWhsZWThIPhldOx6ZWMgc23scmVtIERPWkFEVS4KKyAgICAgTmFwc+Fu7SAgbiAgcG8gdnlobGVk4Xbhbu0gbmFqZGUgbuFzbGVkdWrtY+0gdv1za3l0IPhldOx6Y2UgdmUgc3Rlam7pbQorICAgICBzbexydSwgU2hpZnQtTiB2ZSBzbexydSBvcGHobultLgorCisgIDMuIFN0aXNrbnV07SAgJSAga2R5viBqZSBrdXJ6b3IgbmEgKCwpLFssXSx7LCBuZWJvIH0gbmFqZGUgb2Rwb3btZGFq7WPtCisgICAgIHDhcm92b3UgeuF2b3JrdS4KKworICA0LiBQcm8gbmFocmF6ZW7tIG5vdulobyB6YSBwcnZu7SBzdGFy/SB2IPjhZGt1IG5hcGm5ICAgICA6cy9zdGFy6S9ub3bpCisgICAgIFBybyBuYWhyYXplbu0gbm926WhvIHphIHa5ZWNobnkgc3RhcukgdiD44WRrdSBuYXBpuSAgIDpzL3N0YXLpL25vdukvZworICAgICBQcm8gbmFocmF6ZW7tIPhldOx6Y/kgbWV6aSBkduxtaSD44WRrYW1pICMgbmFwabkgICAgICA6Iywjcy9zdGFy6S9ub3bpL2cKKyAgICAgUHJvIG5haHJhemVu7SB2uWVjaCB2/XNreXT5IHYgc291Ym9ydSBuYXBpuQkgICA6JXMvc3Rhcukvbm926S9nCisgICAgIFBybyBwb3R2cnplbu0ga2G+ZOlobyBuYWhyYXplbu0gcPhpZGVqICdjJwkJICAgOiVzL3N0YXLpL25vdukvZ2MKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgIExla2NlIDUuMTogSkFLIFZZS09OQVQgVk7MSqnNIFDYzUtBWgorCisKKyAgICoqIE5hcGm5ICA6ISAgbuFzbGVkb3Zhbukgdm7sarntbSBw+O1rYXplbSBwcm8gc3B1uXTsbu0gcPjta2F6dS4gKioKKworICAxLiBOYXBpuSBvYnZ5a2z9IHD47WtheiAgOiAgLCBrdGVy/SB1be1zdO0ga3Vyem9yIG5hIHNwb2RlayBvYnJhem92a3kKKyAgICAgVG8gdW1vvm7tIG5hcHNhdCBw+O1rYXouCisKKyAgMi4gTnlu7SBzdGlza25pICAhICAodnlr+Gnobu1rKS4gVG8gdW1vvm7tIHZ5a29uYXQgamFr/WtvbGl2IHZu7Gq57QorICAgICBw+O1rYXogeiBw+O1rYXpvdulobyD44WRrdS4KKworICAzLiBOYXD47WtsYWQgbmFwabkgIGxzICB6YSAhIGEgc3Rpc2tuaSA8RU5URVI+LiAgVGVudG8gcPjta2F6IHpvYnJheu0KKyAgICAgb2JzYWggdHbpaG8gYWRyZXPh+GUgamFrbyB2IHD47Wthem926W0g+OFka3UuCisgICAgIFZ5emtvdbllaiAgOiFkaXIgIHBva3VkIGxzIG5lZnVuZ3VqZS4KKworUG96buFta2E6ICBUYWt0byBqZSBtb75u6SB2eWtvbmF0IGpha/1rb2xpdiBw+O1rYXouCisKK1Bvem7hbWthOiAgVrllY2hueSBw+O1rYXp5ICA6ICBtdXPtIGL9dCBkb2tvbuhlbukgc3Rpc2tudXTtbSA8RU5URVI+CisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla2NlIDUuMjogVs1DRSBPIFVLTMFEwU7NIFNPVUJPUtkKKworCisJICAgICoqIFBybyB1bG++ZW7tIHpt7G4gdiBzb3Vib3J1IG5hcGm5ICA6dyBTT1VCT1IuICoqCisKKyAgMS4gTmFwabkgIDohZGlyICBuZWJvICA6IWxzICBwcm8gdv1waXMgYWt0deFsbu1obyBhZHJlc+H4ZS4KKyAgICAgVb4gdu25LCC+ZSB6YSB07W10byBtdXPtuSBzdGlza25vdXQgPEVOVEVSPi4KKworICAyLiBWeWJlciBzaSBu4XpldiBzb3Vib3J1LCBrdGVy/SBqZbl07CBuZWV4aXN0dWplLCBuYXD47WtsYWQgVEVTVC4KKworICAzLiBOeW7tIG5hcGm5OiAgOncgVEVTVCAgKGtkZSBURVNUIGplIHZ5YnJhbv0gbuF6ZXYgc291Ym9ydS4pCisKKyAgNC4gVG8gdWxvvu0gY2Vs/SBzb3Vib3IgIChW/XVrYSBWaW11KSAgcG9kIG7henZlbSBURVNULgorICAgICBQcm8gb3bs+GVu7SBuYXBpuSB6bm92dSA6IWRpciAgLCDo7W2+IHpvYnJheu25IG9ic2FoIGFkcmVz4fhlLgorCitQb3pu4W1rYTogSmFrbWlsZSB1a29u6O25IFZpbSBhIHpub3Z1IGhvIHNwdXN07bkgcyBu4Xp2ZW0gc291Ym9ydSBURVNULAorICAgICAgICAgIHNvdWJvciBidWRlIHD4ZXNu4SBrb3BpZSB2/XVreSwga2R5viBzaSBqaSB1a2zhZGFsLgorCisgIDUuIE55bu0gb2RzdHJh8iBzb3Vib3IgbmFwc+Fu7W0gKE1TLURPUyk6ICAgIDohZGVsIFRFU1QKKwkJCSAgICAgbmVibyAoVW5peCk6ICAgICAgOiFybSBURVNUCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgNS4zOiBW3ULMUk9W3SBQ2M1LQVogVUxPrkVOzQorCisKKwkgICAgKiogUHJvIHVsb75lbu0g6OFzdGkgc291Ym9ydSBuYXBpuSAgOiMsIyB3IFNPVUJPUiAqKgorCisgIDEuIEpluXTsIGplZG5vdSBuYXBpuSAgOiFkaXIgIG5lYm8gIDohbHMgIHBybyB2/XBpcyBha3R14Wxu7WhvIGFkcmVz4fhlCisgICAgIGEgdnliZXIgdmhvZG79IG7hemV2IHNvdWJvcnUgamFrbyBuYXD4LiBURVNULgorCisgIDIuIFD4ZXN18iBrdXJ6b3IgbmEgdnJjaCB06XRvIHN0cuFua3kgYSBzdGlza25pICBDdHJsLWcgIHBybyB6b2JyYXplbu0KKyAgICAg6O1zbGEg+OFka3UuICBaQVBBTUFUVUogU0kgVE9UTyDIzVNMTyEKKworICAzLiBOeW7tIHNlIHD4ZXN18iBuYSBzcG9kZWsgdOl0byBzdHLhbmt5IGEgb3DsdCBzdGlza25pIEN0cmwtZy4KKyAgICAgWkFQQU1BVFVKIFNJIEkgyM1TTE8gVE9IT1RPINjBREtVIQorCisgIDQuIFBybyB1bG++ZW7tIFBPVVpFIOjhc3RpIHNvdWJvcnUsIG5hcGm5ICA6IywjIHcgVEVTVCAga2RlICMsIyBqc291CisgICAgIOjtc2xhIGR2b3UgemFwYW1hdG92YW79Y2gg+OFka/kgKHZyY2gsIHNwb2RlaykgYSBURVNUIGplIG7hemV2IHNvdWJvcnUuCisKKyAgNS4gWm5vdmEgc2UgdWppc3RpLCC+ZSB0YW0gdGVuIHNvdWJvciBqZSBwb21vY+0gIDohZGlyICBhbGUgTkVPRFNUUkHSVUogaG8uCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICAgIExla2NlIDUuNDogU0xVyE9WwU7NIFNPVUJPUtkKKworCisgICAgICAJICAgKiogSyB2bG++ZW7tIG9ic2FodSBzb3Vib3J1IG5hcGm5ICA6ciBOwVpFVl9TT1VCT1JVICoqCisKKyAgMS4gTmFwabkgIDohZGlyICBwcm8gdWppuXTsbu0sIL5lIHNvdWJvciBURVNUIHN04WxlIGV4aXN0dWplLgorCisgIDIuIFD4ZXN18iBrdXJ6b3IgbmEgdnJjaCB06XRvIHN0cuFua3kuCisKK1BPWk7BTUtBOiBQbyB2eWtvbuFu7SBrcm9rdSAzIHV2aWTtuSBsZWtjaSA1LjMuCVBvdG9tIHNlIG9w7HQgcPhlc3XyIGRvbPkKKyAgICAgICAgICBuYSB0dXRvIGxla2NpLgorCisgIDMuIE55bu0gdmxvviBzb3Vib3IgVEVTVCBwb3W+aXTtbSBw+O1rYXp1ICA6ciBURVNUICBrZGUgVEVTVCBqZSBu4XpldgorICAgICBzb3Vib3J1LgorCitQT1pOwU1LQTogU291Ym9yLCBrdGVy/SB2a2zhZOG5IHNlIHZsb77tIG9kIG3tc3RhLCBrZGUgc2UgbmFjaOF67SBrdXJ6b3IuCisKKyAgNC4gUHJvIHBvdHZyemVu7SB2bG++ZW7tIHNvdWJvcnUsIHD4ZXN18iBrdXJ6b3IgenDsdCBhIHa5aW1uaSBzaSwgvmUgdGXvCisgICAgIG3huSBkduwga29waWUgbGVrY2UgNS4zLCBvcmlnaW7hbCBhIHNvdWJvcm92b3UgdmVyemkuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJOVVTNIExFS0NFIDUKKworCisgIDEuICA6IXD47WtheiAgdnlrb27hIHZu7Gq57SBw+O1rYXouCisKKyAgICAgIE7sa3Rlcukgdb5pdGXobukgcPjta2xhZHkganNvdToKKwkgKE1TLURPUykJICAoVW5peCkKKwkgIDohZGlyCQkgICA6IWxzCQkgICAtICB6b2JyYXrtIG9ic2FoIHNvdWJvcnUuCisJICA6IWRlbCBTT1VCT1IgICAgIDohcm0gU09VQk9SICAgICAtICBvZHN0cmFu7SBTT1VCT1IuCisKKyAgMi4gIDp3IFNPVUJPUiAgdWxvvu0gYWt0deFsbu0gdGV4dCBqYWtvIFNPVUJPUiBuYSBkaXNrLgorCisgIDMuICA6IywjdyBTT1VCT1IgIHVsb77tIPjhZGt5IG9kICMgZG8gIyBkbyBTT1VCT1JVLgorCisgIDQuICA6ciBTT1VCT1IgIHZ5YmVyZSB6IGRpc2t1IFNPVUJPUiBhIHZsb77tIGhvIGRvIGVkaXRvdmFu6WhvIHNvdWJvcnUKKyAgICAgIHphIHBvemljaSBrdXJ6b3J1LgorCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIExla2NlIDYuMTogUNjNS0FaIE9URVbYzVQKKworCisgICoqIE5hcGm5ICBvICBwcm8gdmxvvmVu7SD44WRrdSBwb2Qga3Vyem9yIGEgcPhlcG51dO0gZG8gVmts4WRhY+1obyBt82R1LiAqKgorCisgIDEuIFD4ZW3tc3RpIGt1cnpvciBu7b5lIG5hIPjhZGVrIG96bmHoZW79IC0tLT4uCisKKyAgMi4gTmFwabkgIG8gKG1hbOkpIHBybyB2bG++ZW7tIPjhZGt1IFBPRCBrdXJ6b3IgYSBw+GVwbnV07SBkbworICAgICBWa2zhZGFj7WhvIG3zZHUuCisKKyAgMy4gTnlu7SB6a29w7XJ1aiD44WRlayBvem5h6GVu/SAtLS0+IGEgc3Rpc2tuaSA8RVNDPiBwcm8gdWtvbuhlbu0KKyAgICAgVmts4WRhY+1obyBt82R1LgorICAKKy0tLT4gUG8gc3Rpc2tudXTtICBvICBzZSBrdXJ6b3IgcPhlbe1zdO0gbmEgdmxvvmVu/SD44WRlayBkbyBWa2zhZGFj7WhvCisgICAgIG3zZHUuCisKKyAgNC4gUHJvIG90ZXb4ZW7tIPjhZGt1IE5BRCBrdXJ6b3JlbSBqZWRub2R1uWUgbmFwabkgdmVsa+kgIE8gICwgbe1zdG8KKyAgICAgbWFs6WhvIG8uIFZ5emtvdbllaiBzaSB0byBuYSBu4XNsZWR1au1j7W0g+OFka3UuCitWbG++IPjhZGVrIG5hZCB07W10byBuYXBz4W7tbSBTaGlmdC1PIHBvIHVt7XN07G7tIGt1cnpvcnUgbmEgdGVudG8g+OFkZWsuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgTGVrY2UgNi4yOiBQ2M1LQVogUNhJREFUCisKKworCSAgICAgKiogU3Rpc2tuaSAgYSAgcHJvIHZsb75lbu0gdGV4dHUgWkEga3Vyem9yLiAqKgorCisgIDEuIFD4ZXN18iBrdXJ6b3IgbmEgbu2+ZSBuYSBrb25lYyD44WRreSBvem5h6GVu6SAtLS0+CisgICAgIHN0aXNrbnV07W0gJCB2IE5vcm3hbG7tbSBt82R1LgorCisgIDIuIFN0aXNrbmkgIGEgIChtYWzpKSBwcm8gcPhpZOFu7SB0ZXh0dSBaQSB6bmFrLCBrdGVy/SBqZSBwb2Qga3Vyem9yZW0uCisgICAgIChWZWxr6SAgQSAgcPhpZOEgbmEga29uZWMg+OFka3UuKQorCitQb3pu4W1rYTogVO1tdG8gc2UgdnlobmW5IHN0aXNrbnV07SAgaSAgLCBwb3NsZWRu7WhvIHpuYWt1LCB0ZXh0dSBuYSB2bG++ZW7tLAorICAgICAgICAgIDxFU0M+LCBrdXJ6b3IgZG9wcmF2YSwgYSBuYWtvbmVjICB4ICBuYSBw+Glk4Xbhbu0gbmEga29uZWMg+OFka3UhCisKKyAgMy4gTnlu7SBkb2tvbujtIHBydm7tIPjhZGVrLiBWuWltbmkgc2ksIL5lIHD4aWThduFu7SBqZSB2bGFzdG7sIHN0ZWpu6SBqYWtvCisgICAgIFZrbOFkYWPtIG3zZCwga3Jvbewgbe1zdGEsIGthbSBzZSB0ZXh0IHZrbOFk4S4KKworLS0tPiBUZW50byD44WRlayB0aSB1bW++8nVqZSBuYWN2aehpdAorLS0tPiBUZW50byD44WRlayB0aSB1bW++8nVqZSBuYWN2aehpdCBw+Glk4Xbhbu0gdGV4dHUgbmEga29uZWMg+OFka3kuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrY2UgNi4zOiBKSU7dIFpQ2VNPQiBOQUhSQVpPVsFOzQorCisKKyAgICAgICAgICoqIE5hcGm5IHZlbGvpICBSICBwcm8gbmFocmF6ZW7tIHbtYyBuZb4gamVkbm9obyB6bmFrdS4gKioKKworICAxLiBQ+GVzdfIga3Vyem9yIG5hIHBydm7tIPjhZGVrIG96bmHoZW79IC0tLT4uCisKKyAgMi4gVW3tc3RpIGt1cnpvciBuYSB6YejhdGVrIHBydm7taG8gc2xvdmEsIGt0ZXLpIGplIG9kbGm5bukgb2QgZHJ1aOlobworICAgICD44WRrdSBvem5h6GVu6WhvIC0tLT4gKHNsb3ZvICdwb3NsZWRu7ScpLgorCisgIDMuIE55bu0gc3Rpc2tuaSAgUiAgYSBuYWhyYe8gemJ5dGVrIHRleHR1IG5hIHBydm7tbSD44WRrdSBw+GVwc+Fu7W0KKyAgICAgc3RhculobyB0ZXh0dSB0YWssIGFieSBieWwgcHJ2bu0g+OFkZWsgc3Rlam79IGpha28gdGVuIGRydWj9LgorCistLS0+IFBybyB1cHJhdmVu7SBwcnZu7WhvIPjhZGt1IGRvIHR2YXJ1IHRvaG8gcG9zbGVkbu0gbmEgc3RyYW7sIHBvdb5paiBrbC4KKy0tLT4gUHJvIHVwcmF2ZW7tIHBydm7taG8g+OFka3UgZG8gdHZhcnUgdG9obyBkcnVo6WhvLCBuYXBpuSBSIGEgbm92/SB0ZXh0LgorCisgIDQuIFa5aW1uaSBzaSwgvmUgamFrbWlsZSBzdGlza25luSA8RVNDPiB2uWVjaGVuIG5lem3sbuxu/SB0ZXh0IHr5c3ThduEuCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICAgIExla2NlIDYuNDogTkFTVEFWRU7NIE1Prk5PU1TNCisKKyAgKiogTmFzdGF2IG1vvm5vc3QsIL5lIHZ5aGxlZOF24W7tIGFuZWJvIG5haHJhem924W7tIG5lZGLhIHZlbGlrb3N0aSBw7XNtZW4gKioKKworICAxLiBWeWhsZWRlaiD4ZXTsemVjICdpZ25vcmUnIG5hcHPhbu1tOgorICAgICAvaWdub3JlCisgICAgIFpvcGFrdWogbuxrb2xpa3LhdCBzdGlza251dO0ga2zhdmVzeSBuLgorCisgIDIuIE5hc3RhdiBtb75ub3N0ICdpYycgKElnbm9yZSBjYXNlKSBuYXBz4W7tbSBw+O1rYXp1OgorICAgICA6c2V0IGljCisKKyAgMy4gTnlu7SB6bm92dSB2eWhsZWRlaiAnaWdub3JlJyBzdGlza251dO1tOiBuCisgICAgIE7sa29saWty4XQgaGxlZOFu7SB6b3Bha3VqIHN0aXNrbnV07W0ga2zhdmVzeSBuLgorCisgIDQuIE5hc3RhdiBtb75ub3N0aSAnaGxzZWFyY2gnIGEgJ2luY3NlYXJjaCc6CisgICAgIDpzZXQgaGxzIGlzCisKKyAgNS4gTnlu7SB6bm92dSB2eWtvbmVqIHZ5aGxlZOF2YWPtIHD47WtheiBhIHNsZWR1aiwgY28gc2Ugc3RhbmU6CisgICAgIC9pZ25vcmUKKworICA2LiBQcm8gdnlwbnV07SB6dv1yYXryb3bhbu0gdv1zbGVka/kgbmFwabk6CisgICAgIDpub2hsc2VhcmNoCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJITlVUzSBMRUtDRSA2CisKKworICAxLiBTdGlza251dO0gIG8gIG90ZXb4ZSBub3b9IPjhZGVrIFBPRCBrdXJ6b3JlbSBhIHVt7XN07SBrdXJ6b3IgbmEgdmxvvmVu/QorICAgICD44WRlayBkbyBWa2zhZGFj7WhvIG3zZHUuCisgICAgIE5hcHPhbu0gdmVsa+lobyAgTyAgb3RldvhlIPjhZGVrIE5BRCD44WRrZW0sIG5hIGt0ZXLpbSBqZSBrdXJ6b3IuCisKKyAgMi4gU3Rpc2tuaSAgYSAgcHJvIHZsb75lbu0gdGV4dHUgWkEgem5hayBuYSBwb3ppY2kga3Vyem9ydS4KKyAgICAgTmFwc+Fu7SB2ZWxr6WhvICBBICBhdXRvbWF0aWNreSBw+Glk4SB0ZXh0IG5hIGtvbmVjIPjhZGt1LgorCisgIDMuIFN0aXNrbnV07SB2ZWxr6WhvICBSICBw+GVwbmUgZG8gTmFocmF6b3ZhY+1obyBt82R1LCBkb2t1ZAorICAgICBuZXN0aXNrbmW5IDxFU0M+IHBybyBqZWhvIHVrb27oZW7tLgorCisgIDQuIE5hcHPhbu0gIjpzZXQgeHh4IiBuYXN0YXbtIG1vvm5vc3RpICJ4eHgiLgorCisKKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMRUtDRSA3OiBQ2M1LQVpZIE9OLUxJTkUgTsFQT1bMRFkKKworCisJCSAgICoqIFBvdb7tdmVqIG9uLWxpbmUgc3lzdOltIG7hcG927GR5ICoqCisKKyAgVmltIG3hIG9ic+FobP0gb24tbGluZSBzeXN06W0gbuFwb3bsZHkuIFBybyB6YejhdGVrIHZ5emtvdbllaiBqZWRlbiB6CisgIG7hc2xlZHVq7WPtY2g6CisJLSBzdGlza25pIGts4XZlc3UgPEhFTFA+IChwb2t1ZCBqaSBt4bkpCisJLSBzdGlza25pIGts4XZlc3UgPEYxPiAgKHBva3VkIGppIG3huSkKKwktIG5hcGm5ICA6aGVscCA8RU5URVI+CisKKyAgTmFwabkgIDpxIDxFTlRFUj4gIHBybyB1emF2+GVu7SBva25hIG7hcG927GR5LgorCisgIE35vmW5IG5hau10IG7hcG927GR1IGsgamFr6W11a29saXYgdOltYXR1IHD4aWThbu1tIGFyZ3VtZW50dSBrCisgIHD47WthenUgIjpoZWxwIi4gWmt1cyB0eXRvIChuZXphcG9tZfIgc3Rpc2tub3V0IDxFTlRFUj4pOgorCisJOmhlbHAgdworCTpoZWxwIGNfPFQKKwk6aGVscCBpbnNlcnQtaW5kZXgKKwk6aGVscCB1c2VyLW1hbnVhbAorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgIExFS0NFIDg6IFZZVFZP2EVOzSBJTklDSUFMSVpByE7NSE8gU0tSSVBUVQorCisJCSAgICAgICAgKiogWmFwbmkgZnVua2NlIGVkaXRvcnUgVmltICoqCisKKyAgVmltIG3hIGRhbGVrbyB27WNlIGZ1bmtj7SBuZb4gVmksIGFsZSB27HS5aW5hIHogbmljaCBqZSB2eXBudXRhIHZlIHb9Y2hveu1tCisgIG5hc3RhdmVu7S4gUHJvIHphcG51dO0gbuxrdGVy/WNoIHZ5dHZv+CBzb3Vib3IgInZpbXJjIi4KKworICAxLiBaYehuaSB1cHJhdm92YXQgc291Ym9yICJ2aW1yYyIuIFRvdG8geuF2aXPtIG5hIHBvdb5pdOltIHN5c3TpbXU6CisJOmVkaXQgfi8udmltcmMJCQlwcm8gVW5peAorCTplZGl0ICRWSU0vX3ZpbXJjCQlwcm8gTVMtV2luZG93cworCisgIDIuIE55bu0g6HRpIHVr4Xprb3b9ICJ2aW1yYyIgc291Ym9yOgorCisJOnJlYWQgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKworICAzLiBVbG++IHNvdWJvciBwb21vY+06CisKKwk6d3JpdGUKKworICBQbyBw+O25dO1tIHN0YXJ0dSBWaW0gc2UgemFwbmUgenb9cmF68m924W7tIHN5bnRheGUuCisgIERvIHNvdWJvcnUgInZpbXJjIiBt+b5luSBw+GlkYXQgdrllY2hueSBzdm9qZSB1cPhlZG5vc3Tyb3ZhbukgbmFzdGF2ZW7tLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworICBUb3RvIHVrb27odWplIHb9dWt1IFZpbSwga3RlcuEgYnlsYSBteblsZW7hIGpha28gc3Rydehu/SBw+GVobGVkCisgIGVkaXRvcnUgVmltLCB0YWsgYWtvcuF0IHBvc3Rh6HVq7WPtIHBybyBsZWhr6SBhIG9ic3Rvam7pIHBvdb7tduFu7SBlZGl0b3J1LgorICBUYXRvIHb9dWthIG3hIGRhbGVrbyBvZCD6cGxub3N0aSwgcHJvdG++ZSBWaW0gb2JzYWh1amUgcG9kc3RhdG7sIHbtY2UKKyAgcPjta2F6+S4gROFsZSBzaSBw+GXodGkgdb5pdmF0ZWxza/0gbWFudeFsOiAiOmhlbHAgdXNlci1tYW51YWwiLgorCisgIFBybyBkYWy57SBzdHVkaXVtIGplIGRvcG9ydehlbuEga25paGE6CisJVmltIC0gVmkgSW1wcm92ZWQgLSBvZCBTdGV2ZSBPdWFsbGluZQorCU5ha2xhZGF0ZWw6IE5ldyBSaWRlcnMKKyAgUHJ2bu0ga25paGEgdXLoZW7hIHBybyBWaW0uIE9ienZs4bl07CB2aG9kbuEgcHJvIHph6OF0Zehu7Wt5LgorICBPYnNhaHVqZSBtbm++c3R27SBw+O1rbGFk+SBhIG9icuF6a/kuCisgIHZpeiBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAorCisgIFRhdG8ga25paGEgamUgc3RhcrntIGEgdu1jZSB27G5vdmFu4SBWaSBuZb4gVmltLCBhbGUgdGFr6SBkb3BvcnXoZW7hOgorCUxlYXJuaW5nIHRoZSBWaSBFZGl0b3IgLSBvZCBMaW5kYSBMYW1iCisJTmFrbGFkYXRlbDogTydSZWlsbHkgJiBBc3NvY2lhdGVzIEluYy4KKyAgSmUgdG8gZG9icuEga25paGEgcHJvIHrtc2vhbu0gduxkb21vc3TtIHTpbez4IG8gdrllbSwgY28gbfm+ZXRlIHMgVmkgZOxsYXQuCisgIKllc3TpIHZ5ZOFu7SBvYnNhaHVqZSB06b4gaW5mb3JtYWNlIG8gVmltLgorCisgIFRhdG8gdv11a2EgYnlsYSBuYXBzYW7hIGF1dG9yeSBNaWNoYWVsIEMuIFBpZXJjZSBhIFJvYmVydCBLLiBXYXJlLAorICBDb2xvcmFkbyBTY2hvb2wgb2YgTWluZXMgcyBwb3W+aXTtbSBteblsZW5layBvZDogQ2hhcmxlcyBTbWl0aCwKKyAgQ29sb3JhZG8gU3RhdGUgVW5pdmVyc2l0eS4gIEUtbWFpbDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1LgorCisgIFVwcmF2aWwgcHJvIFZpbTogQnJhbSBNb29sZW5hYXIuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisgIFD4ZWtsYWQgZG8g6GW5dGlueTogTHVib7kgVHVyZWsKKyAgRS1NYWlsOiBsdWJvcy50dXJla0BnbWFpbC5jb20KKyAgMjAwNyBGZWIgMjggCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmNzLnV0Zi04IGIvcnVudGltZS90dXRvci90dXRvci5jcy51dGYtOApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jODgwZDZkCi0tLSAvZGV2L251bGwKKysrIGIvcnVudGltZS90dXRvci90dXRvci5jcy51dGYtOApAQCAtMCwwICsxLDgxMiBAQAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPSAgICBWIMOtIHQgZSBqIHQgZSAgIHYgIHQgdSB0IG8gciBpIGEgbCB1ICAgViBJIE0gICAgICAgLSAgICBWZXJ6ZSAxLjUgICAgICAgID0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgICBWaW0gamUgdmVsbWkgdsO9a29ubsO9IGVkaXRvciwga3RlcsO9IG3DoSBwxZnDrWxpxaEgbW5vaG8gcMWZw61rYXrFryBuYSB0bywgYWJ5CisgICAgIG1vaGx5IGLDvXQgdsWhZWNobnkgdnlzdsSbdGxlbsOpIHZlIHbDvXVjZSBqYWtvIHRhdG8uIFRhdG8gdsO9dWthIG9ic2FodWplCisgICAgIGRvc3RhdGXEjW7DqSBtbm/FvnN0dsOtIHDFmcOta2F6xa8gbmEgdG8sIGFieSBieWxvIG1vxb5uw6kgcG91xb7DrXZhdCBWaW0gamFrbworICAgICB2w61jZcO6xI1lbG92w70gZWRpdG9yLgorCisgICAgIFDFmWlibGnFvm7DvSDEjWFzIHBvdMWZZWJuw70ga2UgenZsw6FkbnV0w60gdMOpdG8gdsO9dWt5IGplIDI1LTMwIG1pbnV0LCB6w6FsZcW+w60KKyAgICAgbmEgdG9tLCBrb2xpayDEjWFzdSBzdHLDoXbDrXRlIHDFmWV6a3XFoW92w6Fuw61tLgorCisgICAgIFDFmcOta2F6eSB2IGxla2PDrWNoIHVwcmF2dWrDrSB0ZXh0LiBWeXR2b8WZIGtvcGlpIHRvaG90byBzb3Vib3J1IHBybworICAgICBwcm9jdmnEjW92w6Fuw60gKHDFmWkgc3RhcnR1ICJ2aW10dXRvciIgamUgamnFviB0b3RvIGtvcGllKS4KKworICAgICBKZSBkxa9sZcW+aXTDqSBwYW1hdG92YXQsIMW+ZSB0YXRvIHbDvXVrYSBqZSB2eXR2b8WZZW5hIHBybyB2w711a3UgcG91xb7DrXbDoW7DrW0uCisgICAgIFRvIHpuYW1lbsOhLCDFvmUgamUgcG90xZllYmEgc2kgcMWZw61rYXp5IHZ5emtvdcWhZXQgcHJvIGplamljaCBzcHLDoXZuw6kKKyAgICAgbmF1xI1lbsOtLiBQb2t1ZCBzaSBqZW4gxI10ZcWhIHRleHQsIHDFmcOta2F6eSB6YXBvbWVuZcWhIQorCisgICAgIE55bsOtIHNlIHDFmWVzdsSbZMSNdGUsIMW+ZSBTaGlmdC1Mb2NrIE5FTsONIHN0bGHEjWVuw70gYSBuxJtrb2xpa3LDoXQgc3Rpc2tuxJt0ZQorICAgICBrbMOhdmVzdSAgaiAgIGFieSBzZSBrdXJ6b3IgcG9zdW51bCBuYXRvbGlrLCDFvmUgbGVrY2UgMS4xIHphcGxuw60gY2Vsb3UKKyAgICAgb2JyYXpvdmt1Lgorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtjZSAxLjE6ICBQT0hZQiBLVVJaT1JVCisKKworICAgKiogUHJvIHBvaHliIGt1cnpvcnUgcG91xb7DrXZlaiBrbMOhdmVzeSBoLGosayxsIGphayBqZSB6bsOhem9ybsSbbm8gbsOtxb5lLiAqKgorCSAgICAgXgorCSAgICAgawkJICAgRnVua2NlOiBLbMOhdmVzYSBoIGplIHZsZXZvIGEgdnlrb27DoSBwb2h5YiB2bGV2by4KKyAgICAgICA8IGgJIGwgPgkJICAgS2zDoXZlc2EgbCBqZSB2cHJhdm8gYSB2eWtvbsOhIHBvaHliIHZwcmF2by4KKwkgICAgIGoJCQkgICBLbMOhdmVzYSBqIHZ5cGFkw6EgbmEgxaFpcGt1IGRvbHUuCisJICAgICB2CisgIDEuIFBvaHlidWoga3Vyem9yZW0gcG8gb2JyYXpvdmNlIGRva3VkIHNpIG5hIHRvIG5lenZ5a25lxaEuCisKKyAgMi4gRHLFviBrbMOhdmVzdSBwcm8gcG9oeWIgZG9sdSAoaiksIGRva3VkIHNlIGplasOtIGZ1bmtjZSBuZXpvcGFrdWplLgorLS0tPiBUZcSPIHbDrcWhIGphayBzZSBwxZllc3Vub3V0IG5hIG7DoXNsZWR1asOtY8OtIGxla2NpLgorCisgIDMuIFBvdcW+aXTDrW0ga2zDoXZlc3kgZG9sdSBwxZllamRpIG5hIGxla2NpIDEuMi4KKworUG96bsOhbWthOiBQb2t1ZCBzaSBuxJtrZHkgbmVqc2kgamlzdCBuxJvEjcOtbSwgY28ganNpIG5hcHNhbCwgc3RsYcSNIDxFU0M+IHBybworICAgICAgICAgIHDFmWVjaG9kIGRvIE5vcm3DoWxuw61obyBtw7NkdS4gUG90w6kgcMWZZXBpxaEgcG/FvmFkb3ZhbsO9IHDFmcOta2F6LgorCitQb3puw6Fta2E6IEt1cnpvcm92w6kga2zDoXZlc3kgdGFrw6kgZnVuZ3Vqw60sIGF2xaFhayBwb3XFvsOtdsOhbsOtIGhqa2wgamUgcnljaGxlasWhw60KKyAgICAgICAgICBqYWttaWxlIHNpIG5hIG7Em2ogenZ5a25lxaEuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgIExla2NlIDEuMjogU1BVxaBUxJpOw40gQSBVS09OxIxFTsONIFZJTQorCisKKyAgISEgUE9aTsOBTUtBOiBQxZllZCB2eWtvbsOhbsOtbSB0xJtjaHRvIGtyb2vFryBzaSBwxZllxI10aSBjZWxvdSBsZWtjaSEhCisKKyAgMS4gU3RsYcSNIDxFU0M+IChwcm8gdWppxaF0xJtuw60sIMW+ZSBzZSBuYWNow6F6w63FoSB2IE5vcm3DoWxuw61tIG3Ds2R1KS4KKworICAyLiBOYXBpxaE6CQkJOnEhIDxFTlRFUj4uCisKKy0tLT4gVMOtbXRvIHVrb27EjcOtxaEgZWRpdG9yIEJFWiB1bG/FvmVuw60gem3Em24sIGt0ZXLDqSBzaSB2eWtvbmFsLgorICAgICBQb2t1ZCBjaGNlxaEgdWxvxb5pdCB6bcSbbnkgYSB1a29uxI1pdCBlZGl0b3IgbmFwacWhOgorCQkJCTp3cSAgPEVOVEVSPgorCisgIDMuIEHFviBzZSBkb3N0YW5lxaEgbmEgcMWZw61rYXpvdsO9IMWZw6FkZWssIG5hcGnFoSBwxZnDrWtheiwga3RlcsO9bSBzZSBkb3N0YW5lxaEgenDEm3QKKyAgICAgZG8gdMOpdG8gdsO9dWt5LiBUbyBtxa/FvmUgYsO9dDogdmltdHV0b3IgPEVOVEVSPgorICAgICBCxJvFvm7EmyBzZSBwb3XFvsOtdsOhOgkJIHZpbSB0dXRvciA8RU5URVI+CisKKy0tLT4gJ3ZpbScgem5hbWVuw6Egc3B1xaF0xJtuw60gZWRpdG9ydSwgJ3R1dG9yJyBqZSBzb3Vib3IgayBlZGl0YWNpLgorCisgIDQuIFBva3VkIHNpIHR5dG8ga3Jva3kgc3BvbGVobGl2xJsgcGFtYXR1amXFoSwgdnlrb25laiBrcm9reSAxIGHFviAzLCDEjcOtbcW+CisgICAgIHVrb27EjcOtxaEgYSB6bm92dSBzcHVzdMOtxaEgZWRpdG9yLiBQb3RvbSBwxZllc3XFiCBrdXJ6b3IgZG9sdSBuYSBsZWtjaSAxLjMuCisgICAgIAorfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgMS4zOiDDmlBSQVZBIFRFWFRVIC0gTUFaw4FOw40KKworCisgICoqIFN0aXNrbnV0w61tIGtsw6F2ZXN5ICB4ICB2IE5vcm3DoWxuw61tIG3Ds2R1IHNtYcW+ZcWhIHpuYWsgbmEgbcOtc3TEmyBrdXJ6b3J1LiAqKgorCisgIDEuIFDFmWVzdcWIIGt1cnpvciBuw63FvmUgbmEgxZnDoWRlayBvem5hxI1lbsO9IC0tLT4uCisKKyAgMi4gSyBvZHN0cmFuxJtuw60gY2h5YiBwxZllamRpIGt1cnpvcmVtIG5hIHpuYWssIGt0ZXLDvSBjaGNlxaEgc21hemF0LgorCisgIDMuIFN0bGHEjSBrbMOhdmVzdSAgeCAgayBvZHN0cmFuxJtuw60gbmVjaHTEm27DvWNoIHpuYWvFry4KKworICA0LiBPcGFrdWoga3Jva3kgMiBhxb4gNCBkb2t1ZCBuZW7DrSB2xJt0YSBzcHLDoXZuxJsuCisKKy0tLT4gS3LDocOhdmEgc2tvxI3EjWlsbGEgcMWZZXNzIG3Em3Nzw61jLgorCisgIDUuIFBva3VkIGplIHbEm3RhIHNwcsOhdm7EmywgcMWZZWpkaSBuYSBsZWtjaSAxLjQuCisKK1BPWk7DgU1LQTogTmVzbmHFviBzZSBwb3V6ZSB6YXBhbWF0b3ZhdCBwxZllZHbDoWTEm27DqSBwxZnDrWthenksIHXEjSBzZSBqZSBwb3XFvsOtdsOhbsOtbS4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgMS40OiDDmlBSQVZBIFRFWFRVIC0gVktMw4FEw4FOw40KKworCisgICAgICAqKiBTdGxhxI1lbsOtIGtsw6F2ZXN5ICBpICB2IE5vcm3DoWxuw61tIG3Ds2R1IHVtb8W+xYh1amUgdmtsw6Fkw6Fuw60gdGV4dHUuICoqCisKKyAgMS4gUMWZZXN1xYgga3Vyem9yIG5hIHBydm7DrSDFmcOhZGVrIG96bmHEjWVuw70gLS0tPi4KKworICAyLiBQcm8gdXByYXZlbsOtIHBydm7DrWhvIMWZw6Fka3UgZG8gcG9kb2J5IMWZw6Fka3UgZHJ1aMOpaG8sIHDFmWVzdcWIIGt1cnpvciBuYQorICAgICBwcnZuw60gem5hayB6YSBtw61zdG8sIGtkZSBtw6EgYsO9dCB0ZXh0IHZsb8W+ZW7DvS4KKworICAzLiBTdGxhxI0gIGkgIGEgbmFwacWhIHBvdMWZZWJuw70gZG9kYXRlay4KKworICA0LiBQbyBvcHJhdmVuw60ga2HFvmTDqSBjaHlieSBzdGxhxI0gPEVTQz4gcHJvIG7DoXZyYXQgZG8gTm9ybcOhbG7DrWhvIG3Ds2R1LgorICAgICBPcGFrdWoga3Jva3kgMiBhxb4gNCBkb2t1ZCBuZW7DrSB2xJt0YSBzcHLDoXZuxJsuCisKKy0tLT4gTsSbamFrw70gdHh0IG5hIHTDqXRvIC4KKy0tLT4gTsSbamFrw70gdGV4dCBjaHliw60gbmEgdMOpdG8gxZnDoWRjZS4KKworICA1LiBQb2t1ZCBqacW+IG92bMOhZMOhxaEgdmtsw6Fkw6Fuw60gdGV4dHUsIHDFmWVqZGkgbmEgbsOhc2xlZHVqw61jw60gc2hybnV0w60uCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJOVVTDjSBMRUtDRSAxCisKKworICAxLiBLdXJ6b3JlbSBzZSBwb2h5YnVqZSBwb21vY8OtIMWhaXBlayBuZWJvIGtsw6F2ZXNhbWkgaGprbC4KKwloICh2bGV2bykJaiAoZG9sdSkJayAobmFob3J1KQlsICh2cHJhdm8pCisKKyAgMi4gUHJvIHNwdcWhdMSbbsOtIFZpbXUgKHogcMWZw61rYXpvdsOpaG8gxZnDoWRrdSkgbmFwacWhOiB2aW0gU09VQk9SIDxFTlRFUj4KKworICAzLiBQcm8gdWtvbsSNZW7DrSBWaW11IG5hcGnFoTogPEVTQz4gIDpxISAgPEVOVEVSPiAgYmV6IHVsb8W+ZW7DrSB6bcSbbi4KKwkgICAgIAkgICAgICAgYW5lYm86IDxFU0M+ICA6d3EgIDxFTlRFUj4gIHBybyB1bG/FvmVuw60gem3Em24uCisKKyAgNC4gUHJvIHNtYXrDoW7DrSB6bmFrdSBwb2Qga3Vyem9yZW0gbmFwacWhIHYgTm9ybcOhbG7DrW0gbcOzZHU6ICB4CisKKyAgNS4gUHJvIHZrbMOhZMOhbsOtIHRleHR1IG9kIG3DrXN0YSBrdXJ6b3J1IG5hcGnFoSB2IE5vcm3DoWxuw61tIG3Ds2R1OgorCSBpICAgICB2a2zDoWRhbsO9IHRleHQJPEVTQz4KKworUE9aTsOBTUtBOiBTdGxhxI1lbsOtIDxFU0M+IHTEmyBwxZllbcOtc3TDrSBkbyBOb3Jtw6FsbsOtaG8gbcOzZHUgbmVibyB6cnXFocOtIG5lY2h0xJtuw70KKyAgICAgIGEgxI3DoXN0ZcSNbsSbIGRva29uxI1lbsO9IHDFmcOta2F6LgorCitOeW7DrSBwb2tyYcSNdWogTGVrY8OtIDIuCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQlMZWtjZSAyLjE6IFDFmMONS0FaWSBNQVrDgU7DjQorCisKKwkgICAgICAgKiogUMWZw61rYXogIGR3ICBzbWHFvmUgem5ha3kgZG8ga29uY2Ugc2xvdmEuICoqCisKKyAgMS4gU3RsYcSNICA8RVNDPiAgayB1YmV6cGXEjWVuw60sIMW+ZSBqc2kgdiBOb3Jtw6FsbsOtbSBtw7NkdS4KKworICAyLiBQxZllc3XFiCBrdXJ6b3IgbsOtxb5lIG5hIMWZw6FkZWsgb3puYcSNZW7DvSAtLS0+LgorCisgIDMuIFDFmWVzdcWIIGt1cnpvciBuYSB6YcSNw6F0ZWsgc2xvdmEsIGt0ZXLDqSBqZSBwb3TFmWViYSBzbWF6YXQuCisKKyAgNC4gTmFwacWhICAgZHcJICwgYWJ5IHNsb3ZvIHptaXplbG8uCisKK1BPWk7DgU1LQTogUMOtc21lbmEgZHcgc2Ugem9icmF6w60gbmEgcG9zbGVkbsOtbSDFmcOhZGt1IG9icmF6b3ZreSBqYWttaWxlIGplCisJICBuYXDDrcWhZcWhLiBLZHnFviBuYXDDrcWhZcWhIG7Em2NvIMWhcGF0bsSbLCBzdGxhxI0gIDxFU0M+ICBhIHphxI1uaSB6bm92YS4KKworLS0tPiBKc291IHR1IG7Em2pha8OhIHNsb3ZhIHrDoWJhdmEsIGt0ZXLDoSBuZXBhdMWZw60gbGlzdCBkbyB0w6l0byB2xJt0eS4KKworICA1LiBPcGFrdWoga3Jva3kgMyBhxb4gNCBkb2t1ZCBuZW7DrSB2xJt0YSBzcHLDoXZuxJsgYSBwxZllamRpIG5hIGxla2NpIDIuMi4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMZWtjZSAyLjI6IFbDjUNFIFDFmMONS0Faxa4gTUFaw4FOw40KKworCisJICAgKiogTmFwc8OhbsOtIHDFmcOta2F6dSAgZCQgIHNtYcW+ZSB2xaFlIGHFviBkbyBrb25jZSDFmcOhZGt5LiAqKgorCisgIDEuIFN0bGHEjSAgPEVTQz4gIGsgdWJlenBlxI1lbsOtLCDFvmUganNpIHYgTm9ybcOhbG7DrW0gbcOzZHUuCisKKyAgMi4gUMWZZXN1xYgga3Vyem9yIG7DrcW+ZSBuYSDFmcOhZGVrIG96bmHEjWVuw70gLS0tPi4KKworICAzLiBQxZllc3XFiCBrdXJ6b3IgbmEga29uZWMgc3Byw6F2bsOpIHbEm3R5IChaQSBwcnZuw60gdGXEjWt1KS4KKworICA0LiBOYXBpxaEgIGQkICAsYWJ5IGpzaSBzbWF6YWwgem5ha3kgYcW+IGRvIGtvbmNlIMWZw6Fka3UuCisKKy0tLT4gTsSba2RvIG5hcHNhbCBrb25lYyB0w6l0byB2xJt0eSBkdmFrcsOhdC4ga29uZWMgdMOpdG8gdsSbdHkgZHZha3LDoXQuCisKKworICA1LiBQxZllamRpIG5hIGxla2NpIDIuMyBwcm8gcG9jaG9wZW7DrSB0b2hvLCBjbyBzZSBzdGFsby4KKworCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICBMZWtjZSAyLjM6IFJPWsWgScWYT1ZBQ8ONIFDFmMONS0FaWSBBIE9CSkVLVFkKKworCisgIEZvcm3DoXQgbWF6YWPDrWhvIHDFmcOta2F6dSAgZCAgamUgbsOhc2xlZHVqw61jw606CisKKwkgW8SNw61zbG9dICAgZCAgIG9iamVrdCAgICAgTkVCTyAgICAgZCAgIFvEjcOtc2xvXSAgIG9iamVrdAorICBLZGU6CisgICAgxI3DrXNsbyAtIHVkw6F2w6Ega29saWtyw6F0IHNlIHDFmcOta2F6IHZ5a29uw6EgKHZvbGl0ZWxuw6ksIHbDvWNob3rDrT0xKS4KKyAgICBkIC0gamUgcMWZw61rYXogbWF6w6Fuw60uCisgICAgb2JqZWt0IC0gdWTDoXbDoSBuYSDEjWVtIHNlIHDFmcOta2F6IHZ5a29uw6F2w6EgKHZ5cHNhbsOpIG7DrcW+ZSkuCisKKyAgS3LDoXRrw70gdsO9cGlzIG9iamVrdMWvOgorICAgIHcgLSBvZCBrdXJ6b3J1IGRvIGtvbmNlIHNsb3ZhLCB2xI1ldG7EmyBtZXplci4KKyAgICBlIC0gb2Qga3Vyem9ydSBkbyBrb25jZSBzbG92YSwgQkVaIG1lemVyLgorICAgICQgLSBvZCBrdXJ6b3J1IGRvIGtvbmNlIMWZw6Fka3UuCisKK1BPWk7DgU1LQTogIFN0bGHEjWVuw61tIGtsw6F2ZXN5IG9iamVrdHUgdiBOb3Jtw6FsbsOtbSBtw7NkdSBzZSBrdXJ6b3IgcMWZZXN1bmUgbmEKKyAgICAgICAgICAgbcOtc3RvIHVwxZllc27Em27DqSB2ZSB2w71waXN1IG9iamVrdMWvLgorCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICBMZWtjZSAyLjQ6IFbDnUpJTUtBIFogJ1DFmMONS0FaLU9CSkVLVCcKKworCisgICAgCSAgICAgICAgICAqKiBOYXBzw6Fuw61tICAgZGQgICBzbWHFvmXFoSBjZWzDvSDFmcOhZGVrLiAqKgorCisgIFZ6aGxlZGVtIGsgxI1hc3Rvc3RpIG1hesOhbsOtIGNlbMOpaG8gxZnDoWRrdSBzZSBhdXRvxZlpIFZpbXUgcm96aG9kbGksIMW+ZSBidWRlCisgIGplZG5vZHXFocOtIG5hcHNhdCBwcm9zdMSbIGR2xJsgZCBrIHNtYXrDoW7DrSBjZWzDqWhvIMWZw6Fka3UuCisKKyAgMS4gUMWZZXN1xYgga3Vyem9yIG5hIGRydWjDvSDFmcOhZGVrIHNwb2Ruw61obyB0ZXh0dS4KKyAgMi4gTmFwacWhICBkZCAgcHJvIHNtYXrDoW7DrSDFmcOhZGt1LgorICAzLiBQxZllamRpIG5hIMSNdHZydMO9IMWZw6FkZWsuCisgIDQuIE5hcGnFoSAgIDJkZCAgICh2enBvbWXFiCBzaSAgxI3DrXNsby1wxZnDrWthei1vYmpla3QpIHBybyBzbWF6w6Fuw60gZHZvdSDFmcOhZGvFry4KKworICAgICAgMSkgIFLFr8W+ZSBqc291IMSNZXJ2ZW7DqSwKKyAgICAgIDIpICBCbMOhdG8gamUgesOhYmF2bsOpLAorICAgICAgMykgIEZpYWxreSBqc291IG1vZHLDqSwKKyAgICAgIDQpICBNw6FtIGF1dG8sCisgICAgICA1KSAgSG9kaW5reSB1a2F6dWrDrSDEjWFzLAorICAgICAgNikgIEN1a3IgamUgc2xhZGvDvSwKKyAgICAgIDcpICBBIHRvIGpzaSBpIHR5LgorCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgTGVrY2UgMi41OiBQxZjDjUtBWiBVTkRPCisKKworICAgKiogU3RsYcSNICB1CXBybyB2csOhY2Vuw60gcG9zbGVkbsOtaG8gcMWZw61rYXp1LCAgVSAgcHJvIGNlbG91IMWZw6Fka3UuICoqCisKKyAgMS4gUMWZZXN1xYgga3Vyem9yIG7DrcW+ZSBuYSDFmcOhZGVrIG96bmHEjWVuw70gLS0tPiBhIHDFmWVtw61zdGkgaG8gbmEgcHJ2bsOtIGNoeWJ1LgorICAyLiBOYXBpxaEgIHggIHBybyBzbWF6w6Fuw60gcHJ2bsOtaG8gbmVjaHTEm27DqWhvIHpuYWt1LgorICAzLiBUZcSPIG5hcGnFoSAgdSAgxI3DrW3FviB2csOhdMOtxaEgenDEm3QgcG9zbGVkbsOtIHZ5a29uYW7DvSBwxZnDrWthei4KKyAgNC4gTnluw60gb3ByYXYgdsWhZWNobnkgY2h5YnkgbmEgxZnDoWRrdSBwb21vY8OtIHDFmcOta2F6dSAgeCAgLgorICA1LiBOYXBpxaEgdmVsa8OpICBVICDEjcOtbcW+IHZyw6F0w63FoSDFmcOhZGVrIGRvIHDFr3ZvZG7DrWhvIHN0YXZ1LgorICA2LiBUZcSPIG5hcGnFoSAgdSAgbsSba29saWtyw6F0LCDEjcOtbcW+IHZyw6F0w63FoSB6cMSbdCBwxZnDrWtheiAgVSAgLgorICA3LiBTdGxhxI0gQ1RSTC1SIChrbMOhdmVzdSBDVFJMIGRyxb4gc3RsYcSNZW5vdSBhIHN0aXNrbmkgUikgbsSba29saWtyw6F0LAorICAgICDEjcOtbcW+IHZyw6F0w63FoSB6cMSbdCBwxZllZHTDrW0gdnLDoWNlbsOpIHDFmcOta2F6eSAocmVkbykuCisKKy0tLT4gT3BwcmF2IGNoeWJieSBubmEgdG9vbXRvIMWZw6Fka3UgYSBuYWhyYcSPIGplIHBvbW1vY8OtIHVuZG8uCisKKyAgOC4gVG90byBqc291IHZlbG1pIHXFvml0ZcSNbsOpIHDFmcOta2F6eS4gTnluw60gcMWZZWpkaSBuYSBzb3Vocm4gTGVrY2UgMi4KKworICAKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgICAgIFNIUk5VVMONIExFS0NFIDIKKworCisgIDEuIFBybyBzbWF6w6Fuw60gem5ha8WvIG9kIGt1cnpvcnUgZG8ga29uY2Ugc2xvdmEgbmFwacWhOiAgICBkdworCisgIDIuIFBybyBzbWF6w6Fuw60gem5ha8WvIG9kIGt1cnpvcnUgZG8ga29uY2UgxZnDoWRrdSBuYXBpxaE6ICAgIGQkCisKKyAgMy4gUHJvIHNtYXrDoW7DrSBjZWzDqWhvIMWZw6Fka3UgbmFwacWhOiAgICBkZAorCisgIDQuIEZvcm3DoXQgcMWZw61rYXp1IHYgTm9ybcOhbG7DrW0gbcOzZHUgamU6CisKKyAgICAgICBbxI3DrXNsb10gICBwxZnDrWtheiAgIG9iamVrdCAgICBORUJPICAgIHDFmcOta2F6ICAgICBbxI3DrXNsb10gICBvYmpla3QKKyAgICAga2RlOgorICAgICAgIMSNw61zbG8gLSB1ZMOhdsOhIHBvxI1ldCBvcGFrb3bDoW7DrSBwxZnDrWthenUKKyAgICAgICBwxZnDrWtheiAtIHVkw6F2w6EgY28gamUgdMWZZWJhIHZ5a29uYXQsIG5hcMWZw61rbGFkICBkICBtYcW+ZQorICAgICAgIG9iamVrdCAtIHVkw6F2w6Egcm96c2FoIHDFmcOta2F6dSwgbmFwxZnDrWtsYWQgIHcgIChzbG92byksCisJCSQgKGRvIGtvbmNlIMWZw6Fka3UpLCBhdGQuCisKKyAgNS4gUHJvIHZyw6FjZW7DrSBwxZllZGXFoWzDqSDEjWlubm9zdGksIG5hcGnFoToJdSAobWFsw6kgdSkKKyAgICAgUHJvIHZyw6FjZW7DrSB2xaFlY2ggw7pwcmF2IG5hIMWZw6Fka3UgbmFwacWhOglVICh2ZWxrw6kgVSkKKyAgICAgUHJvIHZyw6FjZW7DrSB2csOhY2Vuw71jaCDDunByYXYgKHJlZG8pIG5hcGnFoToJQ1RSTC1SCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJIExla2NlIDMuMTogUMWYw41LQVogVkxPxb1JVAorCisKKyAgICAgICAqKiBQxZnDrWthICBwICB2bG/FvsOtIHBvc2xlZG7DrSB2eW1hemFuw70gdGV4dCB6YSBrdXJ6b3IuICoqCisKKyAgMS4gUMWZZXN1xYgga3Vyem9yIG7DrcW+ZSBuYSBwb3NsZWRuw60gxZnDoWRlayB0ZXh0dS4KKworICAyLiBOYXBpxaEgIGRkICBwcm8gc21hesOhbsOtIMWZw6Fka3UgYSBqZWhvIHVsb8W+ZW7DrSBkbyBidWZmZXJ1LgorCisgIDMuIFDFmWVzdcWIIGt1cnpvciBWw53FoEUgdGFtLCBrYW0gc21hemFuw70gxZnDoWRlayBwYXTFmcOtLgorCisgIDQuIFYgTm9ybcOhbG7DrW0gbcOzZHUgbmFwacWhICBwICBwcm8gb3DEm3Ruw6kgdmxvxb5lbsOtIMWZw6Fka3UuCisKKyAgNS4gT3Bha3VqIGtyb2t5IDIgYcW+IDQgZG9rdWQgxZnDoWRreSBuZWJ1ZG91IHZlIHNwcsOhdm7DqW0gcG/FmWFkw60uCisKKyAgICAgZCkgVGFrw6kgc2UgZG9rw6HFvmXFoSB2emTEm2zDoXZhdD8KKyAgICAgYikgRmlhbGt5IGpzb3UgbW9kcsOpLAorICAgICBjKSBJbnRlbGlnZW5jZSBzZSB1xI3DrSwKKyAgICAgYSkgUsWvxb5lIGpzb3UgxI1lcnZlbsOpLAorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICBMZWtjZSAzLjI6IFDFmMONS0FaIE5BSFJBWkVOw40KKworCisgICAgICAgICAgKiogTmFwc8OhbsOtbSAgciAgYSB6bmFrdSBzZSBuYWhyYWTDrSB6bmFrIHBvZCBrdXJ6b3JlbS4gKioKKworICAxLiBQxZllc3XFiCBrdXJ6b3IgbsOtxb5lIG5hIHBydm7DrSDFmcOhZGVrIG96bmHEjWVuw70gLS0tPi4KKworICAyLiBQxZllc3XFiCBrdXJ6b3IgbmEgemHEjcOhdGVrIHBydm7DrSBjaHlieS4KKworICAzLiBOYXBpxaEgIHIgIGEgcG90b20gem5haywga3RlcsO9IG5haHJhZMOtIGNoeWJ1LgorCisgIDQuIE9wYWt1aiBrcm9reSAyIGHFviAzIGRva3VkIG5lbsOtIHBydm7DrSDFmcOhZGthIHNwcsOhdm7Emy4KKworLS0tPiAgS2Rpxb4gYnlsIHB6w6FuIHRlbnRvIMWZw6FkZWcsIG7Em2tkdSBzdGxhxb5pbCDFoXBhcW7DqSBrbMOhdmVzeSEKKy0tLT4gIEtkecW+IGJ5bCBwc8OhbiB0ZW50byDFmcOhZGVrLCBuxJtrZG8gc3RsYcSNw61sIMWhcGF0bsOpIGtsw6F2ZXN5IQorCisgIDUuIE55bsOtIHDFmWVqZGkgbmEgTGVrY2kgMy4yLgorCitQT1pOw4FNS0E6IFphcGFtYXR1aiBzaSwgxb5lIGJ5IHNlcyBtxJtsIHXEjWl0IHBvdcW+w612w6Fuw61tLCBuZSB6YXBhbWF0b3bDoW7DrW0uCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgICAgICBMZWtjZSAzLjM6IFDFmMONS0FaIMOaUFJBVlkKKworCisJICAqKiBQb2t1ZCBjaGNlxaEgem3Em25pdCDEjcOhc3QgbmVibyBjZWzDqSBzbG92bywgbmFwacWhICBjdyAuICoqCisKKyAgMS4gUMWZZXN1xYgga3Vyem9yIG7DrcW+ZSBuYSBwcnZuw60gxZnDoWRlayBvem5hxI1lbsO9IC0tLT4uCisKKyAgMi4gVW3DrXN0aSBrdXJ6b3IgbmEgcMOtc21lbm8gaSB2IHNsb3bEmyDFmWnFpW9rLgorCisgIDMuIE5hcGnFoSAgY3cgIGEgb3ByYXYgc2xvdm8gKHYgdG9tdG8gcMWZw61wYWTEmyBuYXBpxaEgJ8OhZGVrJy4pCisKKyAgNC4gU3RsYcSNIDxFU0M+IGEgcMWZZWpkaSBuYSBkYWzFocOtIGNoeWJ1IChwcnZuw60gem5haywga3RlcsO9IHTFmWViYSB6bcSbbml0LikKKworICA1LiBPcGFrdWoga3Jva3kgMyBhxb4gNCBkb2t1ZCBuZW7DrSBwcnZuw60gdsSbdGEgc3Rlam7DoSBqYWtvIHRhIGRydWjDoS4KKworLS0tPiBUZW50byDFmWnFpW9rIG3DoSBuxJtrb2xpayBza2ljLCBrdGVyw6kgcHNhZG9pbnNhIHptxJtuaXQgcGFzZGdmIHDFmcOta2F6dS4KKy0tLT4gVGVudG8gxZnDoWRlayBtw6EgbsSba29saWsgc2xvdiwga3RlcsOpIHBvdMWZZWJ1asOtIHptxJtuaXQgcG9tb2PDrSBwxZnDrWthenUuCisKK1bFoWltbmkgc2ksIMW+ZSAgY3cgIG5lamVuIG5haHJhenVqZSBzbG92bywgYWxlIHRha8OpIHDFmWVtw61zdMOtIGRvIHZrbMOhZMOhbsOtLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICBMZWtjZSAzLjQ6IFbDjUNFIFpNxJpOIFBPVcW9SVTDjU0gYworCisKKyAgICoqIFDFmcOta2F6IHBybyDDunByYXZ1IHNlIGRydcW+w60gc2Ugc3Rlam7DvW1pIG9iamVrdHkgamFrbyB0ZW4gcHJvIG1hesOhbsOtLiAqKgorCisgIDEuIFDFmcOta2F6IHBybyDDunByYXZ1IHByYWN1amUgc3Rlam7EmyBqYWtvIHBybyBtYXrDoW7DrS4gRm9ybcOhdCBqZToKKworICAgICAgIFvEjcOtc2xvXSAgIGMgICBvYmpla3QJIE5FQk8JICAgYwlbxI3DrXNsb10gICBvYmpla3QKKworICAyLiBPYmpla3R5IGpzb3UgdGFrw6kgc2hvZG7DqSwgamFrbyBuYXDFmS46IHcgKHNsb3ZvKSwgJCAoa29uZWMgxZnDoWRrdSksIGF0ZC4KKworICAzLiBQxZllamRpIG7DrcW+ZSBuYSBwcnZuw60gxZnDoWRlayBvem5hxI1lbsO9IC0tLT4uCisKKyAgNC4gUMWZZXN1xYgga3Vyem9yIG5hIHBydm7DrSByb3pkw61sLgorCisgIDUuIE5hcGnFoSAgYyQgIHBybyB1cHJhdmVuw60gemJ5dGt1IMWZw6Fka3UgcG9kbGUgdG9obyBkcnVow6lobyBhIHN0bGHEjSA8RVNDPi4KKworLS0tPiBLb25lYyB0b2hvdG8gxZnDoWRrdSBwb3TFmWVidWplIHBvbW9jLCBhYnkgYnlsIGpha28gdGVuIGRydWjDvS4KKy0tLT4gS29uZWMgdG9ob3RvIMWZw6Fka3UgcG90xZllYnVqZSBvcHJhdml0IHBvdcW+aXTDrW0gcMWZw61rYXp1ICBjJCAgLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgICAgU0hSTlVUw40gTEVLQ0UgMworCisKKyAgMS4gUHJvIHZsb8W+ZW7DrSB0ZXh0dSwga3RlcsO9IGJ5bCBzbWF6w6FuLCBuYXBpxaEgIHAgIC4gVG8gdmxvxb7DrSBzbWF6YW7DvSB0ZXh0CisgICAgIFpBIGt1cnpvciAocG9rdWQgYnlsIMWZw6FkZWsgc21hemFuw70sIHDFmWVqZGUgbmEgxZnDoWRlayBwb2Qga3Vyem9yZW0pLgorCisgIDIuIFBybyBuYWhyYXplbsOtIHpuYWt1IHBvZCBrdXJ6b3JlbSwgbmFwacWhICByICBhIHBvdG9tIHpuYWssIGt0ZXLDvW0KKyAgICAgY2hjZcWhIHDFr3ZvZG7DrSB6bmFrIG5haHJhZGl0LgorCisgIDMuIFDFmcOta2F6IG5hIHVwcmF2b3bDoW7DrSB1bW/FvsWIdWplIHptxJtuaXQgc3BlY2lmaWtvdmFuw70gb2JqZWt0IG9kIGt1cnpvcnUKKyAgICAgZG8ga29uY2Ugb2JqZWt0dS4gTmFwxZnDrWtsYWQ6IE5hcGnFoSAgY3cgICzEjcOtbcW+IHptxJtuw63FoSB0ZXh0IG9kIHBvemljZQorICAgICBrdXJ6b3J1IGRvIGtvbmNlIHNsb3ZhLCAgYyQgIHptxJtuw60gdGV4dCBkbyBrb25jZSDFmcOhZGt1LgorCisgIDQuIEZvcm3DoXQgcHJvIG5haHJhem92w6Fuw60gamU6CisKKwkgW8SNw61zbG9dICAgYyAgIG9iamVrdCAgICAgIE5FQk8gICAgIGMgICBbxI3DrXNsb10gICBvYmpla3QKKworTnluw60gcMWZZWpkaSBuYSBuw6FzbGVkdWrDrWPDrSBsZWtjaS4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla2NlIDQuMTogUE9aSUNFIEEgU1RBVFVTIFNPVUJPUlUKKworCisgICoqIFN0bGHEjSBDVFJMLWcgcHJvIHpvYnJhemVuw60gc3bDqSBwb3ppY2UgdiBzb3Vib3J1IGEgc3RhdHVzdSBzb3Vib3J1LgorICAgICBTdGxhxI0gU0hJRlQtRyBwcm8gcMWZZWNob2QgbmEgxZnDoWRlayB2IHNvdWJvcnUuICoqCisKKyAgUG96bsOhbWthOiBQxZllxI10aSBzaSBjZWxvdSBsZWtjaSBuZcW+IHphxI1uZcWhIHZ5a29uw6F2YXQga3Jva3khIQorCisgIDEuIERyxb4ga2zDoXZlc3UgQ3RybCBzdGxhxI1lbm91IGEgc3Rpc2tuaSAgZyAgLiBWZXNwb2Qgb2JyYXpvdmt5IHNlIHpvYnJhesOtCisgICAgIHN0YXZvdsO9IMWZw6FkZWsgcyBuw6F6dmVtIHNvdWJvcnUgYSDFmcOhZGtvdSBuYSBrdGVyw6kgc2UgbmFjaMOhesOtxaEuIFphcGFtYXR1agorICAgICBzaSDEjcOtc2xvIMWZw6Fka3UgcHJvIGtyb2sgMy4KKworICAyLiBTdGxhxI0gc2hpZnQtRyBwcm8gcMWZZXN1biBuYSBrb25lYyBzb3Vib3J1LgorCisgIDMuIE5hcGnFoSDEjcOtc2xvIMWZw6Fka3UgbmEga3RlcsOpbSBzaSBzZSBuYWNow6F6ZWwgYSBzdGxhxI0gc2hpZnQtRy4gVG8gdMSbCisgICAgIHZyw6F0w60gbmEgxZnDoWRlaywgbmEga3RlcsOpbSBqc2kgZMWZw612ZSBzdGlza2wgQ3RybC1nLgorICAgICAoS2R5xb4gcMOtxaFlxaEgxI3DrXNsYSwgdGFrIHNlIE5FWk9CUkFaVUrDjSBuYSBvYnJhem92Y2UuKQorCisgIDQuIFBva3VkIHNlIGPDrXTDrcWhIHNjaG9wbsO9IHZ5a29uYXQgdHl0byBrcm9reSwgdnlrb25laiBqZS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJTGVrY2UgNC4yOiBQxZjDjUtBWiBWWUhMRUTDgVbDgU7DjQorCisKKyAgICAgKiogTmFwacWhICAvICBuw6FzbGVkb3ZhbsOpIMWZZXTEm3pjZW0gcHJvIHZ5aGxlZMOhbsOtIG9ub2hvIMWZZXTEm3pjZS4gKioKKworICAxLiBTdGlza25pIC8gdiBOb3Jtw6FsbsOtbSBtw7NkdS4gIFbFoWltbmkgc2ksIMW+ZSB0ZW50byB6bmFrIHNlIHNwb2x1IHMKKyAgICAga3Vyem9yZW0gem9icmF6w60gdiBkb2xuw60gxI3DoXN0aSBvYnJhem92a3kgamFrbyBwxZnDrWtheiAgOiAgLgorCisgIDIuIE55bsOtIG5hcGnFoSAnY2hoeWJiYScgPEVOVEVSPi4gIFRvIGplIHNsb3ZvLCBrdGVyw6kgY2hjZcWhIHZ5aGxlZGF0LgorCisgIDMuIFBybyB2eWhsZWTDoW7DrSBkYWzFocOtaG8gdsO9c2xlZGt1IHN0ZWpuw6lobyDFmWV0xJt6Y2UsIGplZG5vZHXFoWUgc3RsYcSNICBuICAuCisgICAgIFBybyB2eWhsZWTDoW7DrSBkYWzFocOtaG8gdsO9c2xlZGt1IHN0ZWpuw6lobyDFmWV0xJt6Y2Ugb3BhxI1uw71tIHNtxJtyZW0sIHN0aXNrbmkKKyAgICAgU2hpZnQtTi4KKworICA0LiBQb2t1ZCBjaGNlxaEgdnlobGVkYXQgxZlldMSbemVjIHYgb3BhxI1uw6ltIHNtxJtydSwgcG91xb5paiBwxZnDrWtheiAgPyAgbcOtc3RvCisgICAgIHDFmcOta2F6dSAgLyAgLgorCistLS0+ICJjaGh5YmJhIiBuZW7DrSB6cMWvc29iLCBqYWsgaGzDoXNrb3ZhdCBjaHliYTsgY2hoeWJiYSBqZSBjaHliYS4KKworUG96bsOhbWthOiBLZHnFviB2eWhsZWTDoXbDoW7DrSBkb3PDoWhuZSBrb25jZSBzb3Vib3J1LCBidWRlIHBva3JhxI1vdmF0IG5hIGplaG8KKyAgICAgICAgICB6YcSNw6F0a3UuCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICBMZWtjZSA0LjM6IFZZSExFRMOBVsOBTsONIFDDgVJPVsOJIFrDgVZPUktZCisKKworCSAgICAgICoqIE5hcGnFoSAgJSAgcHJvIG5hbGV6ZW7DrSBww6Fyb3bDqSApLF0sIG5lYm8gfSAuICoqCisKKyAgMS4gUMWZZW3DrXN0aSBrdXJ6b3IgbmEga3Rlcm91a29saSAoLCBbLCBuZWJvIHsgdiDFmcOhZGt1IG96bmHEjWVuw6ltIC0tLT4uCisKKyAgMi4gTnluw60gbmFwacWhIHpuYWsgICUgIC4KKworICAzLiBLdXJ6b3Igc2UgcMWZZW3DrXN0w60gbmEgb2Rwb3bDrWRhasOtY8OtIHrDoXZvcmt1LgorCisgIDQuIFN0bGHEjSAgJSAgcHJvIHDFmWVzdW4ga3Vyem9ydSB6cMSbdCBuYSBvdHbDrXJhasOtY8OtIHrDoXZvcmt1LgorCistLS0+IFRvdG8gKCBqZSB0ZXN0b3ZhY8OtIMWZw6FkZWsgKCdzLCBbJ3MgXSBhIHsncyB9IHYgbsSbbS4gKSkKKworUG96bsOhbWthOiBUb3RvIGplIHZlbG1pIHXFvml0ZcSNbsOpIHDFmcOtIGxhZMSbbsOtIHByb2dyYW11IHMgY2h5YsSbasOtY8OtbWkKKyAgICAgICAgICB1emF2w61yYWPDrW1pIHrDoXZvcmthbWkuCisKKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgIExla2NlIDQuNDogWlDFrlNPQiBKQUsgWk3Emk5JVCBDSFlCWQorCQkgICAgICAKKworICAgKiogTmFwacWhICA6cy9zdGFyw6kvbm92w6kvZyAgcHJvIG5haHJhemVuw60gc2xvdmEgJ25vdsOpJyB6YSAnc3RhcsOpJy4gKioKKworICAxLiBQxZllc3XFiCBrdXJ6b3IgbmEgxZnDoWRlayBvem5hxI1lbsO9IC0tLT4uCisKKyAgMi4gTmFwacWhICA6cy9kb2Jyw6nDqS9kb2Jyw6kgPEVOVEVSPiAuICBWxaFpbW5pIHNpLCDFvmUgdGVudG8gcMWZw61rYXogem3Em27DrSBwb3V6ZQorICAgICBwcnZuw60gdsO9c2t5dCB2IMWZw6Fka3UuCisKKyAgMy4gTnluw60gbmFwacWhCSA6cy9kb2Jyw6nDqS9kb2Jyw6kvZyAgY2/FviB6bmFtZW7DoSBjZWxrb3bDqSBuYWhyYXplbsOtIHYgxZnDoWRrdS4KKyAgICAgVG90byBuYWhyYWTDrSB2xaFlY2hueSB2w71za3l0eSB2IMWZw6Fka3UuCisKKy0tLT4gZG9icsOpw6kgc3Vyb3ZpbnkgYSBkb2Jyw6nDqSBuw6HEjWluw60ganNvdSB6w6FrbGFkZW0gZG9icsOpw6kga3VjaHluxJsuCisKKyAgNC4gUHJvIHptxJtudSB2xaFlY2ggdsO9c2t5dMWvIMWZZXTEm3pjZSBtZXppIGR2xJttYSDFmcOhZGt5LAorICAgICBOYXBpxaEgICA6Iywjcy9zdGFyw6kvbm92w6kvZyAga2RlICMsIyBqc291IMSNw61zbGEgb27Em2NoIMWZw6FkZWsuCisgICAgIE5hcGnFoSAgIDolcy9zdGFyw6kvbm92w6kvZyAgICBwcm8gem3Em251IHbFoWVjaCB2w71za3l0xa8gdiBjZWzDqW0gc291Ym9ydS4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgICAgICAgU0hSTlVUw40gTEVLQ0UgNAorCisKKyAgMS4gQ3RybC1nICB2eXDDrcWhZSB0dm91IHBvemljaSB2IHNvdWJvcnUgYSBzdGF0dXMgc291Ym9ydS4KKyAgICAgU2hpZnQtRyAgdMSbIHDFmWVtw61zdMOtIG5hIGtvbmVjIHNvdWJvcnUuICDEjMOtc2xvIG7DoXNsZWRvdmFuw6kKKyAgICAgU2hpZnQtRyAgdMSbIHDFmWVzdW5lIG5hIGRhbsOpIMSNw61zbG8gxZnDoWRrdS4KKworICAyLiBOYXBzw6Fuw60gIC8gIG7DoXNsZWRvdmFuw6kgxZlldMSbemNlbSB2eWhsZWTDoSDFmWV0xJt6ZWMgc23Em3JlbSBET1DFmEVEVS4KKyAgICAgTmFwc8OhbsOtICA/ICBuw6FzbGVkb3ZhbsOpIMWZZXTEm3pjZW0gdnlobGVkw6EgxZlldMSbemVjIHNtxJtyZW0gRE9aQURVLgorICAgICBOYXBzw6Fuw60gIG4gIHBvIHZ5aGxlZMOhdsOhbsOtIG5hamRlIG7DoXNsZWR1asOtY8OtIHbDvXNreXQgxZlldMSbemNlIHZlIHN0ZWpuw6ltCisgICAgIHNtxJtydSwgU2hpZnQtTiB2ZSBzbcSbcnUgb3BhxI1uw6ltLgorCisgIDMuIFN0aXNrbnV0w60gICUgIGtkecW+IGplIGt1cnpvciBuYSAoLCksWyxdLHssIG5lYm8gfSBuYWpkZSBvZHBvdsOtZGFqw61jw60KKyAgICAgcMOhcm92b3UgesOhdm9ya3UuCisKKyAgNC4gUHJvIG5haHJhemVuw60gbm92w6lobyB6YSBwcnZuw60gc3RhcsO9IHYgxZnDoWRrdSBuYXBpxaEgICAgIDpzL3N0YXLDqS9ub3bDqQorICAgICBQcm8gbmFocmF6ZW7DrSBub3bDqWhvIHphIHbFoWVjaG55IHN0YXLDqSB2IMWZw6Fka3UgbmFwacWhICAgOnMvc3RhcsOpL25vdsOpL2cKKyAgICAgUHJvIG5haHJhemVuw60gxZlldMSbemPFryBtZXppIGR2xJttaSDFmcOhZGthbWkgIyBuYXBpxaEgICAgICA6Iywjcy9zdGFyw6kvbm92w6kvZworICAgICBQcm8gbmFocmF6ZW7DrSB2xaFlY2ggdsO9c2t5dMWvIHYgc291Ym9ydSBuYXBpxaEJICAgOiVzL3N0YXLDqS9ub3bDqS9nCisgICAgIFBybyBwb3R2cnplbsOtIGthxb5kw6lobyBuYWhyYXplbsOtIHDFmWlkZWogJ2MnCQkgICA6JXMvc3RhcsOpL25vdsOpL2djCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICBMZWtjZSA1LjE6IEpBSyBWWUtPTkFUIFZOxJpKxaDDjSBQxZjDjUtBWgorCisKKyAgICoqIE5hcGnFoSAgOiEgIG7DoXNsZWRvdmFuw6kgdm7Em2rFocOtbSBwxZnDrWthemVtIHBybyBzcHXFoXTEm27DrSBwxZnDrWthenUuICoqCisKKyAgMS4gTmFwacWhIG9idnlrbMO9IHDFmcOta2F6ICA6ICAsIGt0ZXLDvSB1bcOtc3TDrSBrdXJ6b3IgbmEgc3BvZGVrIG9icmF6b3ZreQorICAgICBUbyB1bW/Fvm7DrSBuYXBzYXQgcMWZw61rYXouCisKKyAgMi4gTnluw60gc3Rpc2tuaSAgISAgKHZ5a8WZacSNbsOtaykuIFRvIHVtb8W+bsOtIHZ5a29uYXQgamFrw71rb2xpdiB2bsSbasWhw60KKyAgICAgcMWZw61rYXogeiBwxZnDrWthem92w6lobyDFmcOhZGt1LgorCisgIDMuIE5hcMWZw61rbGFkIG5hcGnFoSAgbHMgIHphICEgYSBzdGlza25pIDxFTlRFUj4uICBUZW50byBwxZnDrWtheiB6b2JyYXrDrQorICAgICBvYnNhaCB0dsOpaG8gYWRyZXPDocWZZSBqYWtvIHYgcMWZw61rYXpvdsOpbSDFmcOhZGt1LgorICAgICBWeXprb3XFoWVqICA6IWRpciAgcG9rdWQgbHMgbmVmdW5ndWplLgorCitQb3puw6Fta2E6ICBUYWt0byBqZSBtb8W+bsOpIHZ5a29uYXQgamFrw71rb2xpdiBwxZnDrWthei4KKworUG96bsOhbWthOiAgVsWhZWNobnkgcMWZw61rYXp5ICA6ICBtdXPDrSBiw710IGRva29uxI1lbsOpIHN0aXNrbnV0w61tIDxFTlRFUj4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgNS4yOiBWw41DRSBPIFVLTMOBRMOBTsONIFNPVUJPUsWuCisKKworCSAgICAqKiBQcm8gdWxvxb5lbsOtIHptxJtuIHYgc291Ym9ydSBuYXBpxaEgIDp3IFNPVUJPUi4gKioKKworICAxLiBOYXBpxaEgIDohZGlyICBuZWJvICA6IWxzICBwcm8gdsO9cGlzIGFrdHXDoWxuw61obyBhZHJlc8OhxZllLgorICAgICBVxb4gdsOtxaEsIMW+ZSB6YSB0w61tdG8gbXVzw63FoSBzdGlza25vdXQgPEVOVEVSPi4KKworICAyLiBWeWJlciBzaSBuw6F6ZXYgc291Ym9ydSwga3RlcsO9IGplxaF0xJsgbmVleGlzdHVqZSwgbmFwxZnDrWtsYWQgVEVTVC4KKworICAzLiBOeW7DrSBuYXBpxaE6ICA6dyBURVNUICAoa2RlIFRFU1QgamUgdnlicmFuw70gbsOhemV2IHNvdWJvcnUuKQorCisgIDQuIFRvIHVsb8W+w60gY2Vsw70gc291Ym9yICAoVsO9dWthIFZpbXUpICBwb2QgbsOhenZlbSBURVNULgorICAgICBQcm8gb3bEm8WZZW7DrSBuYXBpxaEgem5vdnUgOiFkaXIgICwgxI3DrW3FviB6b2JyYXrDrcWhIG9ic2FoIGFkcmVzw6HFmWUuCisKK1Bvem7DoW1rYTogSmFrbWlsZSB1a29uxI3DrcWhIFZpbSBhIHpub3Z1IGhvIHNwdXN0w63FoSBzIG7DoXp2ZW0gc291Ym9ydSBURVNULAorICAgICAgICAgIHNvdWJvciBidWRlIHDFmWVzbsOhIGtvcGllIHbDvXVreSwga2R5xb4gc2kgamkgdWtsw6FkYWwuCisKKyAgNS4gTnluw60gb2RzdHJhxYggc291Ym9yIG5hcHPDoW7DrW0gKE1TLURPUyk6ICAgIDohZGVsIFRFU1QKKwkJCSAgICAgbmVibyAoVW5peCk6ICAgICAgOiFybSBURVNUCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgTGVrY2UgNS4zOiBWw51CxJpST1bDnSBQxZjDjUtBWiBVTE/FvUVOw40KKworCisJICAgICoqIFBybyB1bG/FvmVuw60gxI3DoXN0aSBzb3Vib3J1IG5hcGnFoSAgOiMsIyB3IFNPVUJPUiAqKgorCisgIDEuIEplxaF0xJsgamVkbm91IG5hcGnFoSAgOiFkaXIgIG5lYm8gIDohbHMgIHBybyB2w71waXMgYWt0dcOhbG7DrWhvIGFkcmVzw6HFmWUKKyAgICAgYSB2eWJlciB2aG9kbsO9IG7DoXpldiBzb3Vib3J1IGpha28gbmFwxZkuIFRFU1QuCisKKyAgMi4gUMWZZXN1xYgga3Vyem9yIG5hIHZyY2ggdMOpdG8gc3Ryw6Fua3kgYSBzdGlza25pICBDdHJsLWcgIHBybyB6b2JyYXplbsOtCisgICAgIMSNw61zbGEgxZnDoWRrdS4gIFpBUEFNQVRVSiBTSSBUT1RPIMSMw41TTE8hCisKKyAgMy4gTnluw60gc2UgcMWZZXN1xYggbmEgc3BvZGVrIHTDqXRvIHN0csOhbmt5IGEgb3DEm3Qgc3Rpc2tuaSBDdHJsLWcuCisgICAgIFpBUEFNQVRVSiBTSSBJIMSMw41TTE8gVE9IT1RPIMWYw4FES1UhCisKKyAgNC4gUHJvIHVsb8W+ZW7DrSBQT1VaRSDEjcOhc3RpIHNvdWJvcnUsIG5hcGnFoSAgOiMsIyB3IFRFU1QgIGtkZSAjLCMganNvdQorICAgICDEjcOtc2xhIGR2b3UgemFwYW1hdG92YW7DvWNoIMWZw6Fka8WvICh2cmNoLCBzcG9kZWspIGEgVEVTVCBqZSBuw6F6ZXYgc291Ym9ydS4KKworICA1LiBabm92YSBzZSB1amlzdGksIMW+ZSB0YW0gdGVuIHNvdWJvciBqZSBwb21vY8OtICA6IWRpciAgYWxlIE5FT0RTVFJBxYdVSiBoby4KKworCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgICAgICAgTGVrY2UgNS40OiBTTFXEjE9Ww4FOw40gU09VQk9Sxa4KKworCisgICAgICAJICAgKiogSyB2bG/FvmVuw60gb2JzYWh1IHNvdWJvcnUgbmFwacWhICA6ciBOw4FaRVZfU09VQk9SVSAqKgorCisgIDEuIE5hcGnFoSAgOiFkaXIgIHBybyB1amnFoXTEm27DrSwgxb5lIHNvdWJvciBURVNUIHN0w6FsZSBleGlzdHVqZS4KKworICAyLiBQxZllc3XFiCBrdXJ6b3IgbmEgdnJjaCB0w6l0byBzdHLDoW5reS4KKworUE9aTsOBTUtBOiBQbyB2eWtvbsOhbsOtIGtyb2t1IDMgdXZpZMOtxaEgbGVrY2kgNS4zLglQb3RvbSBzZSBvcMSbdCBwxZllc3XFiCBkb2zFrworICAgICAgICAgIG5hIHR1dG8gbGVrY2kuCisKKyAgMy4gTnluw60gdmxvxb4gc291Ym9yIFRFU1QgcG91xb5pdMOtbSBwxZnDrWthenUgIDpyIFRFU1QgIGtkZSBURVNUIGplIG7DoXpldgorICAgICBzb3Vib3J1LgorCitQT1pOw4FNS0E6IFNvdWJvciwga3RlcsO9IHZrbMOhZMOhxaEgc2Ugdmxvxb7DrSBvZCBtw61zdGEsIGtkZSBzZSBuYWNow6F6w60ga3Vyem9yLgorCisgIDQuIFBybyBwb3R2cnplbsOtIHZsb8W+ZW7DrSBzb3Vib3J1LCBwxZllc3XFiCBrdXJ6b3IgenDEm3QgYSB2xaFpbW5pIHNpLCDFvmUgdGXEjworICAgICBtw6HFoSBkdsSbIGtvcGllIGxla2NlIDUuMywgb3JpZ2luw6FsIGEgc291Ym9yb3ZvdSB2ZXJ6aS4KKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICAgICAgIFNIUk5VVMONIExFS0NFIDUKKworCisgIDEuICA6IXDFmcOta2F6ICB2eWtvbsOhIHZuxJtqxaHDrSBwxZnDrWthei4KKworICAgICAgTsSba3RlcsOpIHXFvml0ZcSNbsOpIHDFmcOta2xhZHkganNvdToKKwkgKE1TLURPUykJICAoVW5peCkKKwkgIDohZGlyCQkgICA6IWxzCQkgICAtICB6b2JyYXrDrSBvYnNhaCBzb3Vib3J1LgorCSAgOiFkZWwgU09VQk9SICAgICA6IXJtIFNPVUJPUiAgICAgLSAgb2RzdHJhbsOtIFNPVUJPUi4KKworICAyLiAgOncgU09VQk9SICB1bG/FvsOtIGFrdHXDoWxuw60gdGV4dCBqYWtvIFNPVUJPUiBuYSBkaXNrLgorCisgIDMuICA6IywjdyBTT1VCT1IgIHVsb8W+w60gxZnDoWRreSBvZCAjIGRvICMgZG8gU09VQk9SVS4KKworICA0LiAgOnIgU09VQk9SICB2eWJlcmUgeiBkaXNrdSBTT1VCT1IgYSB2bG/FvsOtIGhvIGRvIGVkaXRvdmFuw6lobyBzb3Vib3J1CisgICAgICB6YSBwb3ppY2kga3Vyem9ydS4KKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkJICBMZWtjZSA2LjE6IFDFmMONS0FaIE9URVbFmMONVAorCisKKyAgKiogTmFwacWhICBvICBwcm8gdmxvxb5lbsOtIMWZw6Fka3UgcG9kIGt1cnpvciBhIHDFmWVwbnV0w60gZG8gVmtsw6FkYWPDrWhvIG3Ds2R1LiAqKgorCisgIDEuIFDFmWVtw61zdGkga3Vyem9yIG7DrcW+ZSBuYSDFmcOhZGVrIG96bmHEjWVuw70gLS0tPi4KKworICAyLiBOYXBpxaEgIG8gKG1hbMOpKSBwcm8gdmxvxb5lbsOtIMWZw6Fka3UgUE9EIGt1cnpvciBhIHDFmWVwbnV0w60gZG8KKyAgICAgVmtsw6FkYWPDrWhvIG3Ds2R1LgorCisgIDMuIE55bsOtIHprb3DDrXJ1aiDFmcOhZGVrIG96bmHEjWVuw70gLS0tPiBhIHN0aXNrbmkgPEVTQz4gcHJvIHVrb27EjWVuw60KKyAgICAgVmtsw6FkYWPDrWhvIG3Ds2R1LgorICAKKy0tLT4gUG8gc3Rpc2tudXTDrSAgbyAgc2Uga3Vyem9yIHDFmWVtw61zdMOtIG5hIHZsb8W+ZW7DvSDFmcOhZGVrIGRvIFZrbMOhZGFjw61obworICAgICBtw7NkdS4KKworICA0LiBQcm8gb3RldsWZZW7DrSDFmcOhZGt1IE5BRCBrdXJ6b3JlbSBqZWRub2R1xaFlIG5hcGnFoSB2ZWxrw6kgIE8gICwgbcOtc3RvCisgICAgIG1hbMOpaG8gby4gVnl6a291xaFlaiBzaSB0byBuYSBuw6FzbGVkdWrDrWPDrW0gxZnDoWRrdS4KK1Zsb8W+IMWZw6FkZWsgbmFkIHTDrW10byBuYXBzw6Fuw61tIFNoaWZ0LU8gcG8gdW3DrXN0xJtuw60ga3Vyem9ydSBuYSB0ZW50byDFmcOhZGVrLgorCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCQkgIExla2NlIDYuMjogUMWYw41LQVogUMWYSURBVAorCisKKwkgICAgICoqIFN0aXNrbmkgIGEgIHBybyB2bG/FvmVuw60gdGV4dHUgWkEga3Vyem9yLiAqKgorCisgIDEuIFDFmWVzdcWIIGt1cnpvciBuYSBuw63FvmUgbmEga29uZWMgxZnDoWRreSBvem5hxI1lbsOpIC0tLT4KKyAgICAgc3Rpc2tudXTDrW0gJCB2IE5vcm3DoWxuw61tIG3Ds2R1LgorCisgIDIuIFN0aXNrbmkgIGEgIChtYWzDqSkgcHJvIHDFmWlkw6Fuw60gdGV4dHUgWkEgem5haywga3RlcsO9IGplIHBvZCBrdXJ6b3JlbS4KKyAgICAgKFZlbGvDqSAgQSAgcMWZaWTDoSBuYSBrb25lYyDFmcOhZGt1LikKKworUG96bsOhbWthOiBUw61tdG8gc2UgdnlobmXFoSBzdGlza251dMOtICBpICAsIHBvc2xlZG7DrWhvIHpuYWt1LCB0ZXh0dSBuYSB2bG/FvmVuw60sCisgICAgICAgICAgPEVTQz4sIGt1cnpvciBkb3ByYXZhLCBhIG5ha29uZWMgIHggIG5hIHDFmWlkw6F2w6Fuw60gbmEga29uZWMgxZnDoWRrdSEKKworICAzLiBOeW7DrSBkb2tvbsSNw60gcHJ2bsOtIMWZw6FkZWsuIFbFoWltbmkgc2ksIMW+ZSBwxZlpZMOhdsOhbsOtIGplIHZsYXN0bsSbIHN0ZWpuw6kgamFrbworICAgICBWa2zDoWRhY8OtIG3Ds2QsIGtyb23EmyBtw61zdGEsIGthbSBzZSB0ZXh0IHZrbMOhZMOhLgorCistLS0+IFRlbnRvIMWZw6FkZWsgdGkgdW1vxb7FiHVqZSBuYWN2acSNaXQKKy0tLT4gVGVudG8gxZnDoWRlayB0aSB1bW/FvsWIdWplIG5hY3ZpxI1pdCBwxZlpZMOhdsOhbsOtIHRleHR1IG5hIGtvbmVjIMWZw6Fka3kuCisKKworCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJICAgICAgTGVrY2UgNi4zOiBKSU7DnSBaUMWuU09CIE5BSFJBWk9Ww4FOw40KKworCisgICAgICAgICAqKiBOYXBpxaEgdmVsa8OpICBSICBwcm8gbmFocmF6ZW7DrSB2w61jIG5lxb4gamVkbm9obyB6bmFrdS4gKioKKworICAxLiBQxZllc3XFiCBrdXJ6b3IgbmEgcHJ2bsOtIMWZw6FkZWsgb3puYcSNZW7DvSAtLS0+LgorCisgIDIuIFVtw61zdGkga3Vyem9yIG5hIHphxI3DoXRlayBwcnZuw61obyBzbG92YSwga3RlcsOpIGplIG9kbGnFoW7DqSBvZCBkcnVow6lobworICAgICDFmcOhZGt1IG96bmHEjWVuw6lobyAtLS0+IChzbG92byAncG9zbGVkbsOtJykuCisKKyAgMy4gTnluw60gc3Rpc2tuaSAgUiAgYSBuYWhyYcSPIHpieXRlayB0ZXh0dSBuYSBwcnZuw61tIMWZw6Fka3UgcMWZZXBzw6Fuw61tCisgICAgIHN0YXLDqWhvIHRleHR1IHRhaywgYWJ5IGJ5bCBwcnZuw60gxZnDoWRlayBzdGVqbsO9IGpha28gdGVuIGRydWjDvS4KKworLS0tPiBQcm8gdXByYXZlbsOtIHBydm7DrWhvIMWZw6Fka3UgZG8gdHZhcnUgdG9obyBwb3NsZWRuw60gbmEgc3RyYW7EmyBwb3XFvmlqIGtsLgorLS0tPiBQcm8gdXByYXZlbsOtIHBydm7DrWhvIMWZw6Fka3UgZG8gdHZhcnUgdG9obyBkcnVow6lobywgbmFwacWhIFIgYSBub3bDvSB0ZXh0LgorCisgIDQuIFbFoWltbmkgc2ksIMW+ZSBqYWttaWxlIHN0aXNrbmXFoSA8RVNDPiB2xaFlY2hlbiBuZXptxJtuxJtuw70gdGV4dCB6xa9zdMOhdsOhLgorCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICAgICBMZWtjZSA2LjQ6IE5BU1RBVkVOw40gTU/FvU5PU1TDjQorCisgICoqIE5hc3RhdiBtb8W+bm9zdCwgxb5lIHZ5aGxlZMOhdsOhbsOtIGFuZWJvIG5haHJhem92w6Fuw60gbmVkYsOhIHZlbGlrb3N0aSBww61zbWVuICoqCisKKyAgMS4gVnlobGVkZWogxZlldMSbemVjICdpZ25vcmUnIG5hcHPDoW7DrW06CisgICAgIC9pZ25vcmUKKyAgICAgWm9wYWt1aiBuxJtrb2xpa3LDoXQgc3Rpc2tudXTDrSBrbMOhdmVzeSBuLgorCisgIDIuIE5hc3RhdiBtb8W+bm9zdCAnaWMnIChJZ25vcmUgY2FzZSkgbmFwc8OhbsOtbSBwxZnDrWthenU6CisgICAgIDpzZXQgaWMKKworICAzLiBOeW7DrSB6bm92dSB2eWhsZWRlaiAnaWdub3JlJyBzdGlza251dMOtbTogbgorICAgICBOxJtrb2xpa3LDoXQgaGxlZMOhbsOtIHpvcGFrdWogc3Rpc2tudXTDrW0ga2zDoXZlc3kgbi4KKworICA0LiBOYXN0YXYgbW/Fvm5vc3RpICdobHNlYXJjaCcgYSAnaW5jc2VhcmNoJzoKKyAgICAgOnNldCBobHMgaXMKKworICA1LiBOeW7DrSB6bm92dSB2eWtvbmVqIHZ5aGxlZMOhdmFjw60gcMWZw61rYXogYSBzbGVkdWosIGNvIHNlIHN0YW5lOgorICAgICAvaWdub3JlCisKKyAgNi4gUHJvIHZ5cG51dMOtIHp2w71yYXrFiG92w6Fuw60gdsO9c2xlZGvFryBuYXBpxaE6CisgICAgIDpub2hsc2VhcmNoCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKwkJCSAgICAgICBTSFJITlVUw40gTEVLQ0UgNgorCisKKyAgMS4gU3Rpc2tudXTDrSAgbyAgb3RldsWZZSBub3bDvSDFmcOhZGVrIFBPRCBrdXJ6b3JlbSBhIHVtw61zdMOtIGt1cnpvciBuYSB2bG/FvmVuw70KKyAgICAgxZnDoWRlayBkbyBWa2zDoWRhY8OtaG8gbcOzZHUuCisgICAgIE5hcHPDoW7DrSB2ZWxrw6lobyAgTyAgb3RldsWZZSDFmcOhZGVrIE5BRCDFmcOhZGtlbSwgbmEga3RlcsOpbSBqZSBrdXJ6b3IuCisKKyAgMi4gU3Rpc2tuaSAgYSAgcHJvIHZsb8W+ZW7DrSB0ZXh0dSBaQSB6bmFrIG5hIHBvemljaSBrdXJ6b3J1LgorICAgICBOYXBzw6Fuw60gdmVsa8OpaG8gIEEgIGF1dG9tYXRpY2t5IHDFmWlkw6EgdGV4dCBuYSBrb25lYyDFmcOhZGt1LgorCisgIDMuIFN0aXNrbnV0w60gdmVsa8OpaG8gIFIgIHDFmWVwbmUgZG8gTmFocmF6b3ZhY8OtaG8gbcOzZHUsIGRva3VkCisgICAgIG5lc3Rpc2tuZcWhIDxFU0M+IHBybyBqZWhvIHVrb27EjWVuw60uCisKKyAgNC4gTmFwc8OhbsOtICI6c2V0IHh4eCIgbmFzdGF2w60gbW/Fvm5vc3RpICJ4eHgiLgorCisKKworCisKKworCisKK35+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCQkgICAgICBMRUtDRSA3OiBQxZjDjUtBWlkgT04tTElORSBOw4FQT1bEmkRZCisKKworCQkgICAqKiBQb3XFvsOtdmVqIG9uLWxpbmUgc3lzdMOpbSBuw6Fwb3bEm2R5ICoqCisKKyAgVmltIG3DoSBvYnPDoWhsw70gb24tbGluZSBzeXN0w6ltIG7DoXBvdsSbZHkuIFBybyB6YcSNw6F0ZWsgdnl6a291xaFlaiBqZWRlbiB6CisgIG7DoXNsZWR1asOtY8OtY2g6CisJLSBzdGlza25pIGtsw6F2ZXN1IDxIRUxQPiAocG9rdWQgamkgbcOhxaEpCisJLSBzdGlza25pIGtsw6F2ZXN1IDxGMT4gIChwb2t1ZCBqaSBtw6HFoSkKKwktIG5hcGnFoSAgOmhlbHAgPEVOVEVSPgorCisgIE5hcGnFoSAgOnEgPEVOVEVSPiAgcHJvIHV6YXbFmWVuw60gb2tuYSBuw6Fwb3bEm2R5LgorCisgIE3Fr8W+ZcWhIG5hasOtdCBuw6Fwb3bEm2R1IGsgamFrw6ltdWtvbGl2IHTDqW1hdHUgcMWZaWTDoW7DrW0gYXJndW1lbnR1IGsKKyAgcMWZw61rYXp1ICI6aGVscCIuIFprdXMgdHl0byAobmV6YXBvbWXFiCBzdGlza25vdXQgPEVOVEVSPik6CisKKwk6aGVscCB3CisJOmhlbHAgY188VAorCTpoZWxwIGluc2VydC1pbmRleAorCTpoZWxwIHVzZXItbWFudWFsCisKKworfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisJCSAgTEVLQ0UgODogVllUVk/FmEVOw40gSU5JQ0lBTElaQcSMTsONSE8gU0tSSVBUVQorCisJCSAgICAgICAgKiogWmFwbmkgZnVua2NlIGVkaXRvcnUgVmltICoqCisKKyAgVmltIG3DoSBkYWxla28gdsOtY2UgZnVua2PDrSBuZcW+IFZpLCBhbGUgdsSbdMWhaW5hIHogbmljaCBqZSB2eXBudXRhIHZlIHbDvWNob3rDrW0KKyAgbmFzdGF2ZW7DrS4gUHJvIHphcG51dMOtIG7Em2t0ZXLDvWNoIHZ5dHZvxZkgc291Ym9yICJ2aW1yYyIuCisKKyAgMS4gWmHEjW5pIHVwcmF2b3ZhdCBzb3Vib3IgInZpbXJjIi4gVG90byB6w6F2aXPDrSBuYSBwb3XFvml0w6ltIHN5c3TDqW11OgorCTplZGl0IH4vLnZpbXJjCQkJcHJvIFVuaXgKKwk6ZWRpdCAkVklNL192aW1yYwkJcHJvIE1TLVdpbmRvd3MKKworICAyLiBOeW7DrSDEjXRpIHVrw6F6a292w70gInZpbXJjIiBzb3Vib3I6CisKKwk6cmVhZCAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQorCisgIDMuIFVsb8W+IHNvdWJvciBwb21vY8OtOgorCisJOndyaXRlCisKKyAgUG8gcMWZw63FoXTDrW0gc3RhcnR1IFZpbSBzZSB6YXBuZSB6dsO9cmF6xYhvdsOhbsOtIHN5bnRheGUuCisgIERvIHNvdWJvcnUgInZpbXJjIiBtxa/FvmXFoSBwxZlpZGF0IHbFoWVjaG55IHN2b2plIHVwxZllZG5vc3TFiG92YW7DqSBuYXN0YXZlbsOtLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworICBUb3RvIHVrb27EjXVqZSB2w711a3UgVmltLCBrdGVyw6EgYnlsYSBtecWhbGVuw6EgamFrbyBzdHJ1xI1uw70gcMWZZWhsZWQKKyAgZWRpdG9ydSBWaW0sIHRhayBha29yw6F0IHBvc3RhxI11asOtY8OtIHBybyBsZWhrw6kgYSBvYnN0b2puw6kgcG91xb7DrXbDoW7DrSBlZGl0b3J1LgorICBUYXRvIHbDvXVrYSBtw6EgZGFsZWtvIG9kIMO6cGxub3N0aSwgcHJvdG/FvmUgVmltIG9ic2FodWplIHBvZHN0YXRuxJsgdsOtY2UKKyAgcMWZw61rYXrFry4gRMOhbGUgc2kgcMWZZcSNdGkgdcW+aXZhdGVsc2vDvSBtYW51w6FsOiAiOmhlbHAgdXNlci1tYW51YWwiLgorCisgIFBybyBkYWzFocOtIHN0dWRpdW0gamUgZG9wb3J1xI1lbsOhIGtuaWhhOgorCVZpbSAtIFZpIEltcHJvdmVkIC0gb2QgU3RldmUgT3VhbGxpbmUKKwlOYWtsYWRhdGVsOiBOZXcgUmlkZXJzCisgIFBydm7DrSBrbmloYSB1csSNZW7DoSBwcm8gVmltLiBPYnp2bMOhxaF0xJsgdmhvZG7DoSBwcm8gemHEjcOhdGXEjW7DrWt5LgorICBPYnNhaHVqZSBtbm/FvnN0dsOtIHDFmcOta2xhZMWvIGEgb2Jyw6F6a8WvLgorICB2aXogaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBUYXRvIGtuaWhhIGplIHN0YXLFocOtIGEgdsOtY2UgdsSbbm92YW7DoSBWaSBuZcW+IFZpbSwgYWxlIHRha8OpIGRvcG9ydcSNZW7DoToKKwlMZWFybmluZyB0aGUgVmkgRWRpdG9yIC0gb2QgTGluZGEgTGFtYgorCU5ha2xhZGF0ZWw6IE8nUmVpbGx5ICYgQXNzb2NpYXRlcyBJbmMuCisgIEplIHRvIGRvYnLDoSBrbmloYSBwcm8gesOtc2vDoW7DrSB2xJtkb21vc3TDrSB0w6ltxJvFmSBvIHbFoWVtLCBjbyBtxa/FvmV0ZSBzIFZpIGTEm2xhdC4KKyAgxaBlc3TDqSB2eWTDoW7DrSBvYnNhaHVqZSB0w6nFviBpbmZvcm1hY2UgbyBWaW0uCisKKyAgVGF0byB2w711a2EgYnlsYSBuYXBzYW7DoSBhdXRvcnkgTWljaGFlbCBDLiBQaWVyY2UgYSBSb2JlcnQgSy4gV2FyZSwKKyAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzIHMgcG91xb5pdMOtbSBtecWhbGVuZWsgb2Q6IENoYXJsZXMgU21pdGgsCisgIENvbG9yYWRvIFN0YXRlIFVuaXZlcnNpdHkuICBFLW1haWw6IGJ3YXJlQG1pbmVzLmNvbG9yYWRvLmVkdS4KKworICBVcHJhdmlsIHBybyBWaW06IEJyYW0gTW9vbGVuYWFyLgorCit+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworICBQxZlla2xhZCBkbyDEjWXFoXRpbnk6IEx1Ym/FoSBUdXJlaworICBFLU1haWw6IGx1Ym9zLnR1cmVrQGdtYWlsLmNvbQorICAyMDA3IEZlYiAyOCAK