Re: RFC: Proposal for remote caching

Adam Gross via Scons-dev <[email protected]> Tue, 10 Dec 2019 15:55:15 +0000
Newsgroups gmane.comp.programming.tools.scons.devel
Message-ID <CH2PR05MB69658256219434B66F5A244AD35B0@CH2PR05MB6965.namprd05.prod.outlook.com>
Pj4gSXQganVzdCBzZWVtcyBvZGQgdG8gbWUgdG8gYWRkIG1kNSBzdXBwb3J0IGFueXdoZXJlIHRo
YXQgZG9lc24ndCBoYXZlIGl0LCB3aGVuIHlvdSB1c3VhbGx5IGdldCBmbGFtZWQgYnkgc29tZW9u
ZSB3aGVuIHlvdSBtZW50aW9uIG1kNSB0aGVzZSBkYXlzIDopDQoNClRoZSBCYXplbCByZW1vdGUg
Y2FjaGluZyBtYWludGFpbmVyIGluZGljYXRlZCB0aGF0IGhlIGlzIGZpbmUgYWNjZXB0aW5nIGEg
cGF0Y2ggdG8gc3VwcG9ydCBNRDUuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9t
OiBTY29ucy1kZXYgPHNjb25zLWRldi1ib3VuY2VzQHNjb25zLm9yZz4gT24gQmVoYWxmIE9mIE1h
dHMgV2ljaG1hbm4NClNlbnQ6IFR1ZXNkYXksIERlY2VtYmVyIDEwLCAyMDE5IDEwOjUxIEFNDQpU
bzogc2NvbnMtZGV2QHNjb25zLm9yZw0KU3ViamVjdDogUmU6IFtTY29ucy1kZXZdIFJGQzogUHJv
cG9zYWwgZm9yIHJlbW90ZSBjYWNoaW5nDQoNCk9uIDEyLzEwLzE5IDY6NTAgQU0sIEFkYW0gR3Jv
c3MgdmlhIFNjb25zLWRldiB3cm90ZToNCj4gVGhlIHJhbmRvbSBweXRob24gY29tcGFyaXNvbnMg
SSBoYXZlIHNlZW4gb25saW5lIHdpdGggcHl0aG9uIDMgaXMgdGhhdA0KPiBTSEEtMSBpcyBmYXN0
ZXIgdGhhbiBNRDUuIFdpdGggcHl0aG9uIDIgSSBkb27igJl0IHRoaW5rIHRoYXQgd2FzIHRoZSBj
YXNlLiANCj4gUmVtb3RlIGNhY2hpbmcgd291bGRu4oCZdCBjb21lIGVhcmxpZXIgdGhhbiA0LjAs
IHNvIGl04oCZcyByZWFzb25hYmxlIHRvIA0KPiBhc3N1bWUgcHkzIGFueXdheS4NCj4gDQo+IEkg
YW0gbm90IHN1cmUgYWJvdXQgU0hBLTI1Ni4NCg0KMjU2IGlzIGEgYml0IHNsb3dlci4gSGVyZSBh
cmUgc29tZSByYW5kb20gcmVsYXRpdmUgdGltaW5ncyBmcm9tIGEgTGludXggaG9zdCwgZXhjbHVk
aW5nIHRoZSBzaGEzKiBmYW1pbHkgKHdoaWNoIGFyZSBhbGwgc2xvd2VyKToNCg0KPT09PSBtZDUg
ICAgICAgIFs0Ljg5NTA1NTQxMzAxMzMyNCwgNC43OTQ2OTU3MjU4OTczMjcsIDQuNzg4NjAyNjEw
MTE4Njg3XQ0KPT09PSBzaGExICAgICAgIFs0Ljg1MjM3MTY5ODAxMjU3NTUsIDQuNzkwMjg2NTQ0
MDExOTA2LCA0Ljc3OTMyMTY3ODIxNTYzOF0NCj09PT0gc2hhMjU2ICAgICBbNS45ODAzNDAyNDMw
ODQzNTYsIDYuMDI1MzcyMTc4MDYwOTM0LCA1Ljk4MzAxMjkxNDg5MDQyM10NCj09PT0gc2hhNTEy
ICAgICBbNy4wMzM4MDYwOTc5MjY1NzIsIDcuMDMwNjk3Njk0OTc5NjA4LCA3LjAxOTQ2MTM4NjEz
ODU3M10NCj09PT0gYmxha2UyYl8yMCBbNC43MzUyOTg1MTI5NjkxNjYsIDQuNzY4NTI3NDY0OTQx
MTQ0LCA0Ljc1NDAzOTMwODk4NzU1OF0NCj09PT0gYmxha2UyYiAgICBbNC44ODM0NDc3MDY5MzIy
MDIsIDQuODU2MzU3NjA3MDU5MTgxLCA0Ljg2NjUyOTg2MDA2ODExM10NCj09PT0gYmxha2Uyc18y
MCBbNC4zOTM2ODc3MDgwNzA1MDIsIDQuMzkyMjYwMDExOTg0MDM1LCA0LjQwMzM1NzIwMjg4NTY3
MjVdDQo9PT09IGJsYWtlMnMgICAgWzQuMjY2MzU1MDk3MDYxMDIzLCA0LjIzMzcwODUwOTk0MjUx
NywgNC4yMjg4NjMxODIwMTE5OTJdDQo9PT09IHNoYTIyNCAgICAgWzUuODMzMzQwNTcxMDI5MTEy
LCA1Ljg0OTM4OTY2Mzg5NzQ1NSwgNS44MDMzNzUyNTI5ODgxODk1XQ0KPT09PSBzaGEzODQgICAg
IFs2LjgzMzM5NjUyMDkzMTI3NCwgNi44NDQ5NzA4OTk4NjY4OTQsIDYuODQ0NDA5OTg5ODkxNTc0
XQ0KDQoNCk9uIGEgV2luZG93cyBob3N0IHRoZSB0aW1pbmdzIGZhbGwgaW50byByb3VnaGx5IHRo
ZSBzYW1lIHJhbmtpbmcsIGFsdGhvdWdoIGJsYWtlMnMgd2lucyBieSBtb3JlIG92ZXIgbWQ1L3No
YTEgKGl0J3MgbW9yZSBsaWtlIDQwJSBmYXN0ZXIgdGhhbiAxMiUgZmFzdGVyKQ0KDQpUaGlzIGlz
bid0IHBhcnRpY3VsYXJseSBpbXBvcnRhbnQsIEknbSBqdXN0IGZvbGxvd2luZyB1cC4NCg0KSXQg
anVzdCBzZWVtcyBvZGQgdG8gbWUgdG8gYWRkIG1kNSBzdXBwb3J0IGFueXdoZXJlIHRoYXQgZG9l
c24ndCBoYXZlIGl0LCB3aGVuIHlvdSB1c3VhbGx5IGdldCBmbGFtZWQgYnkgc29tZW9uZSB3aGVu
IHlvdSBtZW50aW9uIG1kNSB0aGVzZSBkYXlzIDopDQoNCg0KPiANCj4gID4+IEFsc28gdGhlcmUg
bmVlZHMgdG8gYmUgYSByZWFzb25hYmxlIHNvbHV0aW9uIHRvIChkZSlzZXJpYWxpemluZyANCj4g
d2hpY2ggaGFzaCBpcyB1c2VkIHRvIHNjb25zaWduLg0KPiANCj4gRG9pbmcgaXQgYmFzZWQgb24g
bGVuZ3RoIHdvdWxkIGJlIGZpbmUuIFRoZSBCYXplbCByZW1vdGUgY2FjaGUgY2hhbmdlIA0KPiB3
ZSBhcmUgZ29pbmcgdG8gdXBzdHJlYW0gKGFkZGluZyBzdXBwb3J0IGZvciBNRDUgYW5kIFNIQS0x
KSBkb2VzIHRoYXQgDQo+IGJlY2F1c2UgdGhlIG1haW50YWluZXIgcHJlZmVycmVkIGl0cyBzaW1w
bGljaXR5Lg0KPiANCj4gKkZyb206KiBTY29ucy1kZXYgPHNjb25zLWRldi1ib3VuY2VzQHNjb25z
Lm9yZz4gKk9uIEJlaGFsZiBPZiAqQmlsbCANCj4gRGVlZ2FuDQo+ICpTZW50OiogTW9uZGF5LCBE
ZWNlbWJlciA5LCAyMDE5IDY6NTEgUE0NCj4gKlRvOiogU0NvbnMgZGV2ZWxvcGVyIGxpc3QgPHNj
b25zLWRldkBzY29ucy5vcmc+DQo+ICpTdWJqZWN0OiogUmU6IFtTY29ucy1kZXZdIFJGQzogUHJv
cG9zYWwgZm9yIHJlbW90ZSBjYWNoaW5nDQo+IA0KPiByZSBzd2l0Y2hpbmcgaGFzaGVzLg0KPiAN
Cj4gRG8gd2UgaGF2ZSBhbnkgcGVyZiBjb21wYXJpc29ucyBmb3IgTUQ1IHZzIFNIQS0yNTYgaW4g
Z2VuZXJhbCBhbmQgaW4gU0NvbnM/DQo+IA0KPiBXaGlsZSBJIHRoaW5rIGFkZGluZyBTSEEtMjU2
IGhhcyB2YWx1ZSwgSSdkIGJlIGhlc2l0YW50IHRvIG1ha2UgaXQgdGhlIA0KPiBkZWZhdWx0IGFu
ZC9vciByZW1vdmUgTUQ1Lg0KPiANCj4gQWxzbyB0aGVyZSBuZWVkcyB0byBiZSBhIHJlYXNvbmFi
bGUgc29sdXRpb24gdG8gKGRlKXNlcmlhbGl6aW5nIHdoaWNoIA0KPiBoYXNoIGlzIHVzZWQgdG8g
c2NvbnNpZ24uDQo+IA0KPiBPbiBNb24sIERlYyA5LCAyMDE5IGF0IDE6MzQgUE0gTWF0cyBXaWNo
bWFubiA8bWF0c0B3aWNobWFubi51cyANCj4gPG1haWx0bzptYXRzQHdpY2htYW5uLnVzPj4gd3Jv
dGU6DQo+IA0KPiANCj4gICAgICA+IDIuMS4zIENoYW5nZXMgTmVlZGVkIFRvIEJhemVsIFJlbW90
ZSBDYWNoZSBTZXJ2ZXINCj4gICAgICA+DQo+ICAgICAgPiBDdXJyZW50bHkgdGhlIEJhemVsIHJl
bW90ZSBjYWNoZSBzZXJ2ZXIgb25seSBzdXBwb3J0cyBTSEEtMjU2IGZvcg0KPiAgICAgcmVxdWVz
dHMgKGUuZy4gR0VUIGh0dHBzOi8vbmFtMDQuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5j
b20vP3VybD1odHRwJTNBJTJGJTJGYmF6ZWwtY2FjaGUuY29ycC5pbnQlMkZjYWNoZSUyRmFjJTJG
JmFtcDtkYXRhPTAyJTdDMDElN0Nncm9zc2FnJTQwdm13YXJlLmNvbSU3Q2U1MDE3Mjk4MDE0ODRm
Y2MwM2U2MDhkNzdkODhjM2JjJTdDYjM5MTM4Y2EzY2VlNGI0YWE0ZDZjZDgzZDlkZDYyZjAlN0Mw
JTdDMCU3QzYzNzExNTkwMDIwMDEyMTIwOCZhbXA7c2RhdGE9bUJac1RPVmlramZUcDhYeWZuS0Y2
ZUx2b1NIU3FiamxvZU5qUFpvd0tSNCUzRCZhbXA7cmVzZXJ2ZWQ9MA0KPiAgICAgPGh0dHBzOi8v
bmFtMDQuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwJTNBJTJGJTJG
YmF6ZWwtY2FjaGUuY29ycC5pbnQlMkZjYWNoZSUyRmFjJTJGJmFtcDtkYXRhPTAyJTdDMDElN0Nn
cm9zc2FnJTQwdm13YXJlLmNvbSU3Q2U1MDE3Mjk4MDE0ODRmY2MwM2U2MDhkNzdkODhjM2JjJTdD
YjM5MTM4Y2EzY2VlNGI0YWE0ZDZjZDgzZDlkZDYyZjAlN0MwJTdDMCU3QzYzNzExNTkwMDIwMDEy
MTIwOCZhbXA7c2RhdGE9bUJac1RPVmlramZUcDhYeWZuS0Y2ZUx2b1NIU3FiamxvZU5qUFpvd0tS
NCUzRCZhbXA7cmVzZXJ2ZWQ9MD48c2hhXzI1Nl9oYXNoPiksDQo+ICAgICB3aGlsZSBTQ29ucyBi
eSBkZWZhdWx0IHVzZXMgTUQ1LiBBcyBwYXJ0IG9mIHRoaXMgcHJvamVjdCwgVk13YXJlDQo+ICAg
ICB3aWxsIGJlIGNvbnRyaWJ1dGluZyBjb2RlIHRvIHRoZSB1cHN0cmVhbSBCYXplbCByZW1vdGUg
Y2FjaGUgc2VydmVyDQo+ICAgICBwcm9qZWN0IHRvIHN1cHBvcnQgTUQ1IGFuZCBTSEEtMS4gV2Ug
aGF2ZSByZWNlaXZlZCBjb25maXJtYXRpb24gZnJvbQ0KPiAgICAgdGhlIHByb2plY3QgbWFpbnRh
aW5lciB0aGF0ICgxKSBpdCBpcyBhY2NlcHRhYmxlIHRvIGRvIHRoaXMgYW5kICgyKQ0KPiAgICAg
bm8gcHJlZml4IGlzIG5lZWRlZCBmb3IgdGhlc2UgYWx0ZXJuYXRpdmUgaGFzaGluZyBmb3JtYXRz
LiBBcyBhDQo+ICAgICByZXN1bHQsIHRoZSByZXF1ZXN0cyBTQ29ucyB3b3VsZCBtYWtlIHdvdWxk
IGJlIG9mIHRoZSBmb3JtDQo+ICAgICBodHRwczovL25hbTA0LnNhZmVsaW5rcy5wcm90ZWN0aW9u
Lm91dGxvb2suY29tLz91cmw9aHR0cCUzQSUyRiUyRmJhemVsLWNhY2hlLmNvcnAuaW50JTJGY2Fj
aGUlMkZhYyUyRiZhbXA7ZGF0YT0wMiU3QzAxJTdDZ3Jvc3NhZyU0MHZtd2FyZS5jb20lN0NlNTAx
NzI5ODAxNDg0ZmNjMDNlNjA4ZDc3ZDg4YzNiYyU3Q2IzOTEzOGNhM2NlZTRiNGFhNGQ2Y2Q4M2Q5
ZGQ2MmYwJTdDMCU3QzAlN0M2MzcxMTU5MDAyMDAxMjEyMDgmYW1wO3NkYXRhPW1CWnNUT1Zpa2pm
VHA4WHlmbktGNmVMdm9TSFNxYmpsb2VOalBab3dLUjQlM0QmYW1wO3Jlc2VydmVkPTANCj4gICAg
IDxodHRwczovL25hbTA0LnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0
cCUzQSUyRiUyRmJhemVsLWNhY2hlLmNvcnAuaW50JTJGY2FjaGUlMkZhYyUyRiZhbXA7ZGF0YT0w
MiU3QzAxJTdDZ3Jvc3NhZyU0MHZtd2FyZS5jb20lN0NlNTAxNzI5ODAxNDg0ZmNjMDNlNjA4ZDc3
ZDg4YzNiYyU3Q2IzOTEzOGNhM2NlZTRiNGFhNGQ2Y2Q4M2Q5ZGQ2MmYwJTdDMCU3QzAlN0M2Mzcx
MTU5MDAyMDAxMjEyMDgmYW1wO3NkYXRhPW1CWnNUT1Zpa2pmVHA4WHlmbktGNmVMdm9TSFNxYmps
b2VOalBab3dLUjQlM0QmYW1wO3Jlc2VydmVkPTA+PG1kNV9oYXNoPg0KPiAgICAgb3IgaHR0cHM6
Ly9uYW0wNC5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHAlM0ElMkYl
MkZiYXplbC1jYWNoZS5jb3JwLmludCUyRmNhY2hlJTJGYWMlMkYmYW1wO2RhdGE9MDIlN0MwMSU3
Q2dyb3NzYWclNDB2bXdhcmUuY29tJTdDZTUwMTcyOTgwMTQ4NGZjYzAzZTYwOGQ3N2Q4OGMzYmMl
N0NiMzkxMzhjYTNjZWU0YjRhYTRkNmNkODNkOWRkNjJmMCU3QzAlN0MwJTdDNjM3MTE1OTAwMjAw
MTIxMjA4JmFtcDtzZGF0YT1tQlpzVE9WaWtqZlRwOFh5Zm5LRjZlTHZvU0hTcWJqbG9lTmpQWm93
S1I0JTNEJmFtcDtyZXNlcnZlZD0wDQo+ICAgICA8aHR0cHM6Ly9uYW0wNC5zYWZlbGlua3MucHJv
dGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHAlM0ElMkYlMkZiYXplbC1jYWNoZS5jb3JwLmlu
dCUyRmNhY2hlJTJGYWMlMkYmYW1wO2RhdGE9MDIlN0MwMSU3Q2dyb3NzYWclNDB2bXdhcmUuY29t
JTdDZTUwMTcyOTgwMTQ4NGZjYzAzZTYwOGQ3N2Q4OGMzYmMlN0NiMzkxMzhjYTNjZWU0YjRhYTRk
NmNkODNkOWRkNjJmMCU3QzAlN0MwJTdDNjM3MTE1OTAwMjAwMTIxMjA4JmFtcDtzZGF0YT1tQlpz
VE9WaWtqZlRwOFh5Zm5LRjZlTHZvU0hTcWJqbG9lTmpQWm93S1I0JTNEJmFtcDtyZXNlcnZlZD0w
PjxzaGExX2hhc2g+Lg0KPiAgICAgQXMgbWVudGlvbmVkIGJlZm9yZSwgc2VlIHRoZSBUaHJlYXQg
TW9kZWxpbmcgc2VjdGlvbiBhdCB0aGUgZW5kIG9mDQo+ICAgICB0aGlzIHBhZ2UgZm9yIG1vcmUg
ZGlzY3Vzc2lvbiBvbiBoYXNoIGZvcm1hdHMuDQo+IA0KPiAgICAgSSdtIG5vdCBzdXJlIHdlIHNo
b3VsZCBhY3R1YWxseSBmdXJ0aGVyIHB1c2ggbWQ1LsKgIFdoaWxlIGl0J3Mgbm90DQo+ICAgICBp
bnRlbmRlZCB0byBiZSB1c2VkIGZvciBzZWN1cml0eSBwdXJwb3NlcyAoYW5kIHllcyBJIHJlYWQg
dGhlDQo+ICAgICBzZWN0aW9uIG9uDQo+ICAgICB0aGF0KSwgd2UndmUgYWxyZWFkeSBydW4gaW50
byB1c2VycyB3aG8gYXJlIG5vdCBhbGxvd2VkIHRvIHVzZSBpdCBubw0KPiAgICAgbWF0dGVyIHdo
YXQgKHRoZXJlJ3MgYSBwZW5kaW5nIHBhdGNoIHRvIGZhaWxvdmVyIHRvIHNoYTEgdG8gYWRkcmVz
cyBvbmUNCj4gICAgIG9mIHRob3NlIHVzZXJzJyBjb25jZXJucykuLi4gYW5kIHRoZXJlIGFyZSBm
YXN0IGFsZ29yaXRobXMgaW4gdGhlIFNIQS0yDQo+ICAgICBmYW1pbHkgYXMgd2VsbCBhcyBvbmVz
IHRoYXQgZGlkbid0IHF1aXRlIG1ha2UgdGhlIFNIQS0zIGNob2ljZSAobmFtZWx5LA0KPiAgICAg
Qmxha2UpIHdoaWNoIGFyZSBxdWl0ZSBmYXN0IG9uIFB5dGhvbi7CoCBJdCBtYXkgYmUgdGltZSB0
byB0cmFuc2l0aW9uPw0KPiANCj4gICAgIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fDQo+ICAgICBTY29ucy1kZXYgbWFpbGluZyBsaXN0DQo+ICAgICBTY29u
cy1kZXZAc2NvbnMub3JnIDxtYWlsdG86U2NvbnMtZGV2QHNjb25zLm9yZz4NCj4gICAgIGh0dHBz
Oi8vbmFtMDQuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3VybD1odHRwcyUzQSUy
RiUyRnBhaXJsaXN0Mi5wYWlyLm5ldCUyRm1haWxtYW4lMkZsaXN0aW5mbyUyRnNjb25zLWRldiZh
bXA7ZGF0YT0wMiU3QzAxJTdDZ3Jvc3NhZyU0MHZtd2FyZS5jb20lN0NlNTAxNzI5ODAxNDg0ZmNj
MDNlNjA4ZDc3ZDg4YzNiYyU3Q2IzOTEzOGNhM2NlZTRiNGFhNGQ2Y2Q4M2Q5ZGQ2MmYwJTdDMCU3
QzAlN0M2MzcxMTU5MDAyMDAxMjEyMDgmYW1wO3NkYXRhPTlkTnkxJTJGY3hLSmRTTkJ1VGJSV1Ri
cFNBciUyQmlTNFVFZkh2QXIlMkZxVFpzQUElM0QmYW1wO3Jlc2VydmVkPTANCj4gICAgIA0KPiA8
aHR0cHM6Ly9uYW0wNC5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBz
JTNBJTJGJTJGcGFpDQo+IHJsaXN0Mi5wYWlyLm5ldCUyRm1haWxtYW4lMkZsaXN0aW5mbyUyRnNj
b25zLWRldiZhbXA7ZGF0YT0wMiU3QzAxJTdDZ3INCj4gb3NzYWclNDB2bXdhcmUuY29tJTdDZTUw
MTcyOTgwMTQ4NGZjYzAzZTYwOGQ3N2Q4OGMzYmMlN0NiMzkxMzhjYTNjZWU0Yg0KPiA0YWE0ZDZj
ZDgzZDlkZDYyZjAlN0MwJTdDMCU3QzYzNzExNTkwMDIwMDEyMTIwOCZhbXA7c2RhdGE9OWROeTEl
MkZjeEtKDQo+IGRTTkJ1VGJSV1RicFNBciUyQmlTNFVFZkh2QXIlMkZxVFpzQUElM0QmYW1wO3Jl
c2VydmVkPTA+DQo+IA0KPiANCj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX18NCj4gU2NvbnMtZGV2IG1haWxpbmcgbGlzdA0KPiBTY29ucy1kZXZAc2NvbnMu
b3JnDQo+IGh0dHBzOi8vbmFtMDQuc2FmZWxpbmtzLnByb3RlY3Rpb24ub3V0bG9vay5jb20vP3Vy
bD1odHRwcyUzQSUyRiUyRnBhaXINCj4gbGlzdDIucGFpci5uZXQlMkZtYWlsbWFuJTJGbGlzdGlu
Zm8lMkZzY29ucy1kZXYmYW1wO2RhdGE9MDIlN0MwMSU3Q2dybw0KPiBzc2FnJTQwdm13YXJlLmNv
bSU3Q2U1MDE3Mjk4MDE0ODRmY2MwM2U2MDhkNzdkODhjM2JjJTdDYjM5MTM4Y2EzY2VlNGI0DQo+
IGFhNGQ2Y2Q4M2Q5ZGQ2MmYwJTdDMCU3QzAlN0M2MzcxMTU5MDAyMDAxMjEyMDgmYW1wO3NkYXRh
PTlkTnkxJTJGY3hLSmQNCj4gU05CdVRiUldUYnBTQXIlMkJpUzRVRWZIdkFyJTJGcVRac0FBJTNE
JmFtcDtyZXNlcnZlZD0wDQo+IA0KDQpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fXw0KU2NvbnMtZGV2IG1haWxpbmcgbGlzdA0KU2NvbnMtZGV2QHNjb25zLm9y
Zw0KaHR0cHM6Ly9uYW0wNC5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0
dHBzJTNBJTJGJTJGcGFpcmxpc3QyLnBhaXIubmV0JTJGbWFpbG1hbiUyRmxpc3RpbmZvJTJGc2Nv
bnMtZGV2JmFtcDtkYXRhPTAyJTdDMDElN0Nncm9zc2FnJTQwdm13YXJlLmNvbSU3Q2U1MDE3Mjk4
MDE0ODRmY2MwM2U2MDhkNzdkODhjM2JjJTdDYjM5MTM4Y2EzY2VlNGI0YWE0ZDZjZDgzZDlkZDYy
ZjAlN0MwJTdDMCU3QzYzNzExNTkwMDIwMDEyMTIwOCZhbXA7c2RhdGE9OWROeTElMkZjeEtKZFNO
QnVUYlJXVGJwU0FyJTJCaVM0VUVmSHZBciUyRnFUWnNBQSUzRCZhbXA7cmVzZXJ2ZWQ9MA0KX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KU2NvbnMtZGV2IG1h
aWxpbmcgbGlzdApTY29ucy1kZXZAc2NvbnMub3JnCmh0dHBzOi8vcGFpcmxpc3QyLnBhaXIubmV0
L21haWxtYW4vbGlzdGluZm8vc2NvbnMtZGV2Cg==