From c3916cf64b3f3a130581084290fa64f5db0c3de9 Mon Sep 17 00:00:00 2001 From: Xiaojiang YU <81464221+91902078@users.noreply.github.com> Date: Mon, 21 Oct 2024 14:29:20 +0800 Subject: [PATCH 1/6] Add files via upload --- SU8-SEL.ows | 502 ++++++++++++++++++++++++++++++++++++++++++++ SU8_12890_12940.dat | 204 ++++++++++++++++++ 2 files changed, 706 insertions(+) create mode 100644 SU8-SEL.ows create mode 100644 SU8_12890_12940.dat diff --git a/SU8-SEL.ows b/SU8-SEL.ows new file mode 100644 index 0000000..5f1973b --- /dev/null +++ b/SU8-SEL.ows @@ -0,0 +1,502 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SHADOW4 + + + + + gASVogcAAAAAAAB9lCiMFGFuZ3VsYXJfZGlzdHJpYnV0aW9ulEsCjBthbmd1bGFyX2Rpc3RyaWJ1 +dGlvbl9saW1pdHOUSwCMDWNvaGVyZW50X2JlYW2USwCMG2NvbmVfZXh0ZXJuYWxfaGFsZl9hcGVy +dHVyZZRHP2BiTdLxqfyMG2NvbmVfaW50ZXJuYWxfaGFsZl9hcGVydHVyZZRHP1BiTdLxqfyMBWRl +cHRolEsAjA5lbGxfc2VtaWF4aXNfeJRHP7mZmZmZmZqMDmVsbF9zZW1pYXhpc196lEc/yZmZmZmZ +mowNZ2F1c3Nfc2lnbWFfeJRHPvq9Gqgh8pmMDWdhdXNzX3NpZ21hX3qURz76vRqoIfKZjBZnYXVz +c2lhbl9jZW50cmFsX3ZhbHVllEdAyTkAAAAAAIwQZ2F1c3NpYW5fbWF4aW11bZRHAAAAAAAAAACM +EGdhdXNzaWFuX21pbmltdW2URwAAAAAAAAAAjA5nYXVzc2lhbl9zaWdtYZRHP+GMfigkC3iMFmhv +cml6b250YWxfZGl2X3hfbWludXOURz6gxvegte2NjBVob3Jpem9udGFsX2Rpdl94X3BsdXOURz6g +xvegte2NjBZob3Jpem9udGFsX2xpbV94X21pbnVzlEc+5Pi1iONo8YwVaG9yaXpvbnRhbF9saW1f +eF9wbHVzlEc+5Pi1iONo8YwSaG9yaXpvbnRhbF9zaWdtYV94lEc+qbPj0FIbCIwQaXNfYXV0b21h +dGljX3J1bpSIjApsaW5lX2ludF8xlEcAAAAAAAAAAIwLbGluZV9pbnRfMTCURwAAAAAAAAAAjAps +aW5lX2ludF8ylEcAAAAAAAAAAIwKbGluZV9pbnRfM5RHAAAAAAAAAACMCmxpbmVfaW50XzSURwAA +AAAAAAAAjApsaW5lX2ludF81lEcAAAAAAAAAAIwKbGluZV9pbnRfNpRHAAAAAAAAAACMCmxpbmVf +aW50XzeURwAAAAAAAAAAjApsaW5lX2ludF84lEcAAAAAAAAAAIwKbGluZV9pbnRfOZRHAAAAAAAA +AACMDGxpbmVfdmFsdWVfMZRHQI9AAAAAAACMDWxpbmVfdmFsdWVfMTCURwAAAAAAAAAAjAxsaW5l +X3ZhbHVlXzKUR0CPkAAAAAAAjAxsaW5lX3ZhbHVlXzOURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzSU +RwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzWURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzaURwAAAAAAAAAA +jAxsaW5lX3ZhbHVlXzeURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXziURwAAAAAAAAAAjAxsaW5lX3Zh +bHVlXzmURwAAAAAAAAAAjBttYXhfbnVtYmVyX29mX3JlamVjdGVkX3JheXOUSoCWmACMD251bWJl +cl9vZl9saW5lc5RLAIwObnVtYmVyX29mX3JheXOUSpDQAwCMEm9wdGltaXplX2ZpbGVfbmFtZZSM +DU5PTkVTUEVDSUZJRUSUjA9vcHRpbWl6ZV9zb3VyY2WUSwCMCnBoYXNlX2RpZmaURwAAAAAAAAAA +jBpwaG90b25fZW5lcmd5X2Rpc3RyaWJ1dGlvbpRLBIwTcG9sYXJpemF0aW9uX2RlZ3JlZZRHP/AA +AAAAAACMC3JlY3RfaGVpZ2h0lEc/OQjlgc94eYwKcmVjdF93aWR0aJRHAAAAAAAAAACME3NhdmVk +V2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwK +UUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAABWQAAAUkAAAaAAAAEBAAAAVkAAAFJAAAGgAAABAQAAAAA +AAAAAAeAAAABWQAAAUkAAAaAAAAEBJSFlIeUUpSMBHNlZWSUShOeVgCMB3NpZ21hX3mURz9QYk3S +8an8jBFzaW5nbGVfbGluZV92YWx1ZZRHQI9AAAAAAACMDnNvdXJjZV9kZXB0aF95lEc/YGJN0vGp +/IwMc3BhdGlhbF90eXBllEsDjA91bmlmb3JtX21heGltdW2UR0CPkAAAAAAAjA91bmlmb3JtX21p +bmltdW2UR0CPQAAAAAAAjAV1bml0c5RLAIwRdXNlcl9kZWZpbmVkX2ZpbGWUjBNlbmVyZ3lfc3Bl +Y3RydW0uZGF0lIwUdXNlcl9kZWZpbmVkX21heGltdW2URwAAAAAAAAAAjBR1c2VyX2RlZmluZWRf +bWluaW11bZRHAAAAAAAAAACMHHVzZXJfZGVmaW5lZF9yZWZpbmluZ19mYWN0b3KUSwWMHXVzZXJf +ZGVmaW5lZF9zcGVjdHJ1bV9iaW5uaW5nlE0QJ4wUdmVydGljYWxfZGl2X3pfbWludXOURz7U+LWI +42jxjBN2ZXJ0aWNhbF9kaXZfel9wbHVzlEc+1Pi1iONo8YwUdmVydGljYWxfbGltX3pfbWludXOU +Rz7k+LWI42jxjBN2ZXJ0aWNhbF9saW1fel9wbHVzlEc+5Pi1iONo8YwQdmVydGljYWxfc2lnbWFf +epRHPqmz49BSGwiMCXZpZXdfdHlwZZRLAHUu + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwSMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWUR8BGgAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHEAAABAgAABu0AAAPk +AAABxQAAASgAAAbsAAAD4wAAAAAAAAAAB4AAAAHFAAABKAAABuwAAAPjlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwGMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAI+AAAA9AAAB2UAAAOv +AAACPgAAAPQAAAdlAAADrwAAAAAAAAAAB4AAAAI+AAAA9AAAB2UAAAOvlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHmAAAAjAAABw8AAANu +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASVHQIAAAAAAAB9lCiMDGF1dG9fZXhlY3V0ZZSJjBJjdXJyZW50U2NyaXB0SW5kZXiUSwCMCWZv +bnRfc2l6ZZRLBIwRbGlicmFyeUxpc3RTb3VyY2WUXZSMJG9hc3lzLndpZGdldHMudG9vbHMub3df +cHl0aG9uX3NjcmlwdJSMBlNjcmlwdJSTlCmBlH2UKIwEbmFtZZSMDmdldFM0SW50ZW5zaXR5lIwG +c2NyaXB0lIwwcHJpbnQoZid7aW5fb2JqZWN0XzEuYmVhbS5nZXRfaW50ZW5zaXR5KCk6LjZnfScp +lIwFZmxhZ3OUSwCMCGZpbGVuYW1llE51YmGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5f +dW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAAA +0AAAAKkAAAatAAAD9gAAANAAAACpAAAGrQAAA/YAAAAAAAAAAAeAAAAA0AAAAKkAAAatAAAD9pSF +lIeUUpSMDXNwbGl0dGVyU3RhdGWUjH9iJ1x4MDBceDAwXHgwMFx4ZmZceDAwXHgwMFx4MDBceDAx +XHgwMFx4MDBceDAwXHgwMlx4MDBceDAwXHgwMVx4YzRceDAwXHgwMFx4MDBceGQ1XHgwMVx4ZmZc +eGZmXHhmZlx4ZmZceDAxXHgwMFx4MDBceDAwXHgwMlx4MDAnlHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CjiAAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsAjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQI6NmZmZmZqME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLA4wUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQJ0Q +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACNAAAAQ0AAAddAAAD7wAAAjUA +AAEzAAAHXAAAA+4AAAAAAAAAAAeAAAACNQAAATMAAAdcAAAD7pSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHQGmAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQClD6lIY0YiME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A +AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHAAAAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQAAAAAAAAACME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A +AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHQClD6lIY0YiMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + + diff --git a/SU8_12890_12940.dat b/SU8_12890_12940.dat new file mode 100644 index 0000000..b1dee64 --- /dev/null +++ b/SU8_12890_12940.dat @@ -0,0 +1,204 @@ + 6.53230489313e+08 6.55764354671e+08 2.53386535808e+04 6.18000000000e-01 +101 +3.053665e-06 +3.053428e-06 +3.053191e-06 +3.052953e-06 +3.052716e-06 +3.052479e-06 +3.052241e-06 +3.052004e-06 +3.051767e-06 +3.051530e-06 +3.051292e-06 +3.051055e-06 +3.050818e-06 +3.050581e-06 +3.050344e-06 +3.050107e-06 +3.049870e-06 +3.049633e-06 +3.049396e-06 +3.049159e-06 +3.048922e-06 +3.048685e-06 +3.048449e-06 +3.048212e-06 +3.047975e-06 +3.047738e-06 +3.047501e-06 +3.047265e-06 +3.047028e-06 +3.046791e-06 +3.046555e-06 +3.046318e-06 +3.046082e-06 +3.045845e-06 +3.045609e-06 +3.045372e-06 +3.045136e-06 +3.044899e-06 +3.044663e-06 +3.044426e-06 +3.044190e-06 +3.043954e-06 +3.043718e-06 +3.043481e-06 +3.043245e-06 +3.043009e-06 +3.042773e-06 +3.042536e-06 +3.042300e-06 +3.042064e-06 +3.041828e-06 +3.041592e-06 +3.041356e-06 +3.041120e-06 +3.040884e-06 +3.040648e-06 +3.040412e-06 +3.040176e-06 +3.039941e-06 +3.039705e-06 +3.039469e-06 +3.039233e-06 +3.038997e-06 +3.038762e-06 +3.038526e-06 +3.038290e-06 +3.038055e-06 +3.037819e-06 +3.037584e-06 +3.037348e-06 +3.037113e-06 +3.036877e-06 +3.036642e-06 +3.036406e-06 +3.036171e-06 +3.035935e-06 +3.035700e-06 +3.035465e-06 +3.035229e-06 +3.034994e-06 +3.034759e-06 +3.034524e-06 +3.034288e-06 +3.034053e-06 +3.033818e-06 +3.033583e-06 +3.033348e-06 +3.033113e-06 +3.032878e-06 +3.032643e-06 +3.032408e-06 +3.032173e-06 +3.031938e-06 +3.031703e-06 +3.031468e-06 +3.031233e-06 +3.030999e-06 +3.030764e-06 +3.030529e-06 +3.030294e-06 +3.030060e-06 +4.972172e-09 +4.971432e-09 +4.970693e-09 +4.969953e-09 +4.969214e-09 +4.968475e-09 +4.967736e-09 +4.966997e-09 +4.966258e-09 +4.965520e-09 +4.964781e-09 +4.964043e-09 +4.963305e-09 +4.962567e-09 +4.961829e-09 +4.961091e-09 +4.960354e-09 +4.959616e-09 +4.958879e-09 +4.958142e-09 +4.957405e-09 +4.956668e-09 +4.955931e-09 +4.955195e-09 +4.954458e-09 +4.953722e-09 +4.952986e-09 +4.952250e-09 +4.951514e-09 +4.950779e-09 +4.950043e-09 +4.949308e-09 +4.948572e-09 +4.947837e-09 +4.947102e-09 +4.946367e-09 +4.945633e-09 +4.944898e-09 +4.944164e-09 +4.943429e-09 +4.942695e-09 +4.941961e-09 +4.941227e-09 +4.940494e-09 +4.939760e-09 +4.939027e-09 +4.938293e-09 +4.937560e-09 +4.936827e-09 +4.936094e-09 +4.935361e-09 +4.934629e-09 +4.933896e-09 +4.933164e-09 +4.932432e-09 +4.931700e-09 +4.930968e-09 +4.930236e-09 +4.929505e-09 +4.928773e-09 +4.928042e-09 +4.927311e-09 +4.926580e-09 +4.925849e-09 +4.925118e-09 +4.924387e-09 +4.923657e-09 +4.922927e-09 +4.922196e-09 +4.921466e-09 +4.920736e-09 +4.920007e-09 +4.919277e-09 +4.918548e-09 +4.917818e-09 +4.917089e-09 +4.916360e-09 +4.915631e-09 +4.914902e-09 +4.914174e-09 +4.913445e-09 +4.912717e-09 +4.911989e-09 +4.911260e-09 +4.910533e-09 +4.909805e-09 +4.909077e-09 +4.908350e-09 +4.907622e-09 +4.906895e-09 +4.906168e-09 +4.905441e-09 +4.904714e-09 +4.903987e-09 +4.903261e-09 +4.902534e-09 +4.901808e-09 +4.901082e-09 +4.900356e-09 +4.899630e-09 +4.898905e-09 From 3c40c1821198abf09a7977341357594f2024340b Mon Sep 17 00:00:00 2001 From: Xiaojiang YU <81464221+91902078@users.noreply.github.com> Date: Mon, 21 Oct 2024 16:41:38 +0800 Subject: [PATCH 2/6] Add files via upload --- Si(800)_12890_12940.dat | 211 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 211 insertions(+) create mode 100644 Si(800)_12890_12940.dat diff --git a/Si(800)_12890_12940.dat b/Si(800)_12890_12940.dat new file mode 100644 index 0000000..a8d625e --- /dev/null +++ b/Si(800)_12890_12940.dat @@ -0,0 +1,211 @@ +0 1.759399e+09 6.788375e-09 +14 14 1.000000e+00 +( 4.00000000000e+00, -1.95943487864e-15 ) +( 4.00000000000e+00, 1.95943487864e-15 ) +( 4.00000000000e+00, -3.91886975727e-15 ) +( 4.00000000000e+00, 3.91886975727e-15 ) +1.309004e+01 -1.683182e+01 6.433024e+00 +1.309004e+01 -1.683182e+01 6.433024e+00 +101 + 1.28900000000e+04 1.36676072387e-01 1.33673242769e-01 + 1.36676072387e-01 1.33673242769e-01 + 1.28905000000e+04 1.36668041677e-01 1.33662824915e-01 + 1.36668041677e-01 1.33662824915e-01 + 1.28910000000e+04 1.36660011619e-01 1.33652408348e-01 + 1.36660011619e-01 1.33652408348e-01 + 1.28915000000e+04 1.36651982214e-01 1.33641993069e-01 + 1.36651982214e-01 1.33641993069e-01 + 1.28920000000e+04 1.36643953460e-01 1.33631579076e-01 + 1.36643953460e-01 1.33631579076e-01 + 1.28925000000e+04 1.36635925358e-01 1.33621166370e-01 + 1.36635925358e-01 1.33621166370e-01 + 1.28930000000e+04 1.36627897909e-01 1.33610754950e-01 + 1.36627897909e-01 1.33610754950e-01 + 1.28935000000e+04 1.36619871111e-01 1.33600344817e-01 + 1.36619871111e-01 1.33600344817e-01 + 1.28940000000e+04 1.36611844965e-01 1.33589935969e-01 + 1.36611844965e-01 1.33589935969e-01 + 1.28945000000e+04 1.36603819470e-01 1.33579528408e-01 + 1.36603819470e-01 1.33579528408e-01 + 1.28950000000e+04 1.36595794628e-01 1.33569122132e-01 + 1.36595794628e-01 1.33569122132e-01 + 1.28955000000e+04 1.36587770437e-01 1.33558717143e-01 + 1.36587770437e-01 1.33558717143e-01 + 1.28960000000e+04 1.36579746897e-01 1.33548313438e-01 + 1.36579746897e-01 1.33548313438e-01 + 1.28965000000e+04 1.36571724009e-01 1.33537911019e-01 + 1.36571724009e-01 1.33537911019e-01 + 1.28970000000e+04 1.36563701772e-01 1.33527509885e-01 + 1.36563701772e-01 1.33527509885e-01 + 1.28975000000e+04 1.36555680187e-01 1.33517110035e-01 + 1.36555680187e-01 1.33517110035e-01 + 1.28980000000e+04 1.36547659253e-01 1.33506711471e-01 + 1.36547659253e-01 1.33506711471e-01 + 1.28985000000e+04 1.36539638970e-01 1.33496314191e-01 + 1.36539638970e-01 1.33496314191e-01 + 1.28990000000e+04 1.36531619339e-01 1.33485918195e-01 + 1.36531619339e-01 1.33485918195e-01 + 1.28995000000e+04 1.36523600359e-01 1.33475523484e-01 + 1.36523600359e-01 1.33475523484e-01 + 1.29000000000e+04 1.36515582029e-01 1.33465130056e-01 + 1.36515582029e-01 1.33465130056e-01 + 1.29005000000e+04 1.36507564351e-01 1.33454737912e-01 + 1.36507564351e-01 1.33454737912e-01 + 1.29010000000e+04 1.36499547324e-01 1.33444347052e-01 + 1.36499547324e-01 1.33444347052e-01 + 1.29015000000e+04 1.36491530947e-01 1.33433957476e-01 + 1.36491530947e-01 1.33433957476e-01 + 1.29020000000e+04 1.36483515221e-01 1.33423569183e-01 + 1.36483515221e-01 1.33423569183e-01 + 1.29025000000e+04 1.36475500147e-01 1.33413182173e-01 + 1.36475500147e-01 1.33413182173e-01 + 1.29030000000e+04 1.36467485722e-01 1.33402796445e-01 + 1.36467485722e-01 1.33402796445e-01 + 1.29035000000e+04 1.36459471949e-01 1.33392412001e-01 + 1.36459471949e-01 1.33392412001e-01 + 1.29040000000e+04 1.36451458826e-01 1.33382028839e-01 + 1.36451458826e-01 1.33382028839e-01 + 1.29045000000e+04 1.36443446353e-01 1.33371646960e-01 + 1.36443446353e-01 1.33371646960e-01 + 1.29050000000e+04 1.36435434531e-01 1.33361266363e-01 + 1.36435434531e-01 1.33361266363e-01 + 1.29055000000e+04 1.36427423360e-01 1.33350887047e-01 + 1.36427423360e-01 1.33350887047e-01 + 1.29060000000e+04 1.36419412838e-01 1.33340509014e-01 + 1.36419412838e-01 1.33340509014e-01 + 1.29065000000e+04 1.36411402967e-01 1.33330132263e-01 + 1.36411402967e-01 1.33330132263e-01 + 1.29070000000e+04 1.36403393747e-01 1.33319756793e-01 + 1.36403393747e-01 1.33319756793e-01 + 1.29075000000e+04 1.36395385176e-01 1.33309382604e-01 + 1.36395385176e-01 1.33309382604e-01 + 1.29080000000e+04 1.36387377256e-01 1.33299009696e-01 + 1.36387377256e-01 1.33299009696e-01 + 1.29085000000e+04 1.36379369985e-01 1.33288638070e-01 + 1.36379369985e-01 1.33288638070e-01 + 1.29090000000e+04 1.36371363365e-01 1.33278267724e-01 + 1.36371363365e-01 1.33278267724e-01 + 1.29095000000e+04 1.36363357394e-01 1.33267898659e-01 + 1.36363357394e-01 1.33267898659e-01 + 1.29100000000e+04 1.36355352073e-01 1.33257530874e-01 + 1.36355352073e-01 1.33257530874e-01 + 1.29105000000e+04 1.36347347402e-01 1.33247164370e-01 + 1.36347347402e-01 1.33247164370e-01 + 1.29110000000e+04 1.36339343381e-01 1.33236799146e-01 + 1.36339343381e-01 1.33236799146e-01 + 1.29115000000e+04 1.36331340009e-01 1.33226435201e-01 + 1.36331340009e-01 1.33226435201e-01 + 1.29120000000e+04 1.36323337287e-01 1.33216072537e-01 + 1.36323337287e-01 1.33216072537e-01 + 1.29125000000e+04 1.36315335215e-01 1.33205711152e-01 + 1.36315335215e-01 1.33205711152e-01 + 1.29130000000e+04 1.36307333792e-01 1.33195351046e-01 + 1.36307333792e-01 1.33195351046e-01 + 1.29135000000e+04 1.36299333019e-01 1.33184992220e-01 + 1.36299333019e-01 1.33184992220e-01 + 1.29140000000e+04 1.36291332895e-01 1.33174634672e-01 + 1.36291332895e-01 1.33174634672e-01 + 1.29145000000e+04 1.36283333420e-01 1.33164278404e-01 + 1.36283333420e-01 1.33164278404e-01 + 1.29150000000e+04 1.36275334594e-01 1.33153923414e-01 + 1.36275334594e-01 1.33153923414e-01 + 1.29155000000e+04 1.36267336418e-01 1.33143569702e-01 + 1.36267336418e-01 1.33143569702e-01 + 1.29160000000e+04 1.36259338891e-01 1.33133217269e-01 + 1.36259338891e-01 1.33133217269e-01 + 1.29165000000e+04 1.36251342012e-01 1.33122866114e-01 + 1.36251342012e-01 1.33122866114e-01 + 1.29170000000e+04 1.36243345783e-01 1.33112516237e-01 + 1.36243345783e-01 1.33112516237e-01 + 1.29175000000e+04 1.36235350203e-01 1.33102167638e-01 + 1.36235350203e-01 1.33102167638e-01 + 1.29180000000e+04 1.36227355272e-01 1.33091820317e-01 + 1.36227355272e-01 1.33091820317e-01 + 1.29185000000e+04 1.36219360989e-01 1.33081474273e-01 + 1.36219360989e-01 1.33081474273e-01 + 1.29190000000e+04 1.36211367355e-01 1.33071129506e-01 + 1.36211367355e-01 1.33071129506e-01 + 1.29195000000e+04 1.36203374370e-01 1.33060786016e-01 + 1.36203374370e-01 1.33060786016e-01 + 1.29200000000e+04 1.36195382034e-01 1.33050443803e-01 + 1.36195382034e-01 1.33050443803e-01 + 1.29205000000e+04 1.36187390346e-01 1.33040102867e-01 + 1.36187390346e-01 1.33040102867e-01 + 1.29210000000e+04 1.36179399307e-01 1.33029763208e-01 + 1.36179399307e-01 1.33029763208e-01 + 1.29215000000e+04 1.36171408916e-01 1.33019424824e-01 + 1.36171408916e-01 1.33019424824e-01 + 1.29220000000e+04 1.36163419173e-01 1.33009087717e-01 + 1.36163419173e-01 1.33009087717e-01 + 1.29225000000e+04 1.36155430079e-01 1.32998751886e-01 + 1.36155430079e-01 1.32998751886e-01 + 1.29230000000e+04 1.36147441633e-01 1.32988417331e-01 + 1.36147441633e-01 1.32988417331e-01 + 1.29235000000e+04 1.36139453836e-01 1.32978084052e-01 + 1.36139453836e-01 1.32978084052e-01 + 1.29240000000e+04 1.36131466686e-01 1.32967752048e-01 + 1.36131466686e-01 1.32967752048e-01 + 1.29245000000e+04 1.36123480185e-01 1.32957421319e-01 + 1.36123480185e-01 1.32957421319e-01 + 1.29250000000e+04 1.36115494331e-01 1.32947091865e-01 + 1.36115494331e-01 1.32947091865e-01 + 1.29255000000e+04 1.36107509126e-01 1.32936763687e-01 + 1.36107509126e-01 1.32936763687e-01 + 1.29260000000e+04 1.36099524568e-01 1.32926436783e-01 + 1.36099524568e-01 1.32926436783e-01 + 1.29265000000e+04 1.36091540659e-01 1.32916111154e-01 + 1.36091540659e-01 1.32916111154e-01 + 1.29270000000e+04 1.36083557397e-01 1.32905786799e-01 + 1.36083557397e-01 1.32905786799e-01 + 1.29275000000e+04 1.36075574783e-01 1.32895463718e-01 + 1.36075574783e-01 1.32895463718e-01 + 1.29280000000e+04 1.36067592816e-01 1.32885141912e-01 + 1.36067592816e-01 1.32885141912e-01 + 1.29285000000e+04 1.36059611498e-01 1.32874821379e-01 + 1.36059611498e-01 1.32874821379e-01 + 1.29290000000e+04 1.36051630826e-01 1.32864502120e-01 + 1.36051630826e-01 1.32864502120e-01 + 1.29295000000e+04 1.36043650802e-01 1.32854184135e-01 + 1.36043650802e-01 1.32854184135e-01 + 1.29300000000e+04 1.36035671426e-01 1.32843867423e-01 + 1.36035671426e-01 1.32843867423e-01 + 1.29305000000e+04 1.36027692697e-01 1.32833551984e-01 + 1.36027692697e-01 1.32833551984e-01 + 1.29310000000e+04 1.36019714615e-01 1.32823237818e-01 + 1.36019714615e-01 1.32823237818e-01 + 1.29315000000e+04 1.36011737181e-01 1.32812924925e-01 + 1.36011737181e-01 1.32812924925e-01 + 1.29320000000e+04 1.36003760394e-01 1.32802613304e-01 + 1.36003760394e-01 1.32802613304e-01 + 1.29325000000e+04 1.35995784254e-01 1.32792302956e-01 + 1.35995784254e-01 1.32792302956e-01 + 1.29330000000e+04 1.35987808760e-01 1.32781993881e-01 + 1.35987808760e-01 1.32781993881e-01 + 1.29335000000e+04 1.35979833914e-01 1.32771686077e-01 + 1.35979833914e-01 1.32771686077e-01 + 1.29340000000e+04 1.35971859715e-01 1.32761379546e-01 + 1.35971859715e-01 1.32761379546e-01 + 1.29345000000e+04 1.35963886163e-01 1.32751074286e-01 + 1.35963886163e-01 1.32751074286e-01 + 1.29350000000e+04 1.35955913258e-01 1.32740770297e-01 + 1.35955913258e-01 1.32740770297e-01 + 1.29355000000e+04 1.35947940999e-01 1.32730467580e-01 + 1.35947940999e-01 1.32730467580e-01 + 1.29360000000e+04 1.35939969387e-01 1.32720166135e-01 + 1.35939969387e-01 1.32720166135e-01 + 1.29365000000e+04 1.35931998422e-01 1.32709865960e-01 + 1.35931998422e-01 1.32709865960e-01 + 1.29370000000e+04 1.35924028103e-01 1.32699567056e-01 + 1.35924028103e-01 1.32699567056e-01 + 1.29375000000e+04 1.35916058431e-01 1.32689269423e-01 + 1.35916058431e-01 1.32689269423e-01 + 1.29380000000e+04 1.35908089405e-01 1.32678973061e-01 + 1.35908089405e-01 1.32678973061e-01 + 1.29385000000e+04 1.35900121025e-01 1.32668677968e-01 + 1.35900121025e-01 1.32668677968e-01 + 1.29390000000e+04 1.35892153292e-01 1.32658384146e-01 + 1.35892153292e-01 1.32658384146e-01 + 1.29395000000e+04 1.35884186206e-01 1.32648091594e-01 + 1.35884186206e-01 1.32648091594e-01 + 1.29400000000e+04 1.35876219765e-01 1.32637800312e-01 + 1.35876219765e-01 1.32637800312e-01 From e321c4f2b91631946888285753a8626228b3434f Mon Sep 17 00:00:00 2001 From: 91902078 Date: Wed, 25 Feb 2026 13:05:05 +0800 Subject: [PATCH 3/6] Update for phase shifter calculation --- .../optical_elements/crystals/s4_crystal.py | 1126 +++++++++++++++++ 1 file changed, 1126 insertions(+) create mode 100644 beamline/optical_elements/crystals/s4_crystal.py diff --git a/beamline/optical_elements/crystals/s4_crystal.py b/beamline/optical_elements/crystals/s4_crystal.py new file mode 100644 index 0000000..0a6e3b4 --- /dev/null +++ b/beamline/optical_elements/crystals/s4_crystal.py @@ -0,0 +1,1126 @@ +import numpy + +from syned.beamline.element_coordinates import ElementCoordinates +from syned.beamline.optical_elements.crystals.crystal import Crystal, DiffractionGeometry +from syned.beamline.shape import Rectangle, Ellipse + +from shadow4.beam.s4_beam import S4Beam +from shadow4.beamline.s4_beamline_element import S4BeamlineElement +from shadow4.beamline.s4_beamline_element_movements import S4BeamlineElementMovements +from shadow4.tools.arrayofvectors import vector_modulus, vector_dot, vector_cross, vector_norm +from shadow4.tools.arrayofvectors import vector_multiply_scalar, vector_diff + +from crystalpy.diffraction.DiffractionSetupXraylib import DiffractionSetupXraylib +from crystalpy.diffraction.DiffractionSetupDabax import DiffractionSetupDabax +from crystalpy.diffraction.DiffractionSetupShadowPreprocessorV1 import DiffractionSetupShadowPreprocessorV1 +from crystalpy.diffraction.DiffractionSetupShadowPreprocessorV2 import DiffractionSetupShadowPreprocessorV2 + +from crystalpy.diffraction.GeometryType import BraggDiffraction, BraggTransmission, LaueDiffraction, LaueTransmission +from crystalpy.util.Vector import Vector +from crystalpy.util.ComplexAmplitudePhoton import ComplexAmplitudePhoton +from crystalpy.diffraction.PerfectCrystalDiffraction import PerfectCrystalDiffraction + +from dabax.dabax_xraylib import DabaxXraylib + +from shadow4.optical_surfaces.s4_mesh import S4Mesh +from shadow4.optical_surfaces.s4_toroid import S4Toroid + +from shadow4.tools.logger import is_verbose, is_debug +from shadow4.tools.arrayofvectors import vector_modulus_square, vector_modulus, vector_norm, vector_rotate_around_axis +from shadow4.tools.logger import is_verbose, is_debug + +import scipy.constants as codata + +class S4Crystal(Crystal): + dynamic_theory = 1 # 0 Zachariasen 1 Guigay + """ + Shadow4 Crystal Class + This is a base class for perfect crystal in reflection geometry (Bragg), using the diffracted beam. + + Use derived classes for plane or other curved crystal surfaces. + + Use other classes for (to be developed): + * S4TransmissionCrystal : Perfect crystal in transmission (Bragg-transmitted beam, Laue-diffracted and Laue-transmited) + * S4JohanssonCrystal : Johanssong curved perfect crystals (in Bragg reflection). + * S4MosaicCrystal : Mosaic crystals (in Bragg reflection). + + Constructor. + + Parameters + ---------- + name : str, optional + A name for the crystal + boundary_shape : instance of BoundaryShape, optional + The information on the crystal boundaries. + surface_shape : instance of SurfaceShape, optional + The information on crystal surface. + material : str, optional + The crystal material name (a name accepted by crystalpy). + miller_index_h : int, optional + The Miller index H. + miller_index_k : int, optional + The Miller index K. + miller_index_l : int, optional + The Miller index L. + f_bragg_a : int, optional + Asymmetric crystal 0:No, 1:Yes. + asymmetry_angle : float, optional + For f_bragg_a=1, the asymmetry angle (angle between crystal planes and surface) in rads. + is_thick : int, optional + Use thick crystal approximation. + thickness : float, optional + For is_thick=0, the crystal thickness in m. + f_central : int, optional + Flag for autosetting the crystal to the corrected Bragg angle. + f_phot_cent : int, optional + 0: setting photon energy in eV, 1:setting photon wavelength in A. + phot_cent : float, optional + for f_central=1, the value of the photon energy (f_phot_cent=0) or photon wavelength (f_phot_cent=1). + f_ext : inf, optional + Flag for autosetting the crystal surface parameters. + 0: internal/calculated parameters, 1:external/user defined parameters. TODO: delete? + material_constants_library_flag : int, optional + Flag for indicating the origin of the crystal data: + 0: xraylib, 1: dabax, 2: preprocessor file v1, 3: preprocessor file v2. + file_refl : str, optional + for material_constants_library_flag=2,3, the name of the file containing the crystal parameters. + dabax : None or instance of DabaxXraylib, + The pointer to the dabax library (used for material_constants_library_flag=1). + + Returns + ------- + instance of S4Crystal. + """ + def __init__(self, + name="Undefined", + boundary_shape=None, + surface_shape=None, + material=None, + diffraction_geometry=DiffractionGeometry.BRAGG, + miller_index_h=1, + miller_index_k=1, + miller_index_l=1, + f_bragg_a=False, + asymmetry_angle=0.0, + is_thick=0, # 1=Use thick crystal approximation + thickness=0.010, + f_central=0, + f_phot_cent=0, + phot_cent=8000.0, + # f_johansson=False, + # r_johansson=1.0, + # f_mosaic=False, + # spread_mos=0.4*numpy.pi/180, + f_ext=0, + material_constants_library_flag=0, # 0=xraylib, 1=dabax + # 2=shadow preprocessor file v1 + # 3=shadow preprocessor file v2 + file_refl="", + method_efields_management=0, # 0=S4, 1=S3 + dabax=None, + ): + + + Crystal.__init__(self, + name=name, + surface_shape=surface_shape, + boundary_shape=boundary_shape, + material=material, + diffraction_geometry=diffraction_geometry, + miller_index_h=miller_index_h, + miller_index_k=miller_index_k, + miller_index_l=miller_index_l, + asymmetry_angle=asymmetry_angle, + thickness=thickness, + ) + + + self._f_central = f_central + self._f_phot_cent = f_phot_cent + self._phot_cent = phot_cent + self._f_bragg_a = f_bragg_a + self._is_thick = is_thick + self._f_ext = f_ext + self._material_constants_library_flag = material_constants_library_flag + self._file_refl = file_refl + + self._dabax = dabax + self._method_efields_management = method_efields_management + + # self._f_mosaic = f_mosaic + # self._r_johansson = r_johansson + # self._f_johansson = f_johansson + # self._spread_mos = spread_mos + + # support text containg name of variable, help text and unit. Will be stored in self._support_dictionary + self._add_support_text([ + ("f_central", "S4: autotuning", ""), + ("f_phot_cent", "S4: for f_central=1: tune to eV(0) or A (1)", ""), + ("phot_cent", "S4: for f_central=1: value in eV or A", ""), + ("f_bragg_a", "S4: use asymmetruc cut", ""), + ("is_thick", "S4: use thick crystal approximation", ""), + ("f_ext", "S4: autosetting curved surface parms.", ""), + ("material_constants_library_flag", "S4: crystal data from: 0=xraylib, 1=dabax, 2=file v1, 3=file v1", ""), + ("file_refl", "S4: preprocessor file name", ""), + ("method_efields_management", "flag 0:new in S4; 1=like S3", ""), + ] ) + + + def get_info(self): + """ + Returns the specific information of the S4 crystal optical element. + + Returns + ------- + str + """ + txt = "\n\n" + txt += "CRYSTAL\n" + if self._material_constants_library_flag == 0: + txt += "Crystal data using xraylib for %s %d%d%d\n" % (self._material, + self._miller_index_h, + self._miller_index_k, + self._miller_index_l) + elif self._material_constants_library_flag == 1: + txt += "Crystal data using dabax for %s %d%d%d\n" % (self._material, + self._miller_index_h, + self._miller_index_k, + self._miller_index_l) + elif self._material_constants_library_flag == 2: + txt += "Crystal data using preprocessor (bragg V1) file: %s \n" % self._file_refl + elif self._material_constants_library_flag == 3: + txt += "Crystal data using preprocessor (bragg V2) file: %s \n" % self._file_refl + + if self._f_central == 0: + txt += "Using EXTERNAL incidence and reflection angles.\n" + else: + txt += "Using INTERNAL or calculated incidence and reflection angles for " + if self._f_phot_cent == 0: + txt += "photon energy %.6f eV\n" % self._phot_cent + else: + txt += "photon wavelength %f A\n" % (self._phot_cent) + + + txt += "\n" + ss = self.get_surface_shape() + if ss is None: + txt += "Surface shape is: Plane (** UNDEFINED?? **)\n" + else: + txt += "Surface shape is: %s\n" % ss.__class__.__name__ + + # + if ss is not None: txt += "\nParameters:\n %s\n" % ss.info() + + txt += self.get_optical_surface_instance().info() + "\n" + + boundary = self.get_boundary_shape() + if boundary is None: + txt += "Surface boundaries not considered (infinite)" + else: + txt += "Surface boundaries are: %s\n" % boundary.__class__.__name__ + txt += " Limits: " + repr( boundary.get_boundaries()) + "\n" + txt += boundary.info() + + return txt + + def to_python_code_boundary_shape(self): + """ + Creates a code block with information of boundary shape. + + Returns + ------- + str + The text with the code. + """ + txt = "" # "\nfrom shadow4.beamline.optical_elements.mirrors.s4_plane_mirror import S4PlaneMirror" + bs = self._boundary_shape + if bs is None: + txt += "\nboundary_shape = None" + elif isinstance(bs, Rectangle): + txt += "\nfrom syned.beamline.shape import Rectangle" + txt += "\nboundary_shape = Rectangle(x_left=%g, x_right=%g, y_bottom=%g, y_top=%g)" % bs.get_boundaries() + elif isinstance(bs, Ellipse): + txt += "\nfrom syned.beamline.shape import Ellipse" + txt += "\nboundary_shape = Ellipse(a_axis_min=%g, a_axis_max=%g, b_axis_min=%g, b_axis_max=%g)" % bs.get_boundaries() + return txt + + def _get_dabax_txt(self): + if self._material_constants_library_flag == 1: + if isinstance(self._dabax, DabaxXraylib): + dabax_txt = 'DabaxXraylib(file_f0="%s", file_f1f2="%s")' % (self._dabax.get_file_f0(), self._dabax.get_file_f1f2()) + else: + dabax_txt = "DabaxXraylib()" + else: + dabax_txt = "None" + + return dabax_txt + +class S4CrystalElement(S4BeamlineElement): + """ + The base class for Shadow4 crystal element. + It is made of a S4Crystal and an ElementCoordinates instance. It also includes the input beam. + + Use derived classes for plane or other curved crystal surfaces. + + Constructor. + + Parameters + ---------- + optical_element : instance of OpticalElement, optional + The syned optical element. + coordinates : instance of ElementCoordinates, optional + The syned element coordinates. + movements : instance of S4BeamlineElementMovements, optional + The S4 element movements. + input_beam : instance of S4Beam, optional + The S4 incident beam. + + + Returns + ------- + instance of S4CrystalElement. + """ + + def __init__(self, + optical_element : S4Crystal = None, + coordinates : ElementCoordinates = None, + movements: S4BeamlineElementMovements = None, + input_beam : S4Beam = None): + super().__init__(optical_element=optical_element if optical_element is not None else S4Crystal(), + coordinates=coordinates if coordinates is not None else ElementCoordinates(), + movements=movements, + input_beam=input_beam) + + self._crystalpy_diffraction_setup = None + + + def set_crystalpy_diffraction_setup(self): + """ + Returns the crystalpy DiffractionSetup. + + Returns + ------- + instance of crystalpy DiffractionSetupAbstract + """ + oe = self.get_optical_element() + coor = self.get_coordinates() + geo = oe.get_diffraction_geometry() + if geo == DiffractionGeometry.BRAGG: + geo_type = BraggDiffraction() + elif geo == DiffractionGeometry.LAUE: + geo_type = LaueDiffraction() + elif geo == DiffractionGeometry.BRAGG_T: + geo_type = BraggTransmission() + else: + geo_type = LaueTransmission() + + if oe._material_constants_library_flag == 0: + if is_verbose(): print("\nCreating a diffraction setup (XRAYLIB) for material:", oe._material) + diffraction_setup = DiffractionSetupXraylib(geometry_type=geo_type, + crystal_name=oe._material, # string + thickness=oe._thickness, # meters + miller_h=oe._miller_index_h, # int + miller_k=oe._miller_index_k, # int + miller_l=oe._miller_index_l, # int + asymmetry_angle=oe._asymmetry_angle, # radians + azimuthal_angle=0.0) + elif oe._material_constants_library_flag == 1: + if is_verbose(): print("\nCreating a diffraction setup (DABAX) for material:", oe._material) + diffraction_setup = DiffractionSetupDabax(geometry_type=geo_type, + crystal_name=oe._material, # string + thickness=oe._thickness, # meters + miller_h=oe._miller_index_h, # int + miller_k=oe._miller_index_k, # int + miller_l=oe._miller_index_l, # int + asymmetry_angle=oe._asymmetry_angle, # radians + azimuthal_angle=0.0, + dabax=oe._dabax) + elif oe._material_constants_library_flag == 2: + if is_verbose(): print("\nCreating a diffraction setup (shadow preprocessor file V1)...") + diffraction_setup = DiffractionSetupShadowPreprocessorV1(geometry_type=geo_type, + crystal_name=oe._material, # string + thickness=oe._thickness, # meters + miller_h=oe._miller_index_h, # int + miller_k=oe._miller_index_k, # int + miller_l=oe._miller_index_l, # int + asymmetry_angle=oe._asymmetry_angle, # radians + azimuthal_angle=0.0, + preprocessor_file=oe._file_refl) + elif oe._material_constants_library_flag == 3: + if is_verbose(): print("\nCreating a diffraction setup (shadow preprocessor file V2)...") + diffraction_setup = DiffractionSetupShadowPreprocessorV2(geometry_type=geo_type, + crystal_name=oe._material, # string + thickness=oe._thickness, # meters + miller_h=oe._miller_index_h, # int + miller_k=oe._miller_index_k, # int + miller_l=oe._miller_index_l, # int + asymmetry_angle=oe._asymmetry_angle, # radians + azimuthal_angle=0.0, + preprocessor_file=oe._file_refl) + else: + raise NotImplementedError + + self._crystalpy_diffraction_setup = diffraction_setup + + def align_crystal(self): + """ + Sets the adequate incident and reflection angles to match the tuning energy. + """ + oe = self.get_optical_element() + coor = self.get_coordinates() + + if oe is None: + raise Exception("Undefined optical element") + + if oe._f_central: + if oe._f_phot_cent == 0: + energy = oe._phot_cent + else: + energy = codata.h * codata.c / codata.e * 1e2 / (oe._phot_cent * 1e-8) + + setting_angle = self._crystalpy_diffraction_setup.angleBraggCorrected(energy) + if isinstance(setting_angle, (list, tuple, numpy.ndarray)): setting_angle = setting_angle[0] + + theta_in_grazing = setting_angle + oe._asymmetry_angle + + if is_verbose(): + print(" align_crystal: dSpacingSI [m]: " , (self._crystalpy_diffraction_setup.dSpacingSI())) + print(" align_crystal: Bragg angle (uncorrected) for E=%f eV is %f deg" % (energy, numpy.degrees(self._crystalpy_diffraction_setup.angleBragg(energy)))) + print(" align_crystal: Bragg angle (corrected) for E=%f eV is %f deg" % (energy, numpy.degrees(setting_angle))) + print(" align_crystal: (normal) Incident angle [deg]", numpy.degrees(numpy.pi/2 - (theta_in_grazing ) )) + print(" align_crystal: grazing incident angle [deg]: ", numpy.degrees(theta_in_grazing )) + + theta_out_grazing = setting_angle - oe._asymmetry_angle # wrong because this just applies the Laue equation + print(" align_crystal: (normal) Reflection angle [LAUE EQUATION] [deg]", numpy.degrees(numpy.pi/2 - (theta_out_grazing) )) + print(" align_crystal: grazing output angle [LAUE EQUATION] [deg]: ", numpy.degrees(theta_out_grazing)) + + KIN = self._crystalpy_diffraction_setup.vectorKscattered(energy=energy) + theta_out = KIN.angle(self._crystalpy_diffraction_setup.vectorNormalSurface()) + if isinstance(theta_out, (list, tuple, numpy.ndarray)): theta_out = theta_out[0] + + if is_verbose(): print(" align_crystal: (normal) Reflection angle [SCATTERING EQUATION] [deg]: ", numpy.degrees(theta_out)) + _, _, angle_azimuthal = coor.get_angles() + + coor.set_angles(angle_radial = numpy.pi/2 - theta_in_grazing, + angle_radial_out = theta_out, + angle_azimuthal = angle_azimuthal) + else: + if is_verbose(): print("align_crystal: nothing to align: f_central=0") + + if is_verbose(): print(coor.info()) + + def trace_beam(self, **params): + """ + Runs (ray tracing) the input beam through the element. + + Parameters + ---------- + **params : accepted parameters, in particular: + + flag_lost_value: float + numeric value to set in the flag column when ray is lost. + + Returns + ------- + tuple + (output_beam, footprint) instances of S4Beam. + """ + + if not isinstance(self.get_optical_element(), Crystal): raise Exception("Undefined Crystal") + flag_lost_value = params.get("flag_lost_value", -1) + change_reference_system_in = params.get("change_reference_system_in", True) + change_reference_system_out = params.get("change_reference_system_out", True) + print(">>>>>> change_reference_system: ", change_reference_system_in, change_reference_system_out) + + if is_verbose(): + if not change_reference_system_in: + print("change_reference_system_in = False: skipping reference change to o.e.") + if not change_reference_system_out: + print("change_reference_system_out = False: skipping reference change from o.e. to image") + + if self._crystalpy_diffraction_setup is None: # todo: supress if? + self.set_crystalpy_diffraction_setup() + self.align_crystal() + + p = self.get_coordinates().p() + q = self.get_coordinates().q() + theta_grazing1 = numpy.pi / 2 - self.get_coordinates().angle_radial() + theta_grazing2 = numpy.pi / 2 - self.get_coordinates().angle_radial_out() + alpha1 = self.get_coordinates().angle_azimuthal() + + # + input_beam = self.get_input_beam().duplicate() + + soe = self.get_optical_element() + + if is_verbose(): + b_S, b_P = input_beam.get_efield_directions() + print("\n\n") + print(">>> input beam e_S, mod e_s", b_S[0], vector_modulus(b_S)[0]) + print(">>> input beam e_P, mod e_P, e_S.e_P: ", b_P[0], vector_modulus(b_P)[0], vector_dot(b_S, b_P)[0]) + + # + # put input_beam in crystal reference system + # + if change_reference_system_in: + input_beam.rotate(alpha1, axis=2) + input_beam.rotate(theta_grazing1, axis=1) + + if is_verbose(): + b_S, b_P = input_beam.get_efield_directions() + print("") + print(">>> local beam e_S, mod e_s", b_S[0], vector_modulus(b_S)[0]) + print(">>> local beam e_P, mod e_P, e_S.e_P: ", b_P[0], vector_modulus(b_P)[0], vector_dot(b_S, b_P)[0]) + + input_beam.translation([0.0, -p * numpy.cos(theta_grazing1), p * numpy.sin(theta_grazing1)]) + + # crystal movement (forward): + movements = self.get_movements() + if movements is not None: + if movements.f_move: + input_beam.rot_for(OFFX=movements.offset_x, + OFFY=movements.offset_y, + OFFZ=movements.offset_z, + X_ROT=movements.rotation_x, + Y_ROT=movements.rotation_y, + Z_ROT=movements.rotation_z) + + # + # crystal diffraction + # + footprint, normal = self._apply_crystal_diffraction(input_beam) + + # + # apply crystal movements (backwards) and boundaries + # + if movements is not None: + if movements.f_move: + footprint.rot_back(OFFX=movements.offset_x, + OFFY=movements.offset_y, + OFFZ=movements.offset_z, + X_ROT=movements.rotation_x, + Y_ROT=movements.rotation_y, + Z_ROT=movements.rotation_z) + + footprint.apply_boundaries_syned(soe.get_boundary_shape(), flag_lost_value=flag_lost_value) + + # + # from element reference system to image plane + # + output_beam = footprint.duplicate() + if change_reference_system_out: + output_beam.change_to_image_reference_system(theta_grazing2, q) + + if is_verbose(): + b_S, b_P = output_beam.get_efield_directions() + print("") + print(">>> image e_S, mod e_s", b_S[0], vector_modulus(b_S)[0]) + print(">>> image e_P, mod e_P, e_S.e_P: ", b_P[0], vector_modulus(b_P)[0], vector_dot(b_S, b_P)[0]) + + return output_beam, footprint + + def _apply_crystal_diffraction(self, input_beam): + # + # geometric and physics for the scattering process: + # reflect beam in the crystal and apply crystal reflectivity + # + + if self.get_optical_element()._method_efields_management == 0: # S4 + footprint, normal = self.get_optical_element().get_optical_surface_instance().calculate_intercept_on_beam(input_beam) + + if is_debug(): + print(" >>>>>> intercept: ", footprint.get_columns([1, 2, 3])[:, 0]) + print(" >>>>>> vout: ", footprint.get_columns([4, 5, 6])[:, 0]) + print(" >>>>>> normal: ", normal.shape, normal[:, 0]) + + vIn, vOut, r_SS, r_PP = self._calculate_perfect_crystal_scattering(footprint, normal) + jv_out_0, jv_out_1, ee_S, ee_P = self._calculate_jones_and_efield_directions(footprint, normal, + vIn, vOut, r_SS, r_PP) + # update beam array with the new direction + footprint.set_column(4, vOut[:, 0]) + footprint.set_column(5, vOut[:, 1]) + footprint.set_column(6, vOut[:, 2]) + # update beam array with the new electric fields + footprint.set_jones_components(jv_out_0, jv_out_1, e_S=ee_S, e_P=ee_P) + + if is_verbose(): + print(">>> Orthogonal footprint: ", footprint.efields_orthogonal(), + vector_dot(ee_S, ee_P)[0], + vector_dot(ee_S, vOut)[0], + vector_dot(ee_P, vOut)[0]) + + b_S, b_P = footprint.get_efield_directions() + print("") + print(">>> reflected beam e_S, mod e_s", b_S[0], vector_modulus(b_S)[0]) + print(">>> reflected beam e_P, mod e_P, e_S.e_P: ", b_P[0], vector_modulus(b_P)[0], vector_dot(b_S, b_P)[0]) + + + print(">>> Intensity foot s, beam in s, foot p, beam in p:", + footprint.get_column(24)[0], input_beam.get_column(24)[0], + footprint.get_column(25)[0], input_beam.get_column(25)[0],) + + else: # S3 + footprint, normal = self._apply_crystal_diffraction_and_reflectivities_S3(input_beam) + + return footprint, normal + + def _calculate_perfect_crystal_scattering(self, footprint1, normal): + """ + Compute the scattering by the crystal beamline element. + + It calls crystalpy to compute the crystal parameters: + + - output direction vOut + + - reflectivities (complex amplitudes) r__S and r_P + + Parameters + ---------- + footprint : S4Beam instance + The beam in the local reference of the beamline element with only the intercepts calculated (directions + and electric fields will be later updated with the results of this method). + + normal : numpy array + The array with the normal to the surface for all rays. + + Returns + ------- + tuple + (vIn, vOut, r_S, r_P) : input and output direction with shape (npoints, 3) and complex amplitude + reflectivity for sigma and pi. + + """ + + footprint = footprint1.duplicate() + v1 = footprint.get_columns([4, 5, 6]) # numpy.array(a3.getshcol([4,5,6])) + + # + # direction and reflectivity calculation using crystalpy + # + energies = footprint.get_photon_energy_eV() + + # incident crystalpy photon stack + photons_in = ComplexAmplitudePhoton( + energies, + Vector(v1[0], v1[1], v1[2]), + Esigma=numpy.ones(energies.size, dtype=complex), + Epi =numpy.ones(energies.size, dtype=complex), + ) + + # create crystalpy PerfectCrystalDiffraction instance + # Warning: + # S4Conic, S4Toroid give normal_z < 0 for concave surfaces (and >0 for convex) + # S4mesh give always normal_z > 0 + # We need for crystalpy the upwards normal + soe = self.get_optical_element() + ccc = soe.get_optical_surface_instance() + + if isinstance(ccc, S4Mesh): + surface_normal = Vector(normal[0], normal[1], normal[2]) # normal is outwards! + elif isinstance(ccc, S4Toroid): + if ccc.f_torus == 0 or ccc.f_torus == 2: + surface_normal = Vector(normal[0], normal[1], normal[2]).scalarMultiplication(-1.0) # normal is inwards! + else: + surface_normal = Vector(normal[0], normal[1], normal[2]) # normal is outwards! + else: # todo: check with convex surfaces + surface_normal = Vector(normal[0], normal[1], normal[2]).scalarMultiplication(-1.0) # normal is inwards! + + # calculate vector H + # Geometrical convention from M.Sanchez del Rio et al., J.Appl.Cryst.(2015). 48, 477-491. + bragg_normal = surface_normal.getVectorH( + surface_normal, + self._crystalpy_diffraction_setup.dSpacingSI(), + asymmetry_angle=self._crystalpy_diffraction_setup.asymmetryAngle(), + azimuthal_angle=self._crystalpy_diffraction_setup.azimuthalAngle()) + + # g_modulus = 2.0 * numpy.pi / (self._crystalpy_diffraction_setup.dSpacingSI()) + # # Let's start from a vector parallel to the surface normal (z axis). + # temp_normal_bragg = surface_normal.scalarMultiplication(g_modulus) + # + # # Let's now rotate this vector of an angle alphaX around the y axis (according to the right-hand-rule). + # alpha_x = self._crystalpy_diffraction_setup.asymmetryAngle() + # axis = self._crystalpy_diffraction_setup.vectorParallelSurface().crossProduct( + # surface_normal) # should be ~(1, 0, 0) + # temp_normal_bragg = temp_normal_bragg.rotateAroundAxis(axis, -alpha_x) + # + # # Let's now rotate this vector of an angle phi around the z axis (following the ISO standard 80000-2:2009). + # phi = self._crystalpy_diffraction_setup.azimuthalAngle() + # bragg_normal = temp_normal_bragg.rotateAroundAxis(temp_normal_bragg, phi) + + perfect_crystal = PerfectCrystalDiffraction.initializeFromDiffractionSetupAndEnergy( + self._crystalpy_diffraction_setup, + energies, + geometry_type=None, + bragg_normal=bragg_normal, + surface_normal=surface_normal, + thickness=None, + d_spacing=None, + photon_in=photons_in, + ) + + # Calculate outgoing Photon. + + # NEW USING Jones matrix JR + outgoing_complex_amplitude_photon = perfect_crystal.calculatePhotonOut(photons_in, + apply_reflectivity=True, + calculation_method=soe.dynamic_theory, + is_thick=soe._is_thick, + use_transfer_matrix=0 + ) + r_S = outgoing_complex_amplitude_photon.getComplexAmplitudeS() + r_P = outgoing_complex_amplitude_photon.getComplexAmplitudeP() + + if is_verbose(): + print(">> r_S: ", r_S[0], numpy.abs(r_S[0]) ** 2) + print(">> r_P: ", r_P[0], numpy.abs(r_P[0]) ** 2) + vv = outgoing_complex_amplitude_photon.unitDirectionVector().components() # (3, npoints) + vOut = vv.T # shape (npoints, 3) + vIn = v1.T + return vIn, vOut, r_S, r_P + + def _calculate_jones_and_efield_directions(self, footprint, normal, vIn, vOut, r_SS, r_PP): + """ + Calculates the Jones vector after crystal diffraction. It also returns the directions of the + S and P polarized components of the electric field. + + + Parameters + ---------- + footprint : instance of S4Beam + The input beam + normal : numpy array shape (nrays, 3) + The normal to the surface at the intercept points. + vIn : numpy array shape (nrays, 3) + The incident directions + vOut : numpy array shape (nrays, 3) + The incident directions + r_SS : numpy array complex shape (nrays) + The crystal reflectivity for the S polarization + r_PP : numpy array complex shape (nrays) + The crystal reflectivity for the P polarization + + Returns + ------- + tuple + (jv_out_0, jv_out_1, ee_S, ee_P) the two components of the Jones vector and the two vectors of + shape(nrays, 3) with the electric vectors for the S and P polarizations. + + """ + # + # get versors with the sigma and pi directions for: + # e_S, e_P: the incident beam (as it is) + # es_S, es_P: the scattering plane spanned by vIn (incident) + # ee_S, ee_P: the scattering plane spanned by vOut (incident) + # + # Note that vector_norm() is not needed (for the vectors that should be unitary), + # but renormalizing them improves accuracy in the calculation of c, s + # + e_S, e_P = footprint.get_efield_directions() # these are \hat{u}_{\sigma,\pi} in Eq. 3 + + soe = self.get_optical_element() + if soe.get_diffraction_geometry() > 1: # 2:bragg_t, 3:laue_t + vOut = vIn + es_S = e_S + es_P = e_P + ee_S = e_S + ee_P = e_P + axis = e_S # Dummy assignment, not used + else: + axis = vector_norm(vector_cross(vIn, vOut)) + + es_S = axis # \hat{u}_{\sigma,i} in Eq. 12 + es_P = vector_norm(vector_cross(es_S, vIn)) # \hat{u}_{\pi,i} in Eq. 12 + + ee_S = axis # \hat{u}_{\sigma,f} in Eq. 13 + ee_P = vector_norm(vector_cross(ee_S, vOut)) # \hat{u}_{\pi,f} in Eq. 13 + + if is_verbose(): + print(">>>>> e_S, perp vIn: ", e_S[0], vector_dot(e_S, vIn)[0]) + print(">>>>> e_P, perp vIn: ", e_P[0], vector_dot(e_P, vIn)[0]) + + print(">>>>> axis, mod, perp vIn: ", axis[0], vector_modulus(axis)[0], vector_dot(axis, vIn)[0]) + print(">>>>> final ee_S, perp vOut: ", ee_S[0], vector_dot(ee_S, vOut)[0]) + print(">>>>> final ee_P, perp vOut: ", ee_P[0], vector_dot(ee_P, vOut)[0]) + + # + # Jones calculus of refletivity + # + + # Jones matrix (local) + J00 = r_SS + J01 = 0 + J10 = 0 + J11 = r_PP + + # rotation matrix R + if True: # todo delete, only for test + # c = e_S[:, 0] # cos of angle between e_S and the x axis + c = vector_dot(e_S, ee_S) + s = numpy.sqrt(1 - c ** 2) # sin + if is_verbose(): print(">>> s, c, angle: ", s[0], c[0], numpy.degrees(numpy.arctan2(s[0], c[0]))) + R00 = c + R01 = -s + R10 = s + R11 = c + if is_verbose(): print(">>> R angles: ", R00[0], R01[0], R10[0], R11[0]) + + R00 = vector_dot(e_S, es_S) + R01 = vector_dot(e_S, es_P) + R10 = vector_dot(e_P, es_S) + R11 = vector_dot(e_P, es_P) + + # J x R(alpha), the Jones matrix to apply to the Jones vector of the incident rays + Jrotated_00 = J00 * R00 + J01 * R10 # r_SS * c + Jrotated_01 = J00 * R01 + J01 * R11 # -r_SS * s + Jrotated_10 = J10 * R00 + J11 * R10 # r_PP * s + Jrotated_11 = J10 * R01 + J11 * R11 # r_PP * c + + if is_verbose(): + print(">>> R dotprd: ", R00[0], R01[0], R10[0], R11[0]) + print(">>> J: ", Jrotated_00[0], Jrotated_01[0], Jrotated_10[0], Jrotated_11[0]) + print(">>> |J|: ", numpy.abs(Jrotated_00[0]), numpy.abs(Jrotated_01[0]), numpy.abs(Jrotated_10[0]), + numpy.abs(Jrotated_11[0])) + + # Jones vector of incident rays + jv_in_0, jv_in_1 = footprint.get_jones_components() + # Jones vector or reflected rays + jv_out_0 = Jrotated_00 * jv_in_0 + Jrotated_01 * jv_in_1 + jv_out_1 = Jrotated_10 * jv_in_0 + Jrotated_11 * jv_in_1 + + return jv_out_0, jv_out_1, ee_S, ee_P + + def _apply_crystal_diffraction_and_reflectivities_S3(self, beam): #TODO delete + """ + Applies the changes in direction and in reflectivity in a beam due to crystal diffraction. + It mimics the procedure in SHADOW3. + Note that it is a new way in SHADOW4 using Jones algebra. + + Parameters + ---------- + beam : instance of S4Beam + the beam (already transformed to the local crystal reference system). + + Returns + ------- + tuple + (footprint, normal), with footprint an instance of S4Beam and the vector normal as numpy arrat (3,:) + + """ + # + soe = self.get_optical_element() + ccc = soe.get_optical_surface_instance() + v1 = beam.get_columns([4, 5, 6]) + + # intercept calculation + footprint, normal = ccc.calculate_intercept_on_beam(beam) + + + # + # direction and reflectivity calculation using crystalpy + # + energies = footprint.get_photon_energy_eV() + + # incident crystalpy photon stack + photons_in = ComplexAmplitudePhoton( + energies, + Vector(v1[0], v1[1], v1[2]), + Esigma=numpy.ones(energies.size, dtype=complex), #numpy.sqrt(footprint.get_column(24)) * numpy.exp(1j * footprint.get_column(14)), + Epi =numpy.ones(energies.size, dtype=complex), #numpy.sqrt(footprint.get_column(25)) * numpy.exp(1j * footprint.get_column(15)), + ) + + # create crystalpy PerfectCrystalDiffraction instance + # Warning: + # S4Conic, S4Toroid give normal_z < 0 for concave surfaces (and >0 for convex) + # S4mesh give always normal_z > 0 + # We need for crystalpy the upwards normal + if isinstance(ccc, S4Mesh): + surface_normal = Vector(normal[0], normal[1], normal[2]) # normal is outwards! + elif isinstance(ccc, S4Toroid): + if ccc.f_torus == 0 or ccc.f_torus == 2: + surface_normal = Vector(normal[0], normal[1], normal[2]).scalarMultiplication(-1.0) # normal is inwards! + else: + surface_normal = Vector(normal[0], normal[1], normal[2]) # normal is outwards! + else: # todo: check with convex surfaces + surface_normal = Vector(normal[0], normal[1], normal[2]).scalarMultiplication(-1.0) # normal is inwards! + + # calculate vector H + # Geometrical convention from M.Sanchez del Rio et al., J.Appl.Cryst.(2015). 48, 477-491. + bragg_normal = surface_normal.getVectorH( + surface_normal, + self._crystalpy_diffraction_setup.dSpacingSI(), + asymmetry_angle=self._crystalpy_diffraction_setup.asymmetryAngle(), + azimuthal_angle=self._crystalpy_diffraction_setup.azimuthalAngle()) + + # g_modulus = 2.0 * numpy.pi / (self._crystalpy_diffraction_setup.dSpacingSI()) + # # Let's start from a vector parallel to the surface normal (z axis). + # temp_normal_bragg = surface_normal.scalarMultiplication(g_modulus) + # + # # Let's now rotate this vector of an angle alphaX around the y axis (according to the right-hand-rule). + # alpha_x = self._crystalpy_diffraction_setup.asymmetryAngle() + # axis = self._crystalpy_diffraction_setup.vectorParallelSurface().crossProduct( + # surface_normal) # should be ~(1, 0, 0) + # temp_normal_bragg = temp_normal_bragg.rotateAroundAxis(axis, -alpha_x) + # + # # Let's now rotate this vector of an angle phi around the z axis (following the ISO standard 80000-2:2009). + # phi = self._crystalpy_diffraction_setup.azimuthalAngle() + # bragg_normal = temp_normal_bragg.rotateAroundAxis(temp_normal_bragg, phi) + + perfect_crystal = PerfectCrystalDiffraction.initializeFromDiffractionSetupAndEnergy( + self._crystalpy_diffraction_setup, + energies, + geometry_type=None, + bragg_normal=bragg_normal, + surface_normal=surface_normal, + # bragg_angle=None, + # psi_0=None, + # psi_H=None, + # psi_H_bar=None, + thickness=None, + d_spacing=None, + ) + + # Calculate outgoing Photon. + + if is_verbose(): print(">> method_efields_management=1: traditional S3") + outgoing_complex_amplitude_photon = perfect_crystal.calculatePhotonOut(photons_in, + apply_reflectivity=True, + calculation_method=1, + is_thick=soe._is_thick, + use_transfer_matrix=0 + ) + + + # copy data to vectors + E_S = footprint.get_columns([7,8,9]).T + E_P = footprint.get_columns([16, 17, 18]).T + PhiS = footprint.get_column(14) + PhiP = footprint.get_column(15) + vNormal = normal.T + vIn = v1.T + vH = vNormal # todo: set for asymmetry!!! + + if is_verbose(): + print(">>>>> incident E_S, norm: ", E_S[0], vector_modulus(E_S)[0]) + print(">>>>> incident E_P, norm: ", E_P[0], vector_modulus(E_P)[0]) + + # + # STEP 1: get local sigma and pi directions v_S and v_P (uS and uP unitary vectors) + # + + uS, uP = footprint.get_local_directions_sigma_pi(vH, vIn=vIn) + + # + # calculate the electric field in the local coordinate system + # + + # CALL DOT (AS_VEC,AS_TEMP,A11) ! matrix element of rotation + # CALL DOT (AP_VEC,AS_TEMP,A12) ! matrix element of rotation + # CALL DOT (AS_VEC,AP_TEMP,A21) ! matrix element of rotation + # CALL DOT (AP_VEC,AP_TEMP,A22) ! matrix element of rotation + # ! ** Now recompute the ampltitude and phase of the local S- and P- component. + # AS_NEW = SQRT(ABS(A11**2 + A12**2 + & + # 2.0D0*A11*A12*COS(PHS-PHP))) + # AP_NEW = SQRT(ABS(A21**2 + A22**2 + & + # 2.0D0*A21*A22*COS(PHS-PHP))) + # CALL SCALAR (AS_TEMP,AS_NEW,AS_VEC) ! Local As vector + # CALL SCALAR (AP_TEMP,AP_NEW,AP_VEC) ! Local Ap vector + # PHTS = A11*SIN(PHS) + A12*SIN(PHP) + # PHBS = A11*COS(PHS) + A12*COS(PHP) + # PHTP = A21*SIN(PHS) + A22*SIN(PHP) + # PHBP = A21*COS(PHS) + A22*COS(PHP) + # CALL ATAN_2 (PHTS,PHBS,PHS) ! Phase of local As vector + # CALL ATAN_2 (PHTP,PHBP,PHP) ! Phase of local Ap vector + # ! C + # ! C + # CALL DOT (VVIN,VNOR,SIN_VAL) ! sin(graz. ang) + # CALL DOT (Q_OUT,VNOR,SIN_REF) ! sin(graz.ref.ang) + + a11 = vector_dot(E_S, uS) + a12 = vector_dot(E_P, uS) + a21 = vector_dot(E_S, uP) + a22 = vector_dot(E_P, uP) + + if is_verbose(): + print(">>>> Matrix a11: ", a11[0]) + print(">>>> Matrix a12: ", a12[0]) + print(">>>> Matrix a21: ", a21[0]) + print(">>>> Matrix a22: ", a22[0]) + + M2_S = a11 ** 2 + a12 ** 2 + 2 * a11 * a12 * numpy.cos(PhiS - PhiP) + M2_P = a21 ** 2 + a22 ** 2 + 2 * a21 * a22 * numpy.cos(PhiS - PhiP) + + E_local_S = vector_multiply_scalar(uS, numpy.sqrt(M2_S)) + E_local_P = vector_multiply_scalar(uP, numpy.sqrt(M2_P)) + + + if is_verbose(): + print(">>>>> E_local_S, norm: ", E_local_S[0], vector_modulus(E_local_S)[0]) + print(">>>>> E_local_P, norm: ", E_local_P[0], vector_modulus(E_local_P)[0]) + + local_PhiS = numpy.arctan2((a11 * numpy.sin(PhiS) + a12 * numpy.sin(PhiP)) , (a11 * numpy.cos(PhiS) + a12 * numpy.cos(PhiP))) + local_PhiP = numpy.arctan2((a21 * numpy.sin(PhiS) + a22 * numpy.sin(PhiP)) , (a21 * numpy.cos(PhiS) + a22 * numpy.cos(PhiP))) + # END OF STEP 1 + + # + # STEP 2: now apply crystal reflectivity + # + crystal_reflectivity_S = numpy.sqrt(outgoing_complex_amplitude_photon.getIntensityS()) + crystal_reflectivity_P = numpy.sqrt(outgoing_complex_amplitude_photon.getIntensityP()) + crystal_phase_S = outgoing_complex_amplitude_photon.getPhaseS() + crystal_phase_P = outgoing_complex_amplitude_photon.getPhaseP() + + if is_verbose(): + print(">>>> crystal_reflectivity_S: ", crystal_reflectivity_S[0]) + print(">>>> crystal_reflectivity_P: ", crystal_reflectivity_P[0]) + + + E_diffracted_S = numpy.zeros_like(E_local_S) + E_diffracted_P = numpy.zeros_like(E_local_S) + + E_diffracted_S[:, 0] = E_local_S[:, 0] * crystal_reflectivity_S + E_diffracted_S[:, 1] = E_local_S[:, 1] * crystal_reflectivity_S + E_diffracted_S[:, 2] = E_local_S[:, 2] * crystal_reflectivity_S + + E_diffracted_P[:, 0] = E_local_P[:, 0] * crystal_reflectivity_P + E_diffracted_P[:, 1] = E_local_P[:, 1] * crystal_reflectivity_P + E_diffracted_P[:, 2] = E_local_P[:, 2] * crystal_reflectivity_P + + Phi_diffracted_S = local_PhiS + crystal_phase_S + Phi_diffracted_P = local_PhiP + crystal_phase_P + + # + # update footprint with the new values (direction and phases) + # (electric vector are not updated as they will change in STEP 3) + # + + footprint.set_column(14, Phi_diffracted_S) + footprint.set_column(15, Phi_diffracted_P) + + # print("orthogonal INCIDENT: ", footprint.efields_orthogonal(verbose=1)) + + vv = outgoing_complex_amplitude_photon.unitDirectionVector().components() # (3, npoints) + footprint.set_column(4, vv[0]) + footprint.set_column(5, vv[1]) + footprint.set_column(6, vv[2]) + + # print("orthogonal BEFORE: ", footprint.efields_orthogonal(verbose=1)) + + vOut = vv.T # (npoints, 3) + + # + # STEP 3 + # + + # ! Electric vectors are changed to assure orthogonality with the new direction VVOUT + # ! To conserve intensity, the moduli of Es and Ep must not change + # ! AS_VEC and VVOUT are not orthogonal so a projection of S and P coordinates into the + # ! new ones do not work as it may be a component of the electric field along VVOUT + # + # CALL CROSS_M_FLAG (VVOUT,VNOR,AS_TEMP,M_FLAG) ! vector pp. to inc.pl. + # CALL DOT (AS_VEC,AS_VEC,AS2) + # CALL DOT (AP_VEC,AP_VEC,AP2) + # + # IF (M_FLAG.EQ.1) THEN + # IF (AS2.NE.0) THEN + # DO I=1,3 + # AS_TEMP(I) = AS_VEC(I) + # END DO + # ELSE + # DO I=1,3 + # AS_TEMP(I) = AP_VEC(I) + # END DO + # END IF + # END IF + # + # CALL NORM (AS_TEMP,AS_TEMP) ! Local unit As vector perp to vvout + # CALL CROSS (AS_TEMP,VVOUT,AP_TEMP) + # CALL NORM (AP_TEMP,AP_TEMP) ! Local unit Ap vector perp to vvout + # + # do i=1,3 + # as_vec(i) = as_temp(i) * sqrt(as2) + # ap_vec(i) = ap_temp(i) * sqrt(ap2) + # end do + + aS = vector_modulus(E_diffracted_S) + aP = vector_modulus(E_diffracted_P) + + if is_verbose(): + print(">>> Modulus of initial E vectors s, p", vector_modulus(E_S)[0], vector_modulus(E_P)[0]) + print(">>> Modulus of diffracted E vectors s, p", aS[0], aP[0]) + + v_S = vector_cross(vOut, vH) # AS_TEMP + v_Smod = vector_modulus(v_S) + mask = (v_Smod == 0.0) + if mask.any(): + print(">>>>>> FOUND A ZERO!!!!!") + if v_Smod.sum() > 0: + v_S[mask, 0] = E_diffracted_S[mask, 0] + v_S[mask, 1] = E_diffracted_S[mask, 1] + v_S[mask, 2] = E_diffracted_S[mask, 2] + else: + v_S[mask, 0] = E_diffracted_P[mask, 0] + v_S[mask, 1] = E_diffracted_P[mask, 1] + v_S[mask, 2] = E_diffracted_P[mask, 2] + + v_P = vector_cross(v_S, vOut) # AP_TEMP + + uS = vector_norm(v_S) + uP = vector_norm(v_P) + + E_diffracted_S[:, 0] = uS[:, 0] * aS + E_diffracted_S[:, 1] = uS[:, 1] * aS + E_diffracted_S[:, 2] = uS[:, 2] * aS + + E_diffracted_P[:, 0] = uP[:, 0] * aP + E_diffracted_P[:, 1] = uP[:, 1] * aP + E_diffracted_P[:, 2] = uP[:, 2] * aP + + # END STEP 3 + + # + # replace electric fields and phases in footprint. + # Note that reflectivity_S affects the X components, and reflectivity_P the Z ones. + # + footprint.set_column(7, E_diffracted_S[:, 0]) + footprint.set_column(8, E_diffracted_S[:, 1]) + footprint.set_column(9, E_diffracted_S[:, 2]) + footprint.set_column(16, E_diffracted_P[:, 0]) + footprint.set_column(17, E_diffracted_P[:, 1]) + footprint.set_column(18, E_diffracted_P[:, 2]) + + return footprint, normal + +if __name__ == "__main__": + c = S4Crystal( + name="Undefined", + boundary_shape=None, + surface_shape=None, + material="Si", + # diffraction_geometry=DiffractionGeometry.BRAGG, #?? not supposed to be in syned... + miller_index_h=1, + miller_index_k=1, + miller_index_l=1, + asymmetry_angle=0.0, + is_thick=0, + thickness=0.010, + f_central=0, + f_phot_cent=0, + phot_cent=8000.0, + file_refl="", + f_bragg_a=False, + # f_johansson=False, + # r_johansson=1.0, + # f_mosaic=False, + # spread_mos=0.4*numpy.pi/180, + f_ext=0,) + + print(c.info()) + + + ce = S4CrystalElement(optical_element=c) + print(ce.info()) + + ce = S4CrystalElement() + ce.set_optical_element(c) + + print(ce.info()) From 7dac6a08e07b4b987b5687575c8cd916fe950520 Mon Sep 17 00:00:00 2001 From: Xiaojiang YU Date: Wed, 25 Feb 2026 16:35:29 +0800 Subject: [PATCH 4/6] Update for phase shifter calculation --- SU8-SEL.ows | 502 ---------------------------------------- SU8_12890_12940.dat | 204 ---------------- Si(800)_12890_12940.dat | 211 ----------------- 3 files changed, 917 deletions(-) delete mode 100644 SU8-SEL.ows delete mode 100644 SU8_12890_12940.dat delete mode 100644 Si(800)_12890_12940.dat diff --git a/SU8-SEL.ows b/SU8-SEL.ows deleted file mode 100644 index 5f1973b..0000000 --- a/SU8-SEL.ows +++ /dev/null @@ -1,502 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SHADOW4 - - - - - gASVogcAAAAAAAB9lCiMFGFuZ3VsYXJfZGlzdHJpYnV0aW9ulEsCjBthbmd1bGFyX2Rpc3RyaWJ1 -dGlvbl9saW1pdHOUSwCMDWNvaGVyZW50X2JlYW2USwCMG2NvbmVfZXh0ZXJuYWxfaGFsZl9hcGVy -dHVyZZRHP2BiTdLxqfyMG2NvbmVfaW50ZXJuYWxfaGFsZl9hcGVydHVyZZRHP1BiTdLxqfyMBWRl -cHRolEsAjA5lbGxfc2VtaWF4aXNfeJRHP7mZmZmZmZqMDmVsbF9zZW1pYXhpc196lEc/yZmZmZmZ -mowNZ2F1c3Nfc2lnbWFfeJRHPvq9Gqgh8pmMDWdhdXNzX3NpZ21hX3qURz76vRqoIfKZjBZnYXVz -c2lhbl9jZW50cmFsX3ZhbHVllEdAyTkAAAAAAIwQZ2F1c3NpYW5fbWF4aW11bZRHAAAAAAAAAACM -EGdhdXNzaWFuX21pbmltdW2URwAAAAAAAAAAjA5nYXVzc2lhbl9zaWdtYZRHP+GMfigkC3iMFmhv -cml6b250YWxfZGl2X3hfbWludXOURz6gxvegte2NjBVob3Jpem9udGFsX2Rpdl94X3BsdXOURz6g -xvegte2NjBZob3Jpem9udGFsX2xpbV94X21pbnVzlEc+5Pi1iONo8YwVaG9yaXpvbnRhbF9saW1f -eF9wbHVzlEc+5Pi1iONo8YwSaG9yaXpvbnRhbF9zaWdtYV94lEc+qbPj0FIbCIwQaXNfYXV0b21h -dGljX3J1bpSIjApsaW5lX2ludF8xlEcAAAAAAAAAAIwLbGluZV9pbnRfMTCURwAAAAAAAAAAjAps -aW5lX2ludF8ylEcAAAAAAAAAAIwKbGluZV9pbnRfM5RHAAAAAAAAAACMCmxpbmVfaW50XzSURwAA -AAAAAAAAjApsaW5lX2ludF81lEcAAAAAAAAAAIwKbGluZV9pbnRfNpRHAAAAAAAAAACMCmxpbmVf -aW50XzeURwAAAAAAAAAAjApsaW5lX2ludF84lEcAAAAAAAAAAIwKbGluZV9pbnRfOZRHAAAAAAAA -AACMDGxpbmVfdmFsdWVfMZRHQI9AAAAAAACMDWxpbmVfdmFsdWVfMTCURwAAAAAAAAAAjAxsaW5l -X3ZhbHVlXzKUR0CPkAAAAAAAjAxsaW5lX3ZhbHVlXzOURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzSU -RwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzWURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzaURwAAAAAAAAAA -jAxsaW5lX3ZhbHVlXzeURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXziURwAAAAAAAAAAjAxsaW5lX3Zh -bHVlXzmURwAAAAAAAAAAjBttYXhfbnVtYmVyX29mX3JlamVjdGVkX3JheXOUSoCWmACMD251bWJl -cl9vZl9saW5lc5RLAIwObnVtYmVyX29mX3JheXOUSpDQAwCMEm9wdGltaXplX2ZpbGVfbmFtZZSM -DU5PTkVTUEVDSUZJRUSUjA9vcHRpbWl6ZV9zb3VyY2WUSwCMCnBoYXNlX2RpZmaURwAAAAAAAAAA -jBpwaG90b25fZW5lcmd5X2Rpc3RyaWJ1dGlvbpRLBIwTcG9sYXJpemF0aW9uX2RlZ3JlZZRHP/AA -AAAAAACMC3JlY3RfaGVpZ2h0lEc/OQjlgc94eYwKcmVjdF93aWR0aJRHAAAAAAAAAACME3NhdmVk -V2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwK -UUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAABWQAAAUkAAAaAAAAEBAAAAVkAAAFJAAAGgAAABAQAAAAA -AAAAAAeAAAABWQAAAUkAAAaAAAAEBJSFlIeUUpSMBHNlZWSUShOeVgCMB3NpZ21hX3mURz9QYk3S -8an8jBFzaW5nbGVfbGluZV92YWx1ZZRHQI9AAAAAAACMDnNvdXJjZV9kZXB0aF95lEc/YGJN0vGp -/IwMc3BhdGlhbF90eXBllEsDjA91bmlmb3JtX21heGltdW2UR0CPkAAAAAAAjA91bmlmb3JtX21p -bmltdW2UR0CPQAAAAAAAjAV1bml0c5RLAIwRdXNlcl9kZWZpbmVkX2ZpbGWUjBNlbmVyZ3lfc3Bl -Y3RydW0uZGF0lIwUdXNlcl9kZWZpbmVkX21heGltdW2URwAAAAAAAAAAjBR1c2VyX2RlZmluZWRf -bWluaW11bZRHAAAAAAAAAACMHHVzZXJfZGVmaW5lZF9yZWZpbmluZ19mYWN0b3KUSwWMHXVzZXJf -ZGVmaW5lZF9zcGVjdHJ1bV9iaW5uaW5nlE0QJ4wUdmVydGljYWxfZGl2X3pfbWludXOURz7U+LWI -42jxjBN2ZXJ0aWNhbF9kaXZfel9wbHVzlEc+1Pi1iONo8YwUdmVydGljYWxfbGltX3pfbWludXOU -Rz7k+LWI42jxjBN2ZXJ0aWNhbF9saW1fel9wbHVzlEc+5Pi1iONo8YwQdmVydGljYWxfc2lnbWFf -epRHPqmz49BSGwiMCXZpZXdfdHlwZZRLAHUu - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwSMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWUR8BGgAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHEAAABAgAABu0AAAPk -AAABxQAAASgAAAbsAAAD4wAAAAAAAAAAB4AAAAHFAAABKAAABuwAAAPjlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwGMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAI+AAAA9AAAB2UAAAOv -AAACPgAAAPQAAAdlAAADrwAAAAAAAAAAB4AAAAI+AAAA9AAAB2UAAAOvlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz -X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l -c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj -YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L -AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG -lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm -aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA -AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv -bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf -N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ -lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h -dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj -dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL -ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl -cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t -aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy -ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By -b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp -b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k -aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS -lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu -Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf -dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz -X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ -bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa -b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf -bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA -AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f -eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu -dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu -dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p -ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh -dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu -Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI -4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl -lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHmAAAAjAAABw8AAANu -AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl -X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 -cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf -c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf -bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh -ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h -bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf -ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM -DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== - - gASVHQIAAAAAAAB9lCiMDGF1dG9fZXhlY3V0ZZSJjBJjdXJyZW50U2NyaXB0SW5kZXiUSwCMCWZv -bnRfc2l6ZZRLBIwRbGlicmFyeUxpc3RTb3VyY2WUXZSMJG9hc3lzLndpZGdldHMudG9vbHMub3df -cHl0aG9uX3NjcmlwdJSMBlNjcmlwdJSTlCmBlH2UKIwEbmFtZZSMDmdldFM0SW50ZW5zaXR5lIwG -c2NyaXB0lIwwcHJpbnQoZid7aW5fb2JqZWN0XzEuYmVhbS5nZXRfaW50ZW5zaXR5KCk6LjZnfScp -lIwFZmxhZ3OUSwCMCGZpbGVuYW1llE51YmGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5f -dW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAAA -0AAAAKkAAAatAAAD9gAAANAAAACpAAAGrQAAA/YAAAAAAAAAAAeAAAAA0AAAAKkAAAatAAAD9pSF -lIeUUpSMDXNwbGl0dGVyU3RhdGWUjH9iJ1x4MDBceDAwXHgwMFx4ZmZceDAwXHgwMFx4MDBceDAx -XHgwMFx4MDBceDAwXHgwMlx4MDBceDAwXHgwMVx4YzRceDAwXHgwMFx4MDBceGQ1XHgwMVx4ZmZc -eGZmXHhmZlx4ZmZceDAxXHgwMFx4MDBceDAwXHgwMlx4MDAnlHUu - - gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj -aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA -AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CjiAAAAAAAjBNoYXNfZmluaXRl -X2RpYW1ldGVylEsAjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQI6NmZmZmZqME2luY2lkZW5jZV9h -bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy -dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI -bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLA4wUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y -aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA -AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQJ0Q -AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t -cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u -X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM -UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACNAAAAQ0AAAddAAAD7wAAAjUA -AAEzAAAHXAAAA+4AAAAAAAAAAAeAAAACNQAAATMAAAdcAAAD7pSFlIeUUpSMFXNvdXJjZV9wbGFu -ZV9kaXN0YW5jZZRHQGmAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu - - gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj -aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA -AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl -X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQClD6lIY0YiME2luY2lkZW5jZV9h -bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy -dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI -bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y -aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA -AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A -AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t -cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u -X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM -UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A -AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu -ZV9kaXN0YW5jZZRHAAAAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu - - gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj -aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA -AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl -X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQAAAAAAAAACME2luY2lkZW5jZV9h -bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy -dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI -bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y -aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA -AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A -AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t -cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u -X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM -UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A -AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu -ZV9kaXN0YW5jZZRHQClD6lIY0YiMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu - - - diff --git a/SU8_12890_12940.dat b/SU8_12890_12940.dat deleted file mode 100644 index b1dee64..0000000 --- a/SU8_12890_12940.dat +++ /dev/null @@ -1,204 +0,0 @@ - 6.53230489313e+08 6.55764354671e+08 2.53386535808e+04 6.18000000000e-01 -101 -3.053665e-06 -3.053428e-06 -3.053191e-06 -3.052953e-06 -3.052716e-06 -3.052479e-06 -3.052241e-06 -3.052004e-06 -3.051767e-06 -3.051530e-06 -3.051292e-06 -3.051055e-06 -3.050818e-06 -3.050581e-06 -3.050344e-06 -3.050107e-06 -3.049870e-06 -3.049633e-06 -3.049396e-06 -3.049159e-06 -3.048922e-06 -3.048685e-06 -3.048449e-06 -3.048212e-06 -3.047975e-06 -3.047738e-06 -3.047501e-06 -3.047265e-06 -3.047028e-06 -3.046791e-06 -3.046555e-06 -3.046318e-06 -3.046082e-06 -3.045845e-06 -3.045609e-06 -3.045372e-06 -3.045136e-06 -3.044899e-06 -3.044663e-06 -3.044426e-06 -3.044190e-06 -3.043954e-06 -3.043718e-06 -3.043481e-06 -3.043245e-06 -3.043009e-06 -3.042773e-06 -3.042536e-06 -3.042300e-06 -3.042064e-06 -3.041828e-06 -3.041592e-06 -3.041356e-06 -3.041120e-06 -3.040884e-06 -3.040648e-06 -3.040412e-06 -3.040176e-06 -3.039941e-06 -3.039705e-06 -3.039469e-06 -3.039233e-06 -3.038997e-06 -3.038762e-06 -3.038526e-06 -3.038290e-06 -3.038055e-06 -3.037819e-06 -3.037584e-06 -3.037348e-06 -3.037113e-06 -3.036877e-06 -3.036642e-06 -3.036406e-06 -3.036171e-06 -3.035935e-06 -3.035700e-06 -3.035465e-06 -3.035229e-06 -3.034994e-06 -3.034759e-06 -3.034524e-06 -3.034288e-06 -3.034053e-06 -3.033818e-06 -3.033583e-06 -3.033348e-06 -3.033113e-06 -3.032878e-06 -3.032643e-06 -3.032408e-06 -3.032173e-06 -3.031938e-06 -3.031703e-06 -3.031468e-06 -3.031233e-06 -3.030999e-06 -3.030764e-06 -3.030529e-06 -3.030294e-06 -3.030060e-06 -4.972172e-09 -4.971432e-09 -4.970693e-09 -4.969953e-09 -4.969214e-09 -4.968475e-09 -4.967736e-09 -4.966997e-09 -4.966258e-09 -4.965520e-09 -4.964781e-09 -4.964043e-09 -4.963305e-09 -4.962567e-09 -4.961829e-09 -4.961091e-09 -4.960354e-09 -4.959616e-09 -4.958879e-09 -4.958142e-09 -4.957405e-09 -4.956668e-09 -4.955931e-09 -4.955195e-09 -4.954458e-09 -4.953722e-09 -4.952986e-09 -4.952250e-09 -4.951514e-09 -4.950779e-09 -4.950043e-09 -4.949308e-09 -4.948572e-09 -4.947837e-09 -4.947102e-09 -4.946367e-09 -4.945633e-09 -4.944898e-09 -4.944164e-09 -4.943429e-09 -4.942695e-09 -4.941961e-09 -4.941227e-09 -4.940494e-09 -4.939760e-09 -4.939027e-09 -4.938293e-09 -4.937560e-09 -4.936827e-09 -4.936094e-09 -4.935361e-09 -4.934629e-09 -4.933896e-09 -4.933164e-09 -4.932432e-09 -4.931700e-09 -4.930968e-09 -4.930236e-09 -4.929505e-09 -4.928773e-09 -4.928042e-09 -4.927311e-09 -4.926580e-09 -4.925849e-09 -4.925118e-09 -4.924387e-09 -4.923657e-09 -4.922927e-09 -4.922196e-09 -4.921466e-09 -4.920736e-09 -4.920007e-09 -4.919277e-09 -4.918548e-09 -4.917818e-09 -4.917089e-09 -4.916360e-09 -4.915631e-09 -4.914902e-09 -4.914174e-09 -4.913445e-09 -4.912717e-09 -4.911989e-09 -4.911260e-09 -4.910533e-09 -4.909805e-09 -4.909077e-09 -4.908350e-09 -4.907622e-09 -4.906895e-09 -4.906168e-09 -4.905441e-09 -4.904714e-09 -4.903987e-09 -4.903261e-09 -4.902534e-09 -4.901808e-09 -4.901082e-09 -4.900356e-09 -4.899630e-09 -4.898905e-09 diff --git a/Si(800)_12890_12940.dat b/Si(800)_12890_12940.dat deleted file mode 100644 index a8d625e..0000000 --- a/Si(800)_12890_12940.dat +++ /dev/null @@ -1,211 +0,0 @@ -0 1.759399e+09 6.788375e-09 -14 14 1.000000e+00 -( 4.00000000000e+00, -1.95943487864e-15 ) -( 4.00000000000e+00, 1.95943487864e-15 ) -( 4.00000000000e+00, -3.91886975727e-15 ) -( 4.00000000000e+00, 3.91886975727e-15 ) -1.309004e+01 -1.683182e+01 6.433024e+00 -1.309004e+01 -1.683182e+01 6.433024e+00 -101 - 1.28900000000e+04 1.36676072387e-01 1.33673242769e-01 - 1.36676072387e-01 1.33673242769e-01 - 1.28905000000e+04 1.36668041677e-01 1.33662824915e-01 - 1.36668041677e-01 1.33662824915e-01 - 1.28910000000e+04 1.36660011619e-01 1.33652408348e-01 - 1.36660011619e-01 1.33652408348e-01 - 1.28915000000e+04 1.36651982214e-01 1.33641993069e-01 - 1.36651982214e-01 1.33641993069e-01 - 1.28920000000e+04 1.36643953460e-01 1.33631579076e-01 - 1.36643953460e-01 1.33631579076e-01 - 1.28925000000e+04 1.36635925358e-01 1.33621166370e-01 - 1.36635925358e-01 1.33621166370e-01 - 1.28930000000e+04 1.36627897909e-01 1.33610754950e-01 - 1.36627897909e-01 1.33610754950e-01 - 1.28935000000e+04 1.36619871111e-01 1.33600344817e-01 - 1.36619871111e-01 1.33600344817e-01 - 1.28940000000e+04 1.36611844965e-01 1.33589935969e-01 - 1.36611844965e-01 1.33589935969e-01 - 1.28945000000e+04 1.36603819470e-01 1.33579528408e-01 - 1.36603819470e-01 1.33579528408e-01 - 1.28950000000e+04 1.36595794628e-01 1.33569122132e-01 - 1.36595794628e-01 1.33569122132e-01 - 1.28955000000e+04 1.36587770437e-01 1.33558717143e-01 - 1.36587770437e-01 1.33558717143e-01 - 1.28960000000e+04 1.36579746897e-01 1.33548313438e-01 - 1.36579746897e-01 1.33548313438e-01 - 1.28965000000e+04 1.36571724009e-01 1.33537911019e-01 - 1.36571724009e-01 1.33537911019e-01 - 1.28970000000e+04 1.36563701772e-01 1.33527509885e-01 - 1.36563701772e-01 1.33527509885e-01 - 1.28975000000e+04 1.36555680187e-01 1.33517110035e-01 - 1.36555680187e-01 1.33517110035e-01 - 1.28980000000e+04 1.36547659253e-01 1.33506711471e-01 - 1.36547659253e-01 1.33506711471e-01 - 1.28985000000e+04 1.36539638970e-01 1.33496314191e-01 - 1.36539638970e-01 1.33496314191e-01 - 1.28990000000e+04 1.36531619339e-01 1.33485918195e-01 - 1.36531619339e-01 1.33485918195e-01 - 1.28995000000e+04 1.36523600359e-01 1.33475523484e-01 - 1.36523600359e-01 1.33475523484e-01 - 1.29000000000e+04 1.36515582029e-01 1.33465130056e-01 - 1.36515582029e-01 1.33465130056e-01 - 1.29005000000e+04 1.36507564351e-01 1.33454737912e-01 - 1.36507564351e-01 1.33454737912e-01 - 1.29010000000e+04 1.36499547324e-01 1.33444347052e-01 - 1.36499547324e-01 1.33444347052e-01 - 1.29015000000e+04 1.36491530947e-01 1.33433957476e-01 - 1.36491530947e-01 1.33433957476e-01 - 1.29020000000e+04 1.36483515221e-01 1.33423569183e-01 - 1.36483515221e-01 1.33423569183e-01 - 1.29025000000e+04 1.36475500147e-01 1.33413182173e-01 - 1.36475500147e-01 1.33413182173e-01 - 1.29030000000e+04 1.36467485722e-01 1.33402796445e-01 - 1.36467485722e-01 1.33402796445e-01 - 1.29035000000e+04 1.36459471949e-01 1.33392412001e-01 - 1.36459471949e-01 1.33392412001e-01 - 1.29040000000e+04 1.36451458826e-01 1.33382028839e-01 - 1.36451458826e-01 1.33382028839e-01 - 1.29045000000e+04 1.36443446353e-01 1.33371646960e-01 - 1.36443446353e-01 1.33371646960e-01 - 1.29050000000e+04 1.36435434531e-01 1.33361266363e-01 - 1.36435434531e-01 1.33361266363e-01 - 1.29055000000e+04 1.36427423360e-01 1.33350887047e-01 - 1.36427423360e-01 1.33350887047e-01 - 1.29060000000e+04 1.36419412838e-01 1.33340509014e-01 - 1.36419412838e-01 1.33340509014e-01 - 1.29065000000e+04 1.36411402967e-01 1.33330132263e-01 - 1.36411402967e-01 1.33330132263e-01 - 1.29070000000e+04 1.36403393747e-01 1.33319756793e-01 - 1.36403393747e-01 1.33319756793e-01 - 1.29075000000e+04 1.36395385176e-01 1.33309382604e-01 - 1.36395385176e-01 1.33309382604e-01 - 1.29080000000e+04 1.36387377256e-01 1.33299009696e-01 - 1.36387377256e-01 1.33299009696e-01 - 1.29085000000e+04 1.36379369985e-01 1.33288638070e-01 - 1.36379369985e-01 1.33288638070e-01 - 1.29090000000e+04 1.36371363365e-01 1.33278267724e-01 - 1.36371363365e-01 1.33278267724e-01 - 1.29095000000e+04 1.36363357394e-01 1.33267898659e-01 - 1.36363357394e-01 1.33267898659e-01 - 1.29100000000e+04 1.36355352073e-01 1.33257530874e-01 - 1.36355352073e-01 1.33257530874e-01 - 1.29105000000e+04 1.36347347402e-01 1.33247164370e-01 - 1.36347347402e-01 1.33247164370e-01 - 1.29110000000e+04 1.36339343381e-01 1.33236799146e-01 - 1.36339343381e-01 1.33236799146e-01 - 1.29115000000e+04 1.36331340009e-01 1.33226435201e-01 - 1.36331340009e-01 1.33226435201e-01 - 1.29120000000e+04 1.36323337287e-01 1.33216072537e-01 - 1.36323337287e-01 1.33216072537e-01 - 1.29125000000e+04 1.36315335215e-01 1.33205711152e-01 - 1.36315335215e-01 1.33205711152e-01 - 1.29130000000e+04 1.36307333792e-01 1.33195351046e-01 - 1.36307333792e-01 1.33195351046e-01 - 1.29135000000e+04 1.36299333019e-01 1.33184992220e-01 - 1.36299333019e-01 1.33184992220e-01 - 1.29140000000e+04 1.36291332895e-01 1.33174634672e-01 - 1.36291332895e-01 1.33174634672e-01 - 1.29145000000e+04 1.36283333420e-01 1.33164278404e-01 - 1.36283333420e-01 1.33164278404e-01 - 1.29150000000e+04 1.36275334594e-01 1.33153923414e-01 - 1.36275334594e-01 1.33153923414e-01 - 1.29155000000e+04 1.36267336418e-01 1.33143569702e-01 - 1.36267336418e-01 1.33143569702e-01 - 1.29160000000e+04 1.36259338891e-01 1.33133217269e-01 - 1.36259338891e-01 1.33133217269e-01 - 1.29165000000e+04 1.36251342012e-01 1.33122866114e-01 - 1.36251342012e-01 1.33122866114e-01 - 1.29170000000e+04 1.36243345783e-01 1.33112516237e-01 - 1.36243345783e-01 1.33112516237e-01 - 1.29175000000e+04 1.36235350203e-01 1.33102167638e-01 - 1.36235350203e-01 1.33102167638e-01 - 1.29180000000e+04 1.36227355272e-01 1.33091820317e-01 - 1.36227355272e-01 1.33091820317e-01 - 1.29185000000e+04 1.36219360989e-01 1.33081474273e-01 - 1.36219360989e-01 1.33081474273e-01 - 1.29190000000e+04 1.36211367355e-01 1.33071129506e-01 - 1.36211367355e-01 1.33071129506e-01 - 1.29195000000e+04 1.36203374370e-01 1.33060786016e-01 - 1.36203374370e-01 1.33060786016e-01 - 1.29200000000e+04 1.36195382034e-01 1.33050443803e-01 - 1.36195382034e-01 1.33050443803e-01 - 1.29205000000e+04 1.36187390346e-01 1.33040102867e-01 - 1.36187390346e-01 1.33040102867e-01 - 1.29210000000e+04 1.36179399307e-01 1.33029763208e-01 - 1.36179399307e-01 1.33029763208e-01 - 1.29215000000e+04 1.36171408916e-01 1.33019424824e-01 - 1.36171408916e-01 1.33019424824e-01 - 1.29220000000e+04 1.36163419173e-01 1.33009087717e-01 - 1.36163419173e-01 1.33009087717e-01 - 1.29225000000e+04 1.36155430079e-01 1.32998751886e-01 - 1.36155430079e-01 1.32998751886e-01 - 1.29230000000e+04 1.36147441633e-01 1.32988417331e-01 - 1.36147441633e-01 1.32988417331e-01 - 1.29235000000e+04 1.36139453836e-01 1.32978084052e-01 - 1.36139453836e-01 1.32978084052e-01 - 1.29240000000e+04 1.36131466686e-01 1.32967752048e-01 - 1.36131466686e-01 1.32967752048e-01 - 1.29245000000e+04 1.36123480185e-01 1.32957421319e-01 - 1.36123480185e-01 1.32957421319e-01 - 1.29250000000e+04 1.36115494331e-01 1.32947091865e-01 - 1.36115494331e-01 1.32947091865e-01 - 1.29255000000e+04 1.36107509126e-01 1.32936763687e-01 - 1.36107509126e-01 1.32936763687e-01 - 1.29260000000e+04 1.36099524568e-01 1.32926436783e-01 - 1.36099524568e-01 1.32926436783e-01 - 1.29265000000e+04 1.36091540659e-01 1.32916111154e-01 - 1.36091540659e-01 1.32916111154e-01 - 1.29270000000e+04 1.36083557397e-01 1.32905786799e-01 - 1.36083557397e-01 1.32905786799e-01 - 1.29275000000e+04 1.36075574783e-01 1.32895463718e-01 - 1.36075574783e-01 1.32895463718e-01 - 1.29280000000e+04 1.36067592816e-01 1.32885141912e-01 - 1.36067592816e-01 1.32885141912e-01 - 1.29285000000e+04 1.36059611498e-01 1.32874821379e-01 - 1.36059611498e-01 1.32874821379e-01 - 1.29290000000e+04 1.36051630826e-01 1.32864502120e-01 - 1.36051630826e-01 1.32864502120e-01 - 1.29295000000e+04 1.36043650802e-01 1.32854184135e-01 - 1.36043650802e-01 1.32854184135e-01 - 1.29300000000e+04 1.36035671426e-01 1.32843867423e-01 - 1.36035671426e-01 1.32843867423e-01 - 1.29305000000e+04 1.36027692697e-01 1.32833551984e-01 - 1.36027692697e-01 1.32833551984e-01 - 1.29310000000e+04 1.36019714615e-01 1.32823237818e-01 - 1.36019714615e-01 1.32823237818e-01 - 1.29315000000e+04 1.36011737181e-01 1.32812924925e-01 - 1.36011737181e-01 1.32812924925e-01 - 1.29320000000e+04 1.36003760394e-01 1.32802613304e-01 - 1.36003760394e-01 1.32802613304e-01 - 1.29325000000e+04 1.35995784254e-01 1.32792302956e-01 - 1.35995784254e-01 1.32792302956e-01 - 1.29330000000e+04 1.35987808760e-01 1.32781993881e-01 - 1.35987808760e-01 1.32781993881e-01 - 1.29335000000e+04 1.35979833914e-01 1.32771686077e-01 - 1.35979833914e-01 1.32771686077e-01 - 1.29340000000e+04 1.35971859715e-01 1.32761379546e-01 - 1.35971859715e-01 1.32761379546e-01 - 1.29345000000e+04 1.35963886163e-01 1.32751074286e-01 - 1.35963886163e-01 1.32751074286e-01 - 1.29350000000e+04 1.35955913258e-01 1.32740770297e-01 - 1.35955913258e-01 1.32740770297e-01 - 1.29355000000e+04 1.35947940999e-01 1.32730467580e-01 - 1.35947940999e-01 1.32730467580e-01 - 1.29360000000e+04 1.35939969387e-01 1.32720166135e-01 - 1.35939969387e-01 1.32720166135e-01 - 1.29365000000e+04 1.35931998422e-01 1.32709865960e-01 - 1.35931998422e-01 1.32709865960e-01 - 1.29370000000e+04 1.35924028103e-01 1.32699567056e-01 - 1.35924028103e-01 1.32699567056e-01 - 1.29375000000e+04 1.35916058431e-01 1.32689269423e-01 - 1.35916058431e-01 1.32689269423e-01 - 1.29380000000e+04 1.35908089405e-01 1.32678973061e-01 - 1.35908089405e-01 1.32678973061e-01 - 1.29385000000e+04 1.35900121025e-01 1.32668677968e-01 - 1.35900121025e-01 1.32668677968e-01 - 1.29390000000e+04 1.35892153292e-01 1.32658384146e-01 - 1.35892153292e-01 1.32658384146e-01 - 1.29395000000e+04 1.35884186206e-01 1.32648091594e-01 - 1.35884186206e-01 1.32648091594e-01 - 1.29400000000e+04 1.35876219765e-01 1.32637800312e-01 - 1.35876219765e-01 1.32637800312e-01 From 8208a3ade240d1156d2099e96d165e053fa65bb7 Mon Sep 17 00:00:00 2001 From: Xiaojiang YU Date: Wed, 25 Feb 2026 17:21:41 +0800 Subject: [PATCH 5/6] Revert "Update for phase shifter calculation" This reverts commit 7dac6a08e07b4b987b5687575c8cd916fe950520. --- SU8-SEL.ows | 502 ++++++++++++++++++++++++++++++++++++++++ SU8_12890_12940.dat | 204 ++++++++++++++++ Si(800)_12890_12940.dat | 211 +++++++++++++++++ 3 files changed, 917 insertions(+) create mode 100644 SU8-SEL.ows create mode 100644 SU8_12890_12940.dat create mode 100644 Si(800)_12890_12940.dat diff --git a/SU8-SEL.ows b/SU8-SEL.ows new file mode 100644 index 0000000..5f1973b --- /dev/null +++ b/SU8-SEL.ows @@ -0,0 +1,502 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SHADOW4 + + + + + gASVogcAAAAAAAB9lCiMFGFuZ3VsYXJfZGlzdHJpYnV0aW9ulEsCjBthbmd1bGFyX2Rpc3RyaWJ1 +dGlvbl9saW1pdHOUSwCMDWNvaGVyZW50X2JlYW2USwCMG2NvbmVfZXh0ZXJuYWxfaGFsZl9hcGVy +dHVyZZRHP2BiTdLxqfyMG2NvbmVfaW50ZXJuYWxfaGFsZl9hcGVydHVyZZRHP1BiTdLxqfyMBWRl +cHRolEsAjA5lbGxfc2VtaWF4aXNfeJRHP7mZmZmZmZqMDmVsbF9zZW1pYXhpc196lEc/yZmZmZmZ +mowNZ2F1c3Nfc2lnbWFfeJRHPvq9Gqgh8pmMDWdhdXNzX3NpZ21hX3qURz76vRqoIfKZjBZnYXVz +c2lhbl9jZW50cmFsX3ZhbHVllEdAyTkAAAAAAIwQZ2F1c3NpYW5fbWF4aW11bZRHAAAAAAAAAACM +EGdhdXNzaWFuX21pbmltdW2URwAAAAAAAAAAjA5nYXVzc2lhbl9zaWdtYZRHP+GMfigkC3iMFmhv +cml6b250YWxfZGl2X3hfbWludXOURz6gxvegte2NjBVob3Jpem9udGFsX2Rpdl94X3BsdXOURz6g +xvegte2NjBZob3Jpem9udGFsX2xpbV94X21pbnVzlEc+5Pi1iONo8YwVaG9yaXpvbnRhbF9saW1f +eF9wbHVzlEc+5Pi1iONo8YwSaG9yaXpvbnRhbF9zaWdtYV94lEc+qbPj0FIbCIwQaXNfYXV0b21h +dGljX3J1bpSIjApsaW5lX2ludF8xlEcAAAAAAAAAAIwLbGluZV9pbnRfMTCURwAAAAAAAAAAjAps +aW5lX2ludF8ylEcAAAAAAAAAAIwKbGluZV9pbnRfM5RHAAAAAAAAAACMCmxpbmVfaW50XzSURwAA +AAAAAAAAjApsaW5lX2ludF81lEcAAAAAAAAAAIwKbGluZV9pbnRfNpRHAAAAAAAAAACMCmxpbmVf +aW50XzeURwAAAAAAAAAAjApsaW5lX2ludF84lEcAAAAAAAAAAIwKbGluZV9pbnRfOZRHAAAAAAAA +AACMDGxpbmVfdmFsdWVfMZRHQI9AAAAAAACMDWxpbmVfdmFsdWVfMTCURwAAAAAAAAAAjAxsaW5l +X3ZhbHVlXzKUR0CPkAAAAAAAjAxsaW5lX3ZhbHVlXzOURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzSU +RwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzWURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXzaURwAAAAAAAAAA +jAxsaW5lX3ZhbHVlXzeURwAAAAAAAAAAjAxsaW5lX3ZhbHVlXziURwAAAAAAAAAAjAxsaW5lX3Zh +bHVlXzmURwAAAAAAAAAAjBttYXhfbnVtYmVyX29mX3JlamVjdGVkX3JheXOUSoCWmACMD251bWJl +cl9vZl9saW5lc5RLAIwObnVtYmVyX29mX3JheXOUSpDQAwCMEm9wdGltaXplX2ZpbGVfbmFtZZSM +DU5PTkVTUEVDSUZJRUSUjA9vcHRpbWl6ZV9zb3VyY2WUSwCMCnBoYXNlX2RpZmaURwAAAAAAAAAA +jBpwaG90b25fZW5lcmd5X2Rpc3RyaWJ1dGlvbpRLBIwTcG9sYXJpemF0aW9uX2RlZ3JlZZRHP/AA +AAAAAACMC3JlY3RfaGVpZ2h0lEc/OQjlgc94eYwKcmVjdF93aWR0aJRHAAAAAAAAAACME3NhdmVk +V2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwK +UUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAABWQAAAUkAAAaAAAAEBAAAAVkAAAFJAAAGgAAABAQAAAAA +AAAAAAeAAAABWQAAAUkAAAaAAAAEBJSFlIeUUpSMBHNlZWSUShOeVgCMB3NpZ21hX3mURz9QYk3S +8an8jBFzaW5nbGVfbGluZV92YWx1ZZRHQI9AAAAAAACMDnNvdXJjZV9kZXB0aF95lEc/YGJN0vGp +/IwMc3BhdGlhbF90eXBllEsDjA91bmlmb3JtX21heGltdW2UR0CPkAAAAAAAjA91bmlmb3JtX21p +bmltdW2UR0CPQAAAAAAAjAV1bml0c5RLAIwRdXNlcl9kZWZpbmVkX2ZpbGWUjBNlbmVyZ3lfc3Bl +Y3RydW0uZGF0lIwUdXNlcl9kZWZpbmVkX21heGltdW2URwAAAAAAAAAAjBR1c2VyX2RlZmluZWRf +bWluaW11bZRHAAAAAAAAAACMHHVzZXJfZGVmaW5lZF9yZWZpbmluZ19mYWN0b3KUSwWMHXVzZXJf +ZGVmaW5lZF9zcGVjdHJ1bV9iaW5uaW5nlE0QJ4wUdmVydGljYWxfZGl2X3pfbWludXOURz7U+LWI +42jxjBN2ZXJ0aWNhbF9kaXZfel9wbHVzlEc+1Pi1iONo8YwUdmVydGljYWxfbGltX3pfbWludXOU +Rz7k+LWI42jxjBN2ZXJ0aWNhbF9saW1fel9wbHVzlEc+5Pi1iONo8YwQdmVydGljYWxfc2lnbWFf +epRHPqmz49BSGwiMCXZpZXdfdHlwZZRLAHUu + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwSMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWUR8BGgAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHEAAABAgAABu0AAAPk +AAABxQAAASgAAAbsAAAD4wAAAAAAAAAAB4AAAAHFAAABKAAABuwAAAPjlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwGMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAI+AAAA9AAAB2UAAAOv +AAACPgAAAPQAAAdlAAADrwAAAAAAAAAAB4AAAAI+AAAA9AAAB2UAAAOvlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEc/dyvLX+VC5YwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHnAAAAsgAABw4AAANt +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASV4wkAAAAAAAB9lCiMF2FuZ2xlX29mX21hamF4X2FuZF9wb2xllEc/8AAAAAAAAIwRYW5nbGVz +X3Jlc3BlY3RfdG+USwCMDmFzeW1tZXRyaWNfY3V0lEsAjBdiZWxvd19vbnRvX2JyYWdnX3BsYW5l +c5RK/////4wTY29uaWNfY29lZmZpY2llbnRfMJSMFW51bXB5LmNvcmUubXVsdGlhcnJheZSMBnNj +YWxhcpSTlIwFbnVtcHmUjAVkdHlwZZSTlIwCZjiUiYiHlFKUKEsDjAE8lE5OTkr/////Sv////9L +AHSUYkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfMZRoCGgOQwgAAAAAAAAAAJSG +lFKUjBNjb25pY19jb2VmZmljaWVudF8ylGgIaA5DCAAAAAAAAAAAlIaUUpSME2NvbmljX2NvZWZm +aWNpZW50XzOUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRfNJRoCGgOQwgA +AAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF81lGgIaA5DCAAAAAAAAAAAlIaUUpSME2Nv +bmljX2NvZWZmaWNpZW50XzaUaAhoDkMIAAAAAAAAAACUhpRSlIwTY29uaWNfY29lZmZpY2llbnRf +N5RoCGgOQwgAAAAAAAAAAJSGlFKUjBNjb25pY19jb2VmZmljaWVudF84lGgIaA5DCAAAAAAAAPC/ +lIaUUpSME2NvbmljX2NvZWZmaWNpZW50XzmUaAhoDkMIAAAAAAAAAACUhpRSlIwUY3J5c3RhbF9h +dXRvX3NldHRpbmeUSwGMFGN5bGluZGVyX29yaWVudGF0aW9ulEsAjBdkaWZmcmFjdGlvbl9jYWxj +dWxhdGlvbpRLAowLZGltX3hfbWludXOURz/wAAAAAAAAjApkaW1feF9wbHVzlEc/8AAAAAAAAIwL +ZGltX3lfbWludXOURz/wAAAAAAAAjApkaW1feV9wbHVzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBl +cmJvbGFfc2VtaV9tYWpvcl9heGlzlEc/8AAAAAAAAIwhZWxsaXBzZV9oeXBlcmJvbGFfc2VtaV9t +aW5vcl9heGlzlEc/8AAAAAAAAIwXZmlsZV9jcnlzdGFsX3BhcmFtZXRlcnOUjBdTaSg4MDApXzEy +ODkwXzEyOTQwLmRhdJSMGGZpbGVfZGlmZnJhY3Rpb25fcHJvZmlsZZSMF2RpZmZyYWN0aW9uX3By +b2ZpbGUuZGF0lIwcZm9jaWlfYW5kX2NvbnRpbnVhdGlvbl9wbGFuZZRLAIwOZm9jdXNfbG9jYXRp +b26USwCMFGltYWdlX3BsYW5lX2Rpc3RhbmNllEdACAAAAAAAAIwZaW1hZ2Vfc2lkZV9mb2NhbF9k +aXN0YW5jZZRHAAAAAAAAAACME2luY2lkZW5jZV9hbmdsZV9kZWeUaAhoDkMIAd4CCYp/RkCUhpRS +lIwUaW5jaWRlbmNlX2FuZ2xlX21yYWSUaAhoDkMI4chNHrCLiECUhpRSlIwhaW5jaWRlbmNlX2Fu +Z2xlX3Jlc3BlY3RfdG9fbm9ybWFslEcAAAAAAAAAAIwmaW5jaWRlbmNlX2FuZ2xlX3Jlc3BlY3Rf +dG9fbm9ybWFsX3R5cGWUSwCMEGlzX2F1dG9tYXRpY19ydW6UiIwLaXNfY3lsaW5kZXKUSwGMC2lz +X2luZmluaXRllEsBjAhpc190aGlja5RLAYwZbWV0aG9kX2VmaWVsZHNfbWFuYWdlbWVudJRLAIwQ +bW9kaWZpZWRfc3VyZmFjZZRLAIwTbXNfZGVmZWN0X2ZpbGVfbmFtZZSMCzxub25lPi5oZGY1lIwa +b2JqZWN0X3NpZGVfZm9jYWxfZGlzdGFuY2WURwAAAAAAAAAAjAtvZV9tb3ZlbWVudJRLAIwUb2Vf +bW92ZW1lbnRfb2Zmc2V0X3iURwAAAAAAAAAAjBRvZV9tb3ZlbWVudF9vZmZzZXRfeZRHAAAAAAAA +AACMFG9lX21vdmVtZW50X29mZnNldF96lEcAAAAAAAAAAIwWb2VfbW92ZW1lbnRfcm90YXRpb25f +eJRHAAAAAAAAAACMFm9lX21vdmVtZW50X3JvdGF0aW9uX3mURwAAAAAAAAAAjBZvZV9tb3ZlbWVu +dF9yb3RhdGlvbl96lEcAAAAAAAAAAIwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwKMH29lX29yaWVu +dGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjAhvZV9zaGFwZZRLAIwUcGFyYWJvbG9p +ZF9wYXJhbWV0ZXKURz/wAAAAAAAAjA1waG90b25fZW5lcmd5lEdAyTkAAAAAAIwRcGhvdG9uX3dh +dmVsZW5ndGiURz/wAAAAAAAAjAxwbGFuZXNfYW5nbGWURwAAAAAAAAAAjBRyZWZsZWN0aW9uX2Fu +Z2xlX2RlZ5RoCGgOQwgB3gIJin9GQJSGlFKUjBVyZWZsZWN0aW9uX2FuZ2xlX21yYWSUaAhoDkMI +4chNHrCLiECUhpRSlIwTc2F2ZWRXaWRnZXRHZW9tZXRyeZSMA3NpcJSMDl91bnBpY2tsZV90eXBl +lJOUjAxQeVF0NS5RdENvcmWUjApRQnl0ZUFycmF5lENCAdnQywADAAAAAAHmAAAAjAAABw8AAANu +AAAB5wAAALIAAAcOAAADbQAAAAAAAAAAB4AAAAHnAAAAsgAABw4AAANtlIWUh5RSlIwVc291cmNl +X3BsYW5lX2Rpc3RhbmNllEcAAAAAAAAAAIwQc3BoZXJpY2FsX3JhZGl1c5RHP/AAAAAAAACMEXN1 +cmZhY2VfY3VydmF0dXJllEsAjBhzdXJmYWNlX3NoYXBlX3BhcmFtZXRlcnOUSwGMEnN1cmZhY2Vf +c2hhcGVfdHlwZZRLAIwJdGhpY2tuZXNzlEc/UGJN0vGp/IwddG9yb2lkYWxfbWlycm9yX3BvbGVf +bG9jYXRpb26USwCMEnRvcnVzX21ham9yX3JhZGl1c5RHP/AAAAAAAACMEnRvcnVzX21pbm9yX3Jh +ZGl1c5RHP/AAAAAAAACMDHVuaXRzX2luX3VzZZRLAIwcdXNlcl9kZWZpbmVkX2FzeW1tZXRyeV9h +bmdsZZRHAAAAAAAAAACMGHVzZXJfZGVmaW5lZF9icmFnZ19hbmdsZZRHQCxyLQ5WBBmMFHVzZXJf +ZGVmaW5lZF9jcnlzdGFslEsgjA51c2VyX2RlZmluZWRfaJRLCIwOdXNlcl9kZWZpbmVkX2uUSwCM +DnVzZXJfZGVmaW5lZF9slEsAjAl2aWV3X3R5cGWUSwB1Lg== + + gASVHQIAAAAAAAB9lCiMDGF1dG9fZXhlY3V0ZZSJjBJjdXJyZW50U2NyaXB0SW5kZXiUSwCMCWZv +bnRfc2l6ZZRLBIwRbGlicmFyeUxpc3RTb3VyY2WUXZSMJG9hc3lzLndpZGdldHMudG9vbHMub3df +cHl0aG9uX3NjcmlwdJSMBlNjcmlwdJSTlCmBlH2UKIwEbmFtZZSMDmdldFM0SW50ZW5zaXR5lIwG +c2NyaXB0lIwwcHJpbnQoZid7aW5fb2JqZWN0XzEuYmVhbS5nZXRfaW50ZW5zaXR5KCk6LjZnfScp +lIwFZmxhZ3OUSwCMCGZpbGVuYW1llE51YmGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5f +dW5waWNrbGVfdHlwZZSTlIwMUHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAAA +0AAAAKkAAAatAAAD9gAAANAAAACpAAAGrQAAA/YAAAAAAAAAAAeAAAAA0AAAAKkAAAatAAAD9pSF +lIeUUpSMDXNwbGl0dGVyU3RhdGWUjH9iJ1x4MDBceDAwXHgwMFx4ZmZceDAwXHgwMFx4MDBceDAx +XHgwMFx4MDBceDAwXHgwMlx4MDBceDAwXHgwMVx4YzRceDAwXHgwMFx4MDBceGQ1XHgwMVx4ZmZc +eGZmXHhmZlx4ZmZceDAxXHgwMFx4MDBceDAwXHgwMlx4MDAnlHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CjiAAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsAjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQI6NmZmZmZqME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLA4wUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQJ0Q +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACNAAAAQ0AAAddAAAD7wAAAjUA +AAEzAAAHXAAAA+4AAAAAAAAAAAeAAAACNQAAATMAAAdcAAAD7pSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHQGmAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQClD6lIY0YiME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A +AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHAAAAAAAAAACMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + gASVSQMAAAAAAAB9lCiMEWFuZ2xlc19yZXNwZWN0X3RvlEsAjBdhdHRlbnVhdGlvbl9jb2VmZmlj +aWVudJRHAAAAAAAAAACMEmNvbnZleF90b190aGVfYmVhbZRLAIwOY3lsaW5kZXJfYW5nbGWURwAA +AAAAAAAAjAdkZW5zaXR5lEc/9752yLQ5WIwIZGlhbWV0ZXKUR0CV4AAAAAAAjBNoYXNfZmluaXRl +X2RpYW1ldGVylEsBjBRpbWFnZV9wbGFuZV9kaXN0YW5jZZRHQAAAAAAAAACME2luY2lkZW5jZV9h +bmdsZV9kZWeUR0BWMzMzMzMzjBRpbmNpZGVuY2VfYW5nbGVfbXJhZJRHAAAAAAAAAACMDmludGVy +dGhpY2tuZXNzlEdAPgAAAAAAAIwQaXNfYXV0b21hdGljX3J1bpSIjAtpc19jeWxpbmRlcpRLAIwI +bWF0ZXJpYWyUjAJCZZSMBm5fbGVuc5RLDYwUb2Vfb3JpZW50YXRpb25fYW5nbGWUSwCMH29lX29y +aWVudGF0aW9uX2FuZ2xlX3VzZXJfdmFsdWWURwAAAAAAAAAAjBBwaWxpbmdfdGhpY2tuZXNzlEdA +AAAAAAAAAIwMcHJlcmVmbF9maWxllIwTU1U4XzEyODkwXzEyOTQwLmRhdJSMBnJhZGl1c5RHQH9A +AAAAAACMFHJlZmxlY3Rpb25fYW5nbGVfZGVnlEdAVUAAAAAAAIwVcmVmbGVjdGlvbl9hbmdsZV9t +cmFklEcAAAAAAAAAAIwQcmVmcmFjdGlvbl9pbmRleJRHP/AAAAAAAACME3JpX2NhbGN1bGF0aW9u +X21vZGWUSwGME3NhdmVkV2lkZ2V0R2VvbWV0cnmUjANzaXCUjA5fdW5waWNrbGVfdHlwZZSTlIwM +UHlRdDUuUXRDb3JllIwKUUJ5dGVBcnJheZRDQgHZ0MsAAwAAAAACHQAAARMAAAdEAAADzgAAAh0A +AAETAAAHRAAAA84AAAAAAAAAAAeAAAACHQAAARMAAAdEAAADzpSFlIeUUpSMFXNvdXJjZV9wbGFu +ZV9kaXN0YW5jZZRHQClD6lIY0YiMDXN1cmZhY2Vfc2hhcGWUSwKMCXZpZXdfdHlwZZRLAHUu + + + diff --git a/SU8_12890_12940.dat b/SU8_12890_12940.dat new file mode 100644 index 0000000..b1dee64 --- /dev/null +++ b/SU8_12890_12940.dat @@ -0,0 +1,204 @@ + 6.53230489313e+08 6.55764354671e+08 2.53386535808e+04 6.18000000000e-01 +101 +3.053665e-06 +3.053428e-06 +3.053191e-06 +3.052953e-06 +3.052716e-06 +3.052479e-06 +3.052241e-06 +3.052004e-06 +3.051767e-06 +3.051530e-06 +3.051292e-06 +3.051055e-06 +3.050818e-06 +3.050581e-06 +3.050344e-06 +3.050107e-06 +3.049870e-06 +3.049633e-06 +3.049396e-06 +3.049159e-06 +3.048922e-06 +3.048685e-06 +3.048449e-06 +3.048212e-06 +3.047975e-06 +3.047738e-06 +3.047501e-06 +3.047265e-06 +3.047028e-06 +3.046791e-06 +3.046555e-06 +3.046318e-06 +3.046082e-06 +3.045845e-06 +3.045609e-06 +3.045372e-06 +3.045136e-06 +3.044899e-06 +3.044663e-06 +3.044426e-06 +3.044190e-06 +3.043954e-06 +3.043718e-06 +3.043481e-06 +3.043245e-06 +3.043009e-06 +3.042773e-06 +3.042536e-06 +3.042300e-06 +3.042064e-06 +3.041828e-06 +3.041592e-06 +3.041356e-06 +3.041120e-06 +3.040884e-06 +3.040648e-06 +3.040412e-06 +3.040176e-06 +3.039941e-06 +3.039705e-06 +3.039469e-06 +3.039233e-06 +3.038997e-06 +3.038762e-06 +3.038526e-06 +3.038290e-06 +3.038055e-06 +3.037819e-06 +3.037584e-06 +3.037348e-06 +3.037113e-06 +3.036877e-06 +3.036642e-06 +3.036406e-06 +3.036171e-06 +3.035935e-06 +3.035700e-06 +3.035465e-06 +3.035229e-06 +3.034994e-06 +3.034759e-06 +3.034524e-06 +3.034288e-06 +3.034053e-06 +3.033818e-06 +3.033583e-06 +3.033348e-06 +3.033113e-06 +3.032878e-06 +3.032643e-06 +3.032408e-06 +3.032173e-06 +3.031938e-06 +3.031703e-06 +3.031468e-06 +3.031233e-06 +3.030999e-06 +3.030764e-06 +3.030529e-06 +3.030294e-06 +3.030060e-06 +4.972172e-09 +4.971432e-09 +4.970693e-09 +4.969953e-09 +4.969214e-09 +4.968475e-09 +4.967736e-09 +4.966997e-09 +4.966258e-09 +4.965520e-09 +4.964781e-09 +4.964043e-09 +4.963305e-09 +4.962567e-09 +4.961829e-09 +4.961091e-09 +4.960354e-09 +4.959616e-09 +4.958879e-09 +4.958142e-09 +4.957405e-09 +4.956668e-09 +4.955931e-09 +4.955195e-09 +4.954458e-09 +4.953722e-09 +4.952986e-09 +4.952250e-09 +4.951514e-09 +4.950779e-09 +4.950043e-09 +4.949308e-09 +4.948572e-09 +4.947837e-09 +4.947102e-09 +4.946367e-09 +4.945633e-09 +4.944898e-09 +4.944164e-09 +4.943429e-09 +4.942695e-09 +4.941961e-09 +4.941227e-09 +4.940494e-09 +4.939760e-09 +4.939027e-09 +4.938293e-09 +4.937560e-09 +4.936827e-09 +4.936094e-09 +4.935361e-09 +4.934629e-09 +4.933896e-09 +4.933164e-09 +4.932432e-09 +4.931700e-09 +4.930968e-09 +4.930236e-09 +4.929505e-09 +4.928773e-09 +4.928042e-09 +4.927311e-09 +4.926580e-09 +4.925849e-09 +4.925118e-09 +4.924387e-09 +4.923657e-09 +4.922927e-09 +4.922196e-09 +4.921466e-09 +4.920736e-09 +4.920007e-09 +4.919277e-09 +4.918548e-09 +4.917818e-09 +4.917089e-09 +4.916360e-09 +4.915631e-09 +4.914902e-09 +4.914174e-09 +4.913445e-09 +4.912717e-09 +4.911989e-09 +4.911260e-09 +4.910533e-09 +4.909805e-09 +4.909077e-09 +4.908350e-09 +4.907622e-09 +4.906895e-09 +4.906168e-09 +4.905441e-09 +4.904714e-09 +4.903987e-09 +4.903261e-09 +4.902534e-09 +4.901808e-09 +4.901082e-09 +4.900356e-09 +4.899630e-09 +4.898905e-09 diff --git a/Si(800)_12890_12940.dat b/Si(800)_12890_12940.dat new file mode 100644 index 0000000..a8d625e --- /dev/null +++ b/Si(800)_12890_12940.dat @@ -0,0 +1,211 @@ +0 1.759399e+09 6.788375e-09 +14 14 1.000000e+00 +( 4.00000000000e+00, -1.95943487864e-15 ) +( 4.00000000000e+00, 1.95943487864e-15 ) +( 4.00000000000e+00, -3.91886975727e-15 ) +( 4.00000000000e+00, 3.91886975727e-15 ) +1.309004e+01 -1.683182e+01 6.433024e+00 +1.309004e+01 -1.683182e+01 6.433024e+00 +101 + 1.28900000000e+04 1.36676072387e-01 1.33673242769e-01 + 1.36676072387e-01 1.33673242769e-01 + 1.28905000000e+04 1.36668041677e-01 1.33662824915e-01 + 1.36668041677e-01 1.33662824915e-01 + 1.28910000000e+04 1.36660011619e-01 1.33652408348e-01 + 1.36660011619e-01 1.33652408348e-01 + 1.28915000000e+04 1.36651982214e-01 1.33641993069e-01 + 1.36651982214e-01 1.33641993069e-01 + 1.28920000000e+04 1.36643953460e-01 1.33631579076e-01 + 1.36643953460e-01 1.33631579076e-01 + 1.28925000000e+04 1.36635925358e-01 1.33621166370e-01 + 1.36635925358e-01 1.33621166370e-01 + 1.28930000000e+04 1.36627897909e-01 1.33610754950e-01 + 1.36627897909e-01 1.33610754950e-01 + 1.28935000000e+04 1.36619871111e-01 1.33600344817e-01 + 1.36619871111e-01 1.33600344817e-01 + 1.28940000000e+04 1.36611844965e-01 1.33589935969e-01 + 1.36611844965e-01 1.33589935969e-01 + 1.28945000000e+04 1.36603819470e-01 1.33579528408e-01 + 1.36603819470e-01 1.33579528408e-01 + 1.28950000000e+04 1.36595794628e-01 1.33569122132e-01 + 1.36595794628e-01 1.33569122132e-01 + 1.28955000000e+04 1.36587770437e-01 1.33558717143e-01 + 1.36587770437e-01 1.33558717143e-01 + 1.28960000000e+04 1.36579746897e-01 1.33548313438e-01 + 1.36579746897e-01 1.33548313438e-01 + 1.28965000000e+04 1.36571724009e-01 1.33537911019e-01 + 1.36571724009e-01 1.33537911019e-01 + 1.28970000000e+04 1.36563701772e-01 1.33527509885e-01 + 1.36563701772e-01 1.33527509885e-01 + 1.28975000000e+04 1.36555680187e-01 1.33517110035e-01 + 1.36555680187e-01 1.33517110035e-01 + 1.28980000000e+04 1.36547659253e-01 1.33506711471e-01 + 1.36547659253e-01 1.33506711471e-01 + 1.28985000000e+04 1.36539638970e-01 1.33496314191e-01 + 1.36539638970e-01 1.33496314191e-01 + 1.28990000000e+04 1.36531619339e-01 1.33485918195e-01 + 1.36531619339e-01 1.33485918195e-01 + 1.28995000000e+04 1.36523600359e-01 1.33475523484e-01 + 1.36523600359e-01 1.33475523484e-01 + 1.29000000000e+04 1.36515582029e-01 1.33465130056e-01 + 1.36515582029e-01 1.33465130056e-01 + 1.29005000000e+04 1.36507564351e-01 1.33454737912e-01 + 1.36507564351e-01 1.33454737912e-01 + 1.29010000000e+04 1.36499547324e-01 1.33444347052e-01 + 1.36499547324e-01 1.33444347052e-01 + 1.29015000000e+04 1.36491530947e-01 1.33433957476e-01 + 1.36491530947e-01 1.33433957476e-01 + 1.29020000000e+04 1.36483515221e-01 1.33423569183e-01 + 1.36483515221e-01 1.33423569183e-01 + 1.29025000000e+04 1.36475500147e-01 1.33413182173e-01 + 1.36475500147e-01 1.33413182173e-01 + 1.29030000000e+04 1.36467485722e-01 1.33402796445e-01 + 1.36467485722e-01 1.33402796445e-01 + 1.29035000000e+04 1.36459471949e-01 1.33392412001e-01 + 1.36459471949e-01 1.33392412001e-01 + 1.29040000000e+04 1.36451458826e-01 1.33382028839e-01 + 1.36451458826e-01 1.33382028839e-01 + 1.29045000000e+04 1.36443446353e-01 1.33371646960e-01 + 1.36443446353e-01 1.33371646960e-01 + 1.29050000000e+04 1.36435434531e-01 1.33361266363e-01 + 1.36435434531e-01 1.33361266363e-01 + 1.29055000000e+04 1.36427423360e-01 1.33350887047e-01 + 1.36427423360e-01 1.33350887047e-01 + 1.29060000000e+04 1.36419412838e-01 1.33340509014e-01 + 1.36419412838e-01 1.33340509014e-01 + 1.29065000000e+04 1.36411402967e-01 1.33330132263e-01 + 1.36411402967e-01 1.33330132263e-01 + 1.29070000000e+04 1.36403393747e-01 1.33319756793e-01 + 1.36403393747e-01 1.33319756793e-01 + 1.29075000000e+04 1.36395385176e-01 1.33309382604e-01 + 1.36395385176e-01 1.33309382604e-01 + 1.29080000000e+04 1.36387377256e-01 1.33299009696e-01 + 1.36387377256e-01 1.33299009696e-01 + 1.29085000000e+04 1.36379369985e-01 1.33288638070e-01 + 1.36379369985e-01 1.33288638070e-01 + 1.29090000000e+04 1.36371363365e-01 1.33278267724e-01 + 1.36371363365e-01 1.33278267724e-01 + 1.29095000000e+04 1.36363357394e-01 1.33267898659e-01 + 1.36363357394e-01 1.33267898659e-01 + 1.29100000000e+04 1.36355352073e-01 1.33257530874e-01 + 1.36355352073e-01 1.33257530874e-01 + 1.29105000000e+04 1.36347347402e-01 1.33247164370e-01 + 1.36347347402e-01 1.33247164370e-01 + 1.29110000000e+04 1.36339343381e-01 1.33236799146e-01 + 1.36339343381e-01 1.33236799146e-01 + 1.29115000000e+04 1.36331340009e-01 1.33226435201e-01 + 1.36331340009e-01 1.33226435201e-01 + 1.29120000000e+04 1.36323337287e-01 1.33216072537e-01 + 1.36323337287e-01 1.33216072537e-01 + 1.29125000000e+04 1.36315335215e-01 1.33205711152e-01 + 1.36315335215e-01 1.33205711152e-01 + 1.29130000000e+04 1.36307333792e-01 1.33195351046e-01 + 1.36307333792e-01 1.33195351046e-01 + 1.29135000000e+04 1.36299333019e-01 1.33184992220e-01 + 1.36299333019e-01 1.33184992220e-01 + 1.29140000000e+04 1.36291332895e-01 1.33174634672e-01 + 1.36291332895e-01 1.33174634672e-01 + 1.29145000000e+04 1.36283333420e-01 1.33164278404e-01 + 1.36283333420e-01 1.33164278404e-01 + 1.29150000000e+04 1.36275334594e-01 1.33153923414e-01 + 1.36275334594e-01 1.33153923414e-01 + 1.29155000000e+04 1.36267336418e-01 1.33143569702e-01 + 1.36267336418e-01 1.33143569702e-01 + 1.29160000000e+04 1.36259338891e-01 1.33133217269e-01 + 1.36259338891e-01 1.33133217269e-01 + 1.29165000000e+04 1.36251342012e-01 1.33122866114e-01 + 1.36251342012e-01 1.33122866114e-01 + 1.29170000000e+04 1.36243345783e-01 1.33112516237e-01 + 1.36243345783e-01 1.33112516237e-01 + 1.29175000000e+04 1.36235350203e-01 1.33102167638e-01 + 1.36235350203e-01 1.33102167638e-01 + 1.29180000000e+04 1.36227355272e-01 1.33091820317e-01 + 1.36227355272e-01 1.33091820317e-01 + 1.29185000000e+04 1.36219360989e-01 1.33081474273e-01 + 1.36219360989e-01 1.33081474273e-01 + 1.29190000000e+04 1.36211367355e-01 1.33071129506e-01 + 1.36211367355e-01 1.33071129506e-01 + 1.29195000000e+04 1.36203374370e-01 1.33060786016e-01 + 1.36203374370e-01 1.33060786016e-01 + 1.29200000000e+04 1.36195382034e-01 1.33050443803e-01 + 1.36195382034e-01 1.33050443803e-01 + 1.29205000000e+04 1.36187390346e-01 1.33040102867e-01 + 1.36187390346e-01 1.33040102867e-01 + 1.29210000000e+04 1.36179399307e-01 1.33029763208e-01 + 1.36179399307e-01 1.33029763208e-01 + 1.29215000000e+04 1.36171408916e-01 1.33019424824e-01 + 1.36171408916e-01 1.33019424824e-01 + 1.29220000000e+04 1.36163419173e-01 1.33009087717e-01 + 1.36163419173e-01 1.33009087717e-01 + 1.29225000000e+04 1.36155430079e-01 1.32998751886e-01 + 1.36155430079e-01 1.32998751886e-01 + 1.29230000000e+04 1.36147441633e-01 1.32988417331e-01 + 1.36147441633e-01 1.32988417331e-01 + 1.29235000000e+04 1.36139453836e-01 1.32978084052e-01 + 1.36139453836e-01 1.32978084052e-01 + 1.29240000000e+04 1.36131466686e-01 1.32967752048e-01 + 1.36131466686e-01 1.32967752048e-01 + 1.29245000000e+04 1.36123480185e-01 1.32957421319e-01 + 1.36123480185e-01 1.32957421319e-01 + 1.29250000000e+04 1.36115494331e-01 1.32947091865e-01 + 1.36115494331e-01 1.32947091865e-01 + 1.29255000000e+04 1.36107509126e-01 1.32936763687e-01 + 1.36107509126e-01 1.32936763687e-01 + 1.29260000000e+04 1.36099524568e-01 1.32926436783e-01 + 1.36099524568e-01 1.32926436783e-01 + 1.29265000000e+04 1.36091540659e-01 1.32916111154e-01 + 1.36091540659e-01 1.32916111154e-01 + 1.29270000000e+04 1.36083557397e-01 1.32905786799e-01 + 1.36083557397e-01 1.32905786799e-01 + 1.29275000000e+04 1.36075574783e-01 1.32895463718e-01 + 1.36075574783e-01 1.32895463718e-01 + 1.29280000000e+04 1.36067592816e-01 1.32885141912e-01 + 1.36067592816e-01 1.32885141912e-01 + 1.29285000000e+04 1.36059611498e-01 1.32874821379e-01 + 1.36059611498e-01 1.32874821379e-01 + 1.29290000000e+04 1.36051630826e-01 1.32864502120e-01 + 1.36051630826e-01 1.32864502120e-01 + 1.29295000000e+04 1.36043650802e-01 1.32854184135e-01 + 1.36043650802e-01 1.32854184135e-01 + 1.29300000000e+04 1.36035671426e-01 1.32843867423e-01 + 1.36035671426e-01 1.32843867423e-01 + 1.29305000000e+04 1.36027692697e-01 1.32833551984e-01 + 1.36027692697e-01 1.32833551984e-01 + 1.29310000000e+04 1.36019714615e-01 1.32823237818e-01 + 1.36019714615e-01 1.32823237818e-01 + 1.29315000000e+04 1.36011737181e-01 1.32812924925e-01 + 1.36011737181e-01 1.32812924925e-01 + 1.29320000000e+04 1.36003760394e-01 1.32802613304e-01 + 1.36003760394e-01 1.32802613304e-01 + 1.29325000000e+04 1.35995784254e-01 1.32792302956e-01 + 1.35995784254e-01 1.32792302956e-01 + 1.29330000000e+04 1.35987808760e-01 1.32781993881e-01 + 1.35987808760e-01 1.32781993881e-01 + 1.29335000000e+04 1.35979833914e-01 1.32771686077e-01 + 1.35979833914e-01 1.32771686077e-01 + 1.29340000000e+04 1.35971859715e-01 1.32761379546e-01 + 1.35971859715e-01 1.32761379546e-01 + 1.29345000000e+04 1.35963886163e-01 1.32751074286e-01 + 1.35963886163e-01 1.32751074286e-01 + 1.29350000000e+04 1.35955913258e-01 1.32740770297e-01 + 1.35955913258e-01 1.32740770297e-01 + 1.29355000000e+04 1.35947940999e-01 1.32730467580e-01 + 1.35947940999e-01 1.32730467580e-01 + 1.29360000000e+04 1.35939969387e-01 1.32720166135e-01 + 1.35939969387e-01 1.32720166135e-01 + 1.29365000000e+04 1.35931998422e-01 1.32709865960e-01 + 1.35931998422e-01 1.32709865960e-01 + 1.29370000000e+04 1.35924028103e-01 1.32699567056e-01 + 1.35924028103e-01 1.32699567056e-01 + 1.29375000000e+04 1.35916058431e-01 1.32689269423e-01 + 1.35916058431e-01 1.32689269423e-01 + 1.29380000000e+04 1.35908089405e-01 1.32678973061e-01 + 1.35908089405e-01 1.32678973061e-01 + 1.29385000000e+04 1.35900121025e-01 1.32668677968e-01 + 1.35900121025e-01 1.32668677968e-01 + 1.29390000000e+04 1.35892153292e-01 1.32658384146e-01 + 1.35892153292e-01 1.32658384146e-01 + 1.29395000000e+04 1.35884186206e-01 1.32648091594e-01 + 1.35884186206e-01 1.32648091594e-01 + 1.29400000000e+04 1.35876219765e-01 1.32637800312e-01 + 1.35876219765e-01 1.32637800312e-01 From 3eeb69d4e4cd4cff6f786b2013de8e4aeec5f10f Mon Sep 17 00:00:00 2001 From: Xiaojiang YU Date: Wed, 25 Feb 2026 17:32:18 +0800 Subject: [PATCH 6/6] Update for phase shifter calculation --- .../optical_elements/crystals/s4_crystal.py | 46 +++++++++++++------ .../crystals/s4_plane_crystal.py | 4 +- 2 files changed, 35 insertions(+), 15 deletions(-) diff --git a/shadow4/beamline/optical_elements/crystals/s4_crystal.py b/shadow4/beamline/optical_elements/crystals/s4_crystal.py index aacd946..0a6e3b4 100644 --- a/shadow4/beamline/optical_elements/crystals/s4_crystal.py +++ b/shadow4/beamline/optical_elements/crystals/s4_crystal.py @@ -15,7 +15,7 @@ from crystalpy.diffraction.DiffractionSetupShadowPreprocessorV1 import DiffractionSetupShadowPreprocessorV1 from crystalpy.diffraction.DiffractionSetupShadowPreprocessorV2 import DiffractionSetupShadowPreprocessorV2 -from crystalpy.diffraction.GeometryType import BraggDiffraction +from crystalpy.diffraction.GeometryType import BraggDiffraction, BraggTransmission, LaueDiffraction, LaueTransmission from crystalpy.util.Vector import Vector from crystalpy.util.ComplexAmplitudePhoton import ComplexAmplitudePhoton from crystalpy.diffraction.PerfectCrystalDiffraction import PerfectCrystalDiffraction @@ -32,6 +32,7 @@ import scipy.constants as codata class S4Crystal(Crystal): + dynamic_theory = 1 # 0 Zachariasen 1 Guigay """ Shadow4 Crystal Class This is a base class for perfect crystal in reflection geometry (Bragg), using the diffracted beam. @@ -95,7 +96,7 @@ def __init__(self, boundary_shape=None, surface_shape=None, material=None, - # diffraction_geometry=DiffractionGeometry.BRAGG, + diffraction_geometry=DiffractionGeometry.BRAGG, miller_index_h=1, miller_index_k=1, miller_index_l=1, @@ -125,7 +126,7 @@ def __init__(self, surface_shape=surface_shape, boundary_shape=boundary_shape, material=material, - diffraction_geometry=DiffractionGeometry.BRAGG, + diffraction_geometry=diffraction_geometry, miller_index_h=miller_index_h, miller_index_k=miller_index_k, miller_index_l=miller_index_l, @@ -303,10 +304,19 @@ def set_crystalpy_diffraction_setup(self): """ oe = self.get_optical_element() coor = self.get_coordinates() + geo = oe.get_diffraction_geometry() + if geo == DiffractionGeometry.BRAGG: + geo_type = BraggDiffraction() + elif geo == DiffractionGeometry.LAUE: + geo_type = LaueDiffraction() + elif geo == DiffractionGeometry.BRAGG_T: + geo_type = BraggTransmission() + else: + geo_type = LaueTransmission() if oe._material_constants_library_flag == 0: if is_verbose(): print("\nCreating a diffraction setup (XRAYLIB) for material:", oe._material) - diffraction_setup = DiffractionSetupXraylib(geometry_type=BraggDiffraction(), # todo: use oe._diffraction_geometry + diffraction_setup = DiffractionSetupXraylib(geometry_type=geo_type, crystal_name=oe._material, # string thickness=oe._thickness, # meters miller_h=oe._miller_index_h, # int @@ -316,7 +326,7 @@ def set_crystalpy_diffraction_setup(self): azimuthal_angle=0.0) elif oe._material_constants_library_flag == 1: if is_verbose(): print("\nCreating a diffraction setup (DABAX) for material:", oe._material) - diffraction_setup = DiffractionSetupDabax(geometry_type=BraggDiffraction(), # todo: use oe._diffraction_geometry + diffraction_setup = DiffractionSetupDabax(geometry_type=geo_type, crystal_name=oe._material, # string thickness=oe._thickness, # meters miller_h=oe._miller_index_h, # int @@ -327,7 +337,7 @@ def set_crystalpy_diffraction_setup(self): dabax=oe._dabax) elif oe._material_constants_library_flag == 2: if is_verbose(): print("\nCreating a diffraction setup (shadow preprocessor file V1)...") - diffraction_setup = DiffractionSetupShadowPreprocessorV1(geometry_type=BraggDiffraction(), # todo: use oe._diffraction_geometry + diffraction_setup = DiffractionSetupShadowPreprocessorV1(geometry_type=geo_type, crystal_name=oe._material, # string thickness=oe._thickness, # meters miller_h=oe._miller_index_h, # int @@ -338,7 +348,7 @@ def set_crystalpy_diffraction_setup(self): preprocessor_file=oe._file_refl) elif oe._material_constants_library_flag == 3: if is_verbose(): print("\nCreating a diffraction setup (shadow preprocessor file V2)...") - diffraction_setup = DiffractionSetupShadowPreprocessorV2(geometry_type=BraggDiffraction(), # todo: use oe._diffraction_geometry + diffraction_setup = DiffractionSetupShadowPreprocessorV2(geometry_type=geo_type, crystal_name=oe._material, # string thickness=oe._thickness, # meters miller_h=oe._miller_index_h, # int @@ -645,6 +655,7 @@ def _calculate_perfect_crystal_scattering(self, footprint1, normal): surface_normal=surface_normal, thickness=None, d_spacing=None, + photon_in=photons_in, ) # Calculate outgoing Photon. @@ -652,7 +663,7 @@ def _calculate_perfect_crystal_scattering(self, footprint1, normal): # NEW USING Jones matrix JR outgoing_complex_amplitude_photon = perfect_crystal.calculatePhotonOut(photons_in, apply_reflectivity=True, - calculation_method=1, + calculation_method=soe.dynamic_theory, is_thick=soe._is_thick, use_transfer_matrix=0 ) @@ -706,13 +717,22 @@ def _calculate_jones_and_efield_directions(self, footprint, normal, vIn, vOut, r # e_S, e_P = footprint.get_efield_directions() # these are \hat{u}_{\sigma,\pi} in Eq. 3 - axis = vector_norm(vector_cross(vIn, vOut)) + soe = self.get_optical_element() + if soe.get_diffraction_geometry() > 1: # 2:bragg_t, 3:laue_t + vOut = vIn + es_S = e_S + es_P = e_P + ee_S = e_S + ee_P = e_P + axis = e_S # Dummy assignment, not used + else: + axis = vector_norm(vector_cross(vIn, vOut)) - es_S = axis # \hat{u}_{\sigma,i} in Eq. 12 - es_P = vector_norm(vector_cross(es_S, vIn)) # \hat{u}_{\pi,i} in Eq. 12 + es_S = axis # \hat{u}_{\sigma,i} in Eq. 12 + es_P = vector_norm(vector_cross(es_S, vIn)) # \hat{u}_{\pi,i} in Eq. 12 - ee_S = axis # \hat{u}_{\sigma,f} in Eq. 13 - ee_P = vector_norm(vector_cross(ee_S, vOut)) # \hat{u}_{\pi,f} in Eq. 13 + ee_S = axis # \hat{u}_{\sigma,f} in Eq. 13 + ee_P = vector_norm(vector_cross(ee_S, vOut)) # \hat{u}_{\pi,f} in Eq. 13 if is_verbose(): print(">>>>> e_S, perp vIn: ", e_S[0], vector_dot(e_S, vIn)[0]) diff --git a/shadow4/beamline/optical_elements/crystals/s4_plane_crystal.py b/shadow4/beamline/optical_elements/crystals/s4_plane_crystal.py index a3e28cc..93c583f 100644 --- a/shadow4/beamline/optical_elements/crystals/s4_plane_crystal.py +++ b/shadow4/beamline/optical_elements/crystals/s4_plane_crystal.py @@ -62,7 +62,7 @@ def __init__(self, name="Plane crystal", boundary_shape=None, material=None, - # diffraction_geometry=DiffractionGeometry.BRAGG, # ?? not supposed to be in syned... + diffraction_geometry=DiffractionGeometry.BRAGG, # ?? not supposed to be in syned...enabled by SSLS:YXJ miller_index_h=1, miller_index_k=1, miller_index_l=1, @@ -87,7 +87,7 @@ def __init__(self, surface_shape=self.get_surface_shape_instance(), boundary_shape=boundary_shape, material=material, - # diffraction_geometry=diffraction_geometry, # ?? not supposed to be in syned... + diffraction_geometry=diffraction_geometry, # ?? not supposed to be in syned...enabled by SSLS:YXJ miller_index_h=miller_index_h, miller_index_k=miller_index_k, miller_index_l=miller_index_l,