<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>210663</bug_id>
          
          <creation_ts>2020-04-17 12:08:45 -0700</creation_ts>
          <short_desc>Rename NullishEq / NULLISHEQUAL to CoalesceEq / COALESCEEQUAL to match the spec</short_desc>
          <delta_ts>2020-04-17 12:47:14 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit Local Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>209716</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1642762</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-04-17 12:08:45 -0700</bug_when>
    <thetext>?? is called a &quot;coalesce expression&quot;, so ??= should be &quot;coalesce equal&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642764</commentid>
    <comment_count>1</comment_count>
      <attachid>396780</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-04-17 12:10:53 -0700</bug_when>
    <thetext>Created attachment 396780
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642765</commentid>
    <comment_count>2</comment_count>
      <attachid>396780</attachid>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2020-04-17 12:11:36 -0700</bug_when>
    <thetext>Comment on attachment 396780
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642780</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-17 12:46:59 -0700</bug_when>
    <thetext>Committed r260275: &lt;https://trac.webkit.org/changeset/260275&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 396780.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642781</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-17 12:47:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/61946522&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>396780</attachid>
            <date>2020-04-17 12:10:53 -0700</date>
            <delta_ts>2020-04-17 12:46:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210663-20200417131052.patch</filename>
            <type>text/plain</type>
            <size>64756</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDgwMjkxMGYyNTNjZTJjNGRiNDA3NTBlYmJmMWRh
MjJiNmY0ZjZiYzcuLjU5NTk3MTg5MzU4NmEyNWMxZTVmYzllNzc5YmJiYmU1M2JmMTI2NjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDIwLTA0LTE3ICBEZXZp
biBSb3Vzc28gIDxkcm91c3NvQGFwcGxlLmNvbT4KKworICAgICAgICBSZW5hbWUgTnVsbGlzaEVx
IC8gTlVMTElTSEVRVUFMIHRvIENvYWxlc2NlRXEgLyBDT0FMRVNDRUVRVUFMIHRvIG1hdGNoIHRo
ZSBzcGVjCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MTA2NjMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGJ5dGVjb21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwOgorICAgICAgICAoSlNDOjplbWl0U2hvcnRD
aXJjdWl0QXNzaWdubWVudCk6CisgICAgICAgICogcGFyc2VyL0FTVEJ1aWxkZXIuaDoKKyAgICAg
ICAgKEpTQzo6QVNUQnVpbGRlcjo6bWFrZUFzc2lnbk5vZGUpOgorICAgICAgICAqIHBhcnNlci9M
ZXhlci5jcHA6CisgICAgICAgIChKU0M6OkxleGVyPFQ+OjpsZXhXaXRob3V0Q2xlYXJpbmdMaW5l
VGVybWluYXRvcik6CisgICAgICAgICogcGFyc2VyL05vZGVzLmg6CisgICAgICAgICogcGFyc2Vy
L1BhcnNlci5jcHA6CisgICAgICAgIChKU0M6OlBhcnNlcjxMZXhlclR5cGU+OjpwYXJzZUFzc2ln
bm1lbnRFeHByZXNzaW9uKToKKyAgICAgICAgKiBwYXJzZXIvUGFyc2VyVG9rZW5zLmg6CisKIDIw
MjAtMDQtMTYgIFl1c3VrZSBTdXp1a2kgIDx5c3V6dWtpQGFwcGxlLmNvbT4KIAogICAgICAgICBb
SlNDXSBJbXBsZW1lbnQgSlNNYXBJdGVyYXRvci9KU1NldEl0ZXJhdG9yIHdpdGggSlNJbnRlcm5h
bEZpZWxkT2JqZWN0SW1wbApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVj
b21waWxlci9Ob2Rlc0NvZGVnZW4uY3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21w
aWxlci9Ob2Rlc0NvZGVnZW4uY3BwCmluZGV4IDA3ZjAwOGIzZmVmZTdlN2M2NmE0MGMzMTBmNTY0
OGY4YTUxZDU5NjIuLjAxZTU2OWI1MWU2NTcyYjNhNTg4MGY3NmI1MWFmNTJhNzJjN2U1MGMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29tcGlsZXIvTm9kZXNDb2RlZ2Vu
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL05vZGVzQ29kZWdl
bi5jcHAKQEAgLTI5NTEsNyArMjk1MSw3IEBAIFJlZ2lzdGVySUQqIFJlYWRNb2RpZnlSZXNvbHZl
Tm9kZTo6ZW1pdEJ5dGVjb2RlKEJ5dGVjb2RlR2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlCiBzdGF0
aWMgQUxXQVlTX0lOTElORSB2b2lkIGVtaXRTaG9ydENpcmN1aXRBc3NpZ25tZW50KEJ5dGVjb2Rl
R2VuZXJhdG9yJiBnZW5lcmF0b3IsIFJlZ2lzdGVySUQqIHZhbHVlLCBPcGVyYXRvciBvcGVyLCBM
YWJlbCYgYWZ0ZXJBc3NpZ25tZW50KQogewogICAgIHN3aXRjaCAob3BlcikgewotICAgIGNhc2Ug
T3BlcmF0b3I6Ok51bGxpc2hFcToKKyAgICBjYXNlIE9wZXJhdG9yOjpDb2FsZXNjZUVxOgogICAg
ICAgICBnZW5lcmF0b3IuZW1pdEp1bXBJZkZhbHNlKGdlbmVyYXRvci5lbWl0SXNVbmRlZmluZWRP
ck51bGwoZ2VuZXJhdG9yLm5ld1RlbXBvcmFyeSgpLCB2YWx1ZSksIGFmdGVyQXNzaWdubWVudCk7
CiAgICAgICAgIGJyZWFrOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFy
c2VyL0FTVEJ1aWxkZXIuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvQVNUQnVpbGRl
ci5oCmluZGV4IDVlMzUzYmQxNzYzZDllMmY3NGQzNjQyNDRhMGIwZGFkZDIyNTgyYmUuLmQ5NTU4
MDhjNmEzMjhkY2UwNmRhNzNlNzUxZDYyMjM3ZGQ3N2JhNjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvQVNUQnVpbGRlci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvQVNUQnVpbGRlci5oCkBAIC0xNTYwLDcgKzE1NjAsNyBAQCBFeHByZXNzaW9u
Tm9kZSogQVNUQnVpbGRlcjo6bWFrZUFzc2lnbk5vZGUoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiBs
b2NhdGlvbiwgRXhwcgogICAgICAgICAgICAgcmV0dXJuIG5vZGU7CiAgICAgICAgIH0KIAotICAg
ICAgICBpZiAob3AgPT0gT3BlcmF0b3I6Ok51bGxpc2hFcSB8fCBvcCA9PSBPcGVyYXRvcjo6T3JF
cSB8fCBvcCA9PSBPcGVyYXRvcjo6QW5kRXEpCisgICAgICAgIGlmIChvcCA9PSBPcGVyYXRvcjo6
Q29hbGVzY2VFcSB8fCBvcCA9PSBPcGVyYXRvcjo6T3JFcSB8fCBvcCA9PSBPcGVyYXRvcjo6QW5k
RXEpCiAgICAgICAgICAgICByZXR1cm4gbmV3IChtX3BhcnNlckFyZW5hKSBTaG9ydENpcmN1aXRS
ZWFkTW9kaWZ5UmVzb2x2ZU5vZGUobG9jYXRpb24sIHJlc29sdmUtPmlkZW50aWZpZXIoKSwgb3As
IGV4cHIsIGV4cHJIYXNBc3NpZ25tZW50cywgZGl2b3QsIHN0YXJ0LCBlbmQpOwogCiAgICAgICAg
IHJldHVybiBuZXcgKG1fcGFyc2VyQXJlbmEpIFJlYWRNb2RpZnlSZXNvbHZlTm9kZShsb2NhdGlv
biwgcmVzb2x2ZS0+aWRlbnRpZmllcigpLCBvcCwgZXhwciwgZXhwckhhc0Fzc2lnbm1lbnRzLCBk
aXZvdCwgc3RhcnQsIGVuZCk7CkBAIC0xNTcyLDcgKzE1NzIsNyBAQCBFeHByZXNzaW9uTm9kZSog
QVNUQnVpbGRlcjo6bWFrZUFzc2lnbk5vZGUoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiBsb2NhdGlv
biwgRXhwcgogICAgICAgICBpZiAob3AgPT0gT3BlcmF0b3I6OkVxdWFsKQogICAgICAgICAgICAg
cmV0dXJuIG5ldyAobV9wYXJzZXJBcmVuYSkgQXNzaWduQnJhY2tldE5vZGUobG9jYXRpb24sIGJy
YWNrZXQtPmJhc2UoKSwgYnJhY2tldC0+c3Vic2NyaXB0KCksIGV4cHIsIGxvY0hhc0Fzc2lnbm1l
bnRzLCBleHBySGFzQXNzaWdubWVudHMsIGJyYWNrZXQtPmRpdm90KCksIHN0YXJ0LCBlbmQpOwog
Ci0gICAgICAgIGlmIChvcCA9PSBPcGVyYXRvcjo6TnVsbGlzaEVxIHx8IG9wID09IE9wZXJhdG9y
OjpPckVxIHx8IG9wID09IE9wZXJhdG9yOjpBbmRFcSkgeworICAgICAgICBpZiAob3AgPT0gT3Bl
cmF0b3I6OkNvYWxlc2NlRXEgfHwgb3AgPT0gT3BlcmF0b3I6Ok9yRXEgfHwgb3AgPT0gT3BlcmF0
b3I6OkFuZEVxKSB7CiAgICAgICAgICAgICBhdXRvKiBub2RlID0gbmV3IChtX3BhcnNlckFyZW5h
KSBTaG9ydENpcmN1aXRSZWFkTW9kaWZ5QnJhY2tldE5vZGUobG9jYXRpb24sIGJyYWNrZXQtPmJh
c2UoKSwgYnJhY2tldC0+c3Vic2NyaXB0KCksIG9wLCBleHByLCBsb2NIYXNBc3NpZ25tZW50cywg
ZXhwckhhc0Fzc2lnbm1lbnRzLCBkaXZvdCwgc3RhcnQsIGVuZCk7CiAgICAgICAgICAgICBub2Rl
LT5zZXRTdWJleHByZXNzaW9uSW5mbyhicmFja2V0LT5kaXZvdCgpLCBicmFja2V0LT5kaXZvdEVu
ZCgpLm9mZnNldCk7CiAgICAgICAgICAgICByZXR1cm4gbm9kZTsKQEAgLTE1ODksNyArMTU4OSw3
IEBAIEV4cHJlc3Npb25Ob2RlKiBBU1RCdWlsZGVyOjptYWtlQXNzaWduTm9kZShjb25zdCBKU1Rv
a2VuTG9jYXRpb24mIGxvY2F0aW9uLCBFeHByCiAgICAgaWYgKG9wID09IE9wZXJhdG9yOjpFcXVh
bCkKICAgICAgICAgcmV0dXJuIG5ldyAobV9wYXJzZXJBcmVuYSkgQXNzaWduRG90Tm9kZShsb2Nh
dGlvbiwgZG90LT5iYXNlKCksIGRvdC0+aWRlbnRpZmllcigpLCBleHByLCBleHBySGFzQXNzaWdu
bWVudHMsIGRvdC0+ZGl2b3QoKSwgc3RhcnQsIGVuZCk7CiAKLSAgICBpZiAob3AgPT0gT3BlcmF0
b3I6Ok51bGxpc2hFcSB8fCBvcCA9PSBPcGVyYXRvcjo6T3JFcSB8fCBvcCA9PSBPcGVyYXRvcjo6
QW5kRXEpIHsKKyAgICBpZiAob3AgPT0gT3BlcmF0b3I6OkNvYWxlc2NlRXEgfHwgb3AgPT0gT3Bl
cmF0b3I6Ok9yRXEgfHwgb3AgPT0gT3BlcmF0b3I6OkFuZEVxKSB7CiAgICAgICAgIGF1dG8qIG5v
ZGUgPSBuZXcgKG1fcGFyc2VyQXJlbmEpIFNob3J0Q2lyY3VpdFJlYWRNb2RpZnlEb3ROb2RlKGxv
Y2F0aW9uLCBkb3QtPmJhc2UoKSwgZG90LT5pZGVudGlmaWVyKCksIG9wLCBleHByLCBleHBySGFz
QXNzaWdubWVudHMsIGRpdm90LCBzdGFydCwgZW5kKTsKICAgICAgICAgbm9kZS0+c2V0U3ViZXhw
cmVzc2lvbkluZm8oZG90LT5kaXZvdCgpLCBkb3QtPmRpdm90RW5kKCkub2Zmc2V0KTsKICAgICAg
ICAgcmV0dXJuIG5vZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L0xleGVyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCmluZGV4
IGJhZTVmNmY4MzkyOWIwODU2ODUzM2E4MmYyMTY0MzkzNzgzYjIyZDkuLjlhYTI2NzMwMzMwZDY1
MzhmNDhiMGMwMTUzNmI3YzIzMjE1Mjc1YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvTGV4ZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
TGV4ZXIuY3BwCkBAIC0yMTcxLDcgKzIxNzEsNyBAQCBzdGFydDoKICAgICAgICAgICAgIHNoaWZ0
KCk7CiAgICAgICAgICAgICBpZiAoVU5MSUtFTFkoT3B0aW9uczo6dXNlTG9naWNhbEFzc2lnbm1l
bnRPcGVyYXRvcnMoKSAmJiBtX2N1cnJlbnQgPT0gJz0nKSkgewogICAgICAgICAgICAgICAgIHNo
aWZ0KCk7Ci0gICAgICAgICAgICAgICAgdG9rZW4gPSBOVUxMSVNIRVFVQUw7CisgICAgICAgICAg
ICAgICAgdG9rZW4gPSBDT0FMRVNDRUVRVUFMOwogICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICAgfQogICAgICAgICAgICAgdG9rZW4gPSBDT0FMRVNDRTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9wYXJzZXIvTm9kZXMuaAppbmRleCBiNTE1NjA0YTY4YWE2YmU0MzhmNGRmZTc5YWI0YTgwNDJj
OGFmZDhjLi5jMjk3NGVhZDEwMTBhYzMyYmEzMTgzZGNlZTExZDQ1OGI3YzAwZDUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmgKKysrIGIvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCkBAIC02OCw3ICs2OCw3IEBAIG5hbWVzcGFjZSBK
U0MgewogICAgICAgICBCaXRPckVxLAogICAgICAgICBNb2RFcSwKICAgICAgICAgUG93RXEsCi0g
ICAgICAgIE51bGxpc2hFcSwKKyAgICAgICAgQ29hbGVzY2VFcSwKICAgICAgICAgT3JFcSwKICAg
ICAgICAgQW5kRXEsCiAgICAgICAgIExTaGlmdCwKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIv
UGFyc2VyLmNwcAppbmRleCA5NzY3NTdiZDQ5NGRmYTkwYmJkMDI4ZjczZGM2OTNhMzUwNDkyYzJl
Li5hMzk3MTllYjc0YWViOTY2Njk3MGNkZjNkNzg2ZDQwZDI5MWUwMWJiIDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCkBAIC0zODcxLDcgKzM4NzEsNyBAQCB0ZW1wbGF0
ZSA8dHlwZW5hbWUgVHJlZUJ1aWxkZXI+IFRyZWVFeHByZXNzaW9uIFBhcnNlcjxMZXhlclR5cGU+
OjpwYXJzZUFzc2lnbm1lbgogICAgICAgICBjYXNlIEJJVE9SRVFVQUw6IG9wID0gT3BlcmF0b3I6
OkJpdE9yRXE7IGJyZWFrOwogICAgICAgICBjYXNlIE1PREVRVUFMOiBvcCA9IE9wZXJhdG9yOjpN
b2RFcTsgYnJlYWs7CiAgICAgICAgIGNhc2UgUE9XRVFVQUw6IG9wID0gT3BlcmF0b3I6OlBvd0Vx
OyBicmVhazsKLSAgICAgICAgY2FzZSBOVUxMSVNIRVFVQUw6IG9wID0gT3BlcmF0b3I6Ok51bGxp
c2hFcTsgYnJlYWs7CisgICAgICAgIGNhc2UgQ09BTEVTQ0VFUVVBTDogb3AgPSBPcGVyYXRvcjo6
Q29hbGVzY2VFcTsgYnJlYWs7CiAgICAgICAgIGNhc2UgT1JFUVVBTDogb3AgPSBPcGVyYXRvcjo6
T3JFcTsgYnJlYWs7CiAgICAgICAgIGNhc2UgQU5ERVFVQUw6IG9wID0gT3BlcmF0b3I6OkFuZEVx
OyBicmVhazsKICAgICAgICAgZGVmYXVsdDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2Vy
L1BhcnNlclRva2Vucy5oCmluZGV4IGQxYzQ3ZWZlMmNmYmE0M2NjOGM2ZmYwMGFmMmU5ODI0Y2Fl
YzY5NDAuLmRlMGViZWFmODVmZDcxMjM3MTdmODc3MTEyN2Y3MTkyM2ZmZTY3NDggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyVG9rZW5zLmgKKysrIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXJUb2tlbnMuaApAQCAtMTM0LDcgKzEzNCw3
IEBAIGVudW0gSlNUb2tlblR5cGUgewogICAgIEJJVEFOREVRVUFMLAogICAgIEJJVFhPUkVRVUFM
LAogICAgIEJJVE9SRVFVQUwsCi0gICAgTlVMTElTSEVRVUFMLAorICAgIENPQUxFU0NFRVFVQUws
CiAgICAgT1JFUVVBTCwKICAgICBBTkRFUVVBTCwKICAgICBET1RET1RET1QsCmRpZmYgLS1naXQg
YS9KU1Rlc3RzL0NoYW5nZUxvZyBiL0pTVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU0MmNiZWJkOWNh
ZjgyNDkxYzQ5YzE1M2ZlNDI2YTEzODk4NDMxZWMuLjAzNDljNDgwNGMzZjk2MzYwY2Y0NDQ0Njg3
MjBlZDI4NTcxNjIyNTAgMTAwNjQ0Ci0tLSBhL0pTVGVzdHMvQ2hhbmdlTG9nCisrKyBiL0pTVGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMjAtMDQtMTcgIERldmluIFJvdXNzbyAg
PGRyb3Vzc29AYXBwbGUuY29tPgorCisgICAgICAgIFJlbmFtZSBOdWxsaXNoRXEgLyBOVUxMSVNI
RVFVQUwgdG8gQ29hbGVzY2VFcSAvIENPQUxFU0NFRVFVQUwgdG8gbWF0Y2ggdGhlIHNwZWMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDY2MworCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3RyZXNzL2xv
Z2ljYWwtYXNzaWdubWVudC1vcGVyYXRvci1jb2FsZXNjZS5qczogUmVuYW1lZCBmcm9tIHN0cmVz
cy9sb2dpY2FsLWFzc2lnbm1lbnQtb3BlcmF0b3ItbnVsbGlzaC5qcy4KKwogMjAyMC0wNC0xNiAg
WXVzdWtlIFN1enVraSAgPHlzdXp1a2lAYXBwbGUuY29tPgogCiAgICAgICAgIFtKU0NdIEltcGxl
bWVudCBKU01hcEl0ZXJhdG9yL0pTU2V0SXRlcmF0b3Igd2l0aCBKU0ludGVybmFsRmllbGRPYmpl
Y3RJbXBsCmRpZmYgLS1naXQgYS9KU1Rlc3RzL3N0cmVzcy9sb2dpY2FsLWFzc2lnbm1lbnQtb3Bl
cmF0b3ItY29hbGVzY2UuanMgYi9KU1Rlc3RzL3N0cmVzcy9sb2dpY2FsLWFzc2lnbm1lbnQtb3Bl
cmF0b3ItY29hbGVzY2UuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZjk0NjVjYzg1ZGIwMWUyMjIzNjNjMmUwYTJi
YjU2MjZjZTlkYmM3ZAotLS0gL2Rldi9udWxsCisrKyBiL0pTVGVzdHMvc3RyZXNzL2xvZ2ljYWwt
YXNzaWdubWVudC1vcGVyYXRvci1jb2FsZXNjZS5qcwpAQCAtMCwwICsxLDE2OTkgQEAKKy8vQCBy
dW5Mb2dpY2FsQXNzaWdubWVudE9wZXJhdG9yc0VuYWJsZWQKKworZnVuY3Rpb24gc2hvdWxkQmUo
ZnVuYywgZXhwZWN0ZWQpIHsKKyAgICBsZXQgYWN0dWFsID0gZnVuYygpOworICAgIGlmICh0eXBl
b2YgZXhwZWN0ZWQgPT09ICJmdW5jdGlvbiIgPyAhKGFjdHVhbCBpbnN0YW5jZW9mIGV4cGVjdGVk
KSA6IGFjdHVhbCAhPT0gZXhwZWN0ZWQpCisgICAgICAgIHRocm93IG5ldyBFcnJvcihgZXhwZWN0
ZWQgJHtKU09OLnN0cmluZ2lmeShleHBlY3RlZCl9IGJ1dCBnb3QgJHtKU09OLnN0cmluZ2lmeShh
Y3R1YWwpfWApOworfQorCitmdW5jdGlvbiBzaG91bGRUaHJvdyhmdW5jLCBlcnJvclR5cGUpIHsK
KyAgICBsZXQgZXJyb3I7CisgICAgdHJ5IHsKKyAgICAgICAgZnVuYygpOworICAgIH0gY2F0Y2gg
KGUpIHsKKyAgICAgICAgZXJyb3IgPSBlOworICAgIH0KKworICAgIGlmICghKGVycm9yIGluc3Rh
bmNlb2YgZXJyb3JUeXBlKSkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCAke2Vy
cm9yVHlwZS5uYW1lfSBidXQgc2F3ICR7ZXJyb3IgJiYgZXJyb3IubmFtZX0hYCk7Cit9CisKK2Z1
bmN0aW9uIHNob3VsZFRocm93U3ludGF4RXJyb3Ioc2NyaXB0KSB7CisgICAgbGV0IGVycm9yOwor
ICAgIHRyeSB7CisgICAgICAgIGV2YWwoc2NyaXB0KTsKKyAgICB9IGNhdGNoIChlKSB7CisgICAg
ICAgIGVycm9yID0gZTsKKyAgICB9CisKKyAgICBpZiAoIShlcnJvciBpbnN0YW5jZW9mIFN5bnRh
eEVycm9yKSkKKyAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBTeW50YXhFcnJvciBi
dXQgc2F3ICR7ZXJyb3IgJiYgZXJyb3IubmFtZX0hYCk7Cit9CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGxldCB4OworICAgIHJldHVybiB4ID8/PSA0MjsKK30sIDQyKTsKKworc2hvdWxk
QmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHg7CisgICAgeCA/Pz0gNDI7CisgICAgcmV0dXJuIHg7
Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gdW5kZWZpbmVk
OworICAgIHJldHVybiB4ID8/PSA0MjsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7
CisgICAgbGV0IHggPSB1bmRlZmluZWQ7CisgICAgeCA/Pz0gNDI7CisgICAgcmV0dXJuIHg7Cit9
LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gbnVsbDsKKyAgICBy
ZXR1cm4geCA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxl
dCB4ID0gbnVsbDsKKyAgICB4ID8/PSA0MjsKKyAgICByZXR1cm4geDsKK30sIDQyKTsKKworc2hv
dWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB0cnVlOworICAgIHJldHVybiB4ID8/PSA0
MjsKK30sIHRydWUpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHRydWU7
CisgICAgeCA/Pz0gNDI7CisgICAgcmV0dXJuIHg7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVu
Y3Rpb24oKSB7CisgICAgbGV0IHggPSBmYWxzZTsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCBm
YWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gZmFsc2U7CisgICAg
eCA/Pz0gNDI7CisgICAgcmV0dXJuIHg7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGxldCB4ID0gMDsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAwKTsKKworc2hv
dWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSAwOworICAgIHggPz89IDQyOworICAgIHJl
dHVybiB4OworfSwgMCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gMTsK
KyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAxKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgbGV0IHggPSAxOworICAgIHggPz89IDQyOworICAgIHJldHVybiB4OworfSwgMSk7CisKK3No
b3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gIiI7CisgICAgcmV0dXJuIHggPz89IDQy
OworfSwgIiIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9ICIiOworICAg
IHggPz89IDQyOworICAgIHJldHVybiB4OworfSwgIiIpOworCitzaG91bGRCZShmdW5jdGlvbigp
IHsKKyAgICBsZXQgeCA9ICJ0ZXN0IjsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAidGVzdCIp
OworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9ICJ0ZXN0IjsKKyAgICB4ID8/
PSA0MjsKKyAgICByZXR1cm4geDsKK30sICJ0ZXN0Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkg
eworICAgIGxldCB4ID0ge307CisgICAgcmV0dXJuIHggPz89IDQyOworfSwgT2JqZWN0KTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7fTsKKyAgICB4ID8/PSA0MjsKKyAg
ICByZXR1cm4geDsKK30sIE9iamVjdCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxl
dCB4ID0gW107CisgICAgcmV0dXJuIHggPz89IDQyOworfSwgQXJyYXkpOworCitzaG91bGRCZShm
dW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IFtdOworICAgIHggPz89IDQyOworICAgIHJldHVybiB4
OworfSwgQXJyYXkpOworCisKKworc2hvdWxkVGhyb3coZnVuY3Rpb24oKSB7CisgICAgY29uc3Qg
eCA9IHVuZGVmaW5lZDsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCBUeXBlRXJyb3IpOworCitz
aG91bGRUaHJvdyhmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0gbnVsbDsKKyAgICByZXR1cm4g
eCA/Pz0gNDI7Cit9LCBUeXBlRXJyb3IpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBj
b25zdCB4ID0gdHJ1ZTsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCB0cnVlKTsKKworc2hvdWxk
QmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHRydWU7CisgICAgeCA/Pz0gNDI7CisgICAg
cmV0dXJuIHg7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3Qg
eCA9IGZhbHNlOworICAgIHJldHVybiB4ID8/PSA0MjsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IGZhbHNlOworICAgIHggPz89IDQyOworICAgIHJl
dHVybiB4OworfSwgZmFsc2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4
ID0gMDsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAwKTsKKworc2hvdWxkQmUoZnVuY3Rpb24o
KSB7CisgICAgY29uc3QgeCA9IDA7CisgICAgeCA/Pz0gNDI7CisgICAgcmV0dXJuIHg7Cit9LCAw
KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IDE7CisgICAgcmV0dXJu
IHggPz89IDQyOworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHgg
PSAxOworICAgIHggPz89IDQyOworICAgIHJldHVybiB4OworfSwgMSk7CisKK3Nob3VsZEJlKGZ1
bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSAiIjsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAi
Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSAiIjsKKyAgICB4ID8/
PSA0MjsKKyAgICByZXR1cm4geDsKK30sICIiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgY29uc3QgeCA9ICJ0ZXN0IjsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCAidGVzdCIpOwor
CitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0gInRlc3QiOworICAgIHJldHVy
biB4ID8/PSA0MjsKK30sICJ0ZXN0Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNv
bnN0IHggPSB7fTsKKyAgICByZXR1cm4geCA/Pz0gNDI7Cit9LCBPYmplY3QpOworCitzaG91bGRC
ZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge307CisgICAgcmV0dXJuIHggPz89IDQyOwor
fSwgT2JqZWN0KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFtdOwor
ICAgIHJldHVybiB4ID8/PSA0MjsKK30sIEFycmF5KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7
CisgICAgY29uc3QgeCA9IFtdOworICAgIHJldHVybiB4ID8/PSA0MjsKK30sIEFycmF5KTsKKwor
CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge307CisgICAgcmV0dXJuIHgu
YSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0g
e307CisgICAgeC5hID8/PSA0MjsKKyAgICByZXR1cm4geC5hOworfSwgNDIpOworCitzaG91bGRC
ZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiB1bmRlZmluZWR9OworICAgIHJldHVybiB4
LmEgPz89IDQyOworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9
IHthOiB1bmRlZmluZWR9OworICAgIHguYSA/Pz0gNDI7CisgICAgcmV0dXJuIHguYTsKK30sIDQy
KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTogbnVsbH07CisgICAg
cmV0dXJuIHguYSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0ge2E6IG51bGx9OworICAgIHguYSA/Pz0gNDI7CisgICAgcmV0dXJuIHguYTsKK30s
IDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTogdHJ1ZX07Cisg
ICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7
CisgICAgbGV0IHggPSB7YTogdHJ1ZX07CisgICAgeC5hID8/PSA0MjsKKyAgICByZXR1cm4geC5h
OworfSwgdHJ1ZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6IGZh
bHNlfTsKKyAgICByZXR1cm4geC5hID8/PSA0MjsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVu
Y3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTogZmFsc2V9OworICAgIHguYSA/Pz0gNDI7CisgICAg
cmV0dXJuIHguYTsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0
IHggPSB7YTogMH07CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCAwKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTogMH07CisgICAgeC5hID8/PSA0MjsKKyAgICBy
ZXR1cm4geC5hOworfSwgMCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0g
e2E6IDF9OworICAgIHJldHVybiB4LmEgPz89IDQyOworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0
aW9uKCkgeworICAgIGxldCB4ID0ge2E6IDF9OworICAgIHguYSA/Pz0gNDI7CisgICAgcmV0dXJu
IHguYTsKK30sIDEpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiAi
In07CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCAiIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGxldCB4ID0ge2E6ICIifTsKKyAgICB4LmEgPz89IDQyOworICAgIHJldHVybiB4
LmE7Cit9LCAiIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6ICJ0
ZXN0In07CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCAidGVzdCIpOworCitzaG91bGRCZShm
dW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiAidGVzdCJ9OworICAgIHguYSA/Pz0gNDI7Cisg
ICAgcmV0dXJuIHguYTsKK30sICJ0ZXN0Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0ge2E6IHt9fTsKKyAgICByZXR1cm4geC5hID8/PSA0MjsKK30sIE9iamVjdCk7CisK
K3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6IHt9fTsKKyAgICB4LmEgPz89
IDQyOworICAgIHJldHVybiB4LmE7Cit9LCBPYmplY3QpOworCitzaG91bGRCZShmdW5jdGlvbigp
IHsKKyAgICBsZXQgeCA9IHthOiBbXX07CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCBBcnJh
eSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6IFtdfTsKKyAgICB4
LmEgPz89IDQyOworICAgIHJldHVybiB4LmE7Cit9LCBBcnJheSk7CisKKworCitzaG91bGRCZShm
dW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge307CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9
LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7fTsKKyAgICB4
LmEgPz89IDQyOworICAgIHJldHVybiB4LmE7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGNvbnN0IHggPSB7YTogdW5kZWZpbmVkfTsKKyAgICByZXR1cm4geC5hID8/PSA0
MjsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHthOiB1
bmRlZmluZWR9OworICAgIHguYSA/Pz0gNDI7CisgICAgcmV0dXJuIHguYTsKK30sIDQyKTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHthOiBudWxsfTsKKyAgICByZXR1
cm4geC5hID8/PSA0MjsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29u
c3QgeCA9IHthOiBudWxsfTsKKyAgICB4LmEgPz89IDQyOworICAgIHJldHVybiB4LmE7Cit9LCA0
Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogdHJ1ZX07Cisg
ICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7
CisgICAgY29uc3QgeCA9IHthOiB0cnVlfTsKKyAgICB4LmEgPz89IDQyOworICAgIHJldHVybiB4
LmE7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHth
OiBmYWxzZX07CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJl
KGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogZmFsc2V9OworICAgIHguYSA/Pz0gNDI7
CisgICAgcmV0dXJuIHguYTsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgY29uc3QgeCA9IHthOiAwfTsKKyAgICByZXR1cm4geC5hID8/PSA0MjsKK30sIDApOworCitz
aG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6IDB9OworICAgIHguYSA/Pz0g
NDI7CisgICAgcmV0dXJuIHguYTsKK30sIDApOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAg
ICBjb25zdCB4ID0ge2E6IDF9OworICAgIHJldHVybiB4LmEgPz89IDQyOworfSwgMSk7CisKK3No
b3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogMX07CisgICAgeC5hID8/PSA0
MjsKKyAgICByZXR1cm4geC5hOworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGNvbnN0IHggPSB7YTogIiJ9OworICAgIHJldHVybiB4LmEgPz89IDQyOworfSwgIiIpOworCitz
aG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6ICIifTsKKyAgICB4LmEgPz89
IDQyOworICAgIHJldHVybiB4LmE7Cit9LCAiIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgewor
ICAgIGNvbnN0IHggPSB7YTogInRlc3QifTsKKyAgICByZXR1cm4geC5hID8/PSA0MjsKK30sICJ0
ZXN0Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogInRlc3Qi
fTsKKyAgICB4LmEgPz89IDQyOworICAgIHJldHVybiB4LmE7Cit9LCAidGVzdCIpOworCitzaG91
bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6IHt9fTsKKyAgICByZXR1cm4geC5h
ID8/PSA0MjsKK30sIE9iamVjdCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0
IHggPSB7YToge319OworICAgIHguYSA/Pz0gNDI7CisgICAgcmV0dXJuIHguYTsKK30sIE9iamVj
dCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogW119OworICAg
IHJldHVybiB4LmEgPz89IDQyOworfSwgQXJyYXkpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsK
KyAgICBjb25zdCB4ID0ge2E6IFtdfTsKKyAgICB4LmEgPz89IDQyOworICAgIHJldHVybiB4LmE7
Cit9LCBBcnJheSk7CisKKworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHt9
OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlv
bigpIHsKKyAgICBsZXQgeCA9IHt9OworICAgIHhbImEiXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhb
ImEiXTsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTog
dW5kZWZpbmVkfTsKKyAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKK30sIDQyKTsKKworc2hvdWxk
QmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7YTogdW5kZWZpbmVkfTsKKyAgICB4WyJhIl0g
Pz89IDQyOworICAgIHJldHVybiB4WyJhIl07Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGxldCB4ID0ge2E6IG51bGx9OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwor
fSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiBudWxsfTsK
KyAgICB4WyJhIl0gPz89IDQyOworICAgIHJldHVybiB4WyJhIl07Cit9LCA0Mik7CisKK3Nob3Vs
ZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6IHRydWV9OworICAgIHJldHVybiB4WyJh
Il0gPz89IDQyOworfSwgdHJ1ZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0ge2E6IHRydWV9OworICAgIHhbImEiXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhbImEiXTsKK30s
IHRydWUpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiBmYWxzZX07
CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0
aW9uKCkgeworICAgIGxldCB4ID0ge2E6IGZhbHNlfTsKKyAgICB4WyJhIl0gPz89IDQyOworICAg
IHJldHVybiB4WyJhIl07Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0ge2E6IDB9OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgMCk7CisKK3No
b3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0ge2E6IDB9OworICAgIHhbImEiXSA/Pz0g
NDI7CisgICAgcmV0dXJuIHhbImEiXTsKK30sIDApOworCitzaG91bGRCZShmdW5jdGlvbigpIHsK
KyAgICBsZXQgeCA9IHthOiAxfTsKKyAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKK30sIDEpOwor
CitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiAxfTsKKyAgICB4WyJhIl0g
Pz89IDQyOworICAgIHJldHVybiB4WyJhIl07Cit9LCAxKTsKKworc2hvdWxkQmUoZnVuY3Rpb24o
KSB7CisgICAgbGV0IHggPSB7YTogIiJ9OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwg
IiIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiAiIn07CisgICAg
eFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgIiIpOworCitzaG91bGRCZShm
dW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiAidGVzdCJ9OworICAgIHJldHVybiB4WyJhIl0g
Pz89IDQyOworfSwgInRlc3QiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHgg
PSB7YTogInRlc3QifTsKKyAgICB4WyJhIl0gPz89IDQyOworICAgIHJldHVybiB4WyJhIl07Cit9
LCAidGVzdCIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiB7fX07
CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCBPYmplY3QpOworCitzaG91bGRCZShmdW5j
dGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiB7fX07CisgICAgeFsiYSJdID8/PSA0MjsKKyAgICBy
ZXR1cm4geFsiYSJdOworfSwgT2JqZWN0KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAg
bGV0IHggPSB7YTogW119OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgQXJyYXkpOwor
CitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHthOiBbXX07CisgICAgeFsiYSJd
ID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgQXJyYXkpOworCisKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHt9OworICAgIHJldHVybiB4WyJhIl0gPz89IDQy
OworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge307Cisg
ICAgeFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgNDIpOworCitzaG91bGRC
ZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6IHVuZGVmaW5lZH07CisgICAgcmV0dXJu
IHhbImEiXSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNv
bnN0IHggPSB7YTogdW5kZWZpbmVkfTsKKyAgICB4WyJhIl0gPz89IDQyOworICAgIHJldHVybiB4
WyJhIl07Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7
YTogbnVsbH07CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJl
KGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogbnVsbH07CisgICAgeFsiYSJdID8/PSA0
MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsK
KyAgICBjb25zdCB4ID0ge2E6IHRydWV9OworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwg
dHJ1ZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogdHJ1ZX07
CisgICAgeFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgdHJ1ZSk7CisKK3No
b3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSB7YTogZmFsc2V9OworICAgIHJldHVy
biB4WyJhIl0gPz89IDQyOworfSwgZmFsc2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAg
ICBjb25zdCB4ID0ge2E6IGZhbHNlfTsKKyAgICB4WyJhIl0gPz89IDQyOworICAgIHJldHVybiB4
WyJhIl07Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHgg
PSB7YTogMH07CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCAwKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHthOiAwfTsKKyAgICB4WyJhIl0gPz89IDQyOwor
ICAgIHJldHVybiB4WyJhIl07Cit9LCAwKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAg
Y29uc3QgeCA9IHthOiAxfTsKKyAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKK30sIDEpOworCitz
aG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6IDF9OworICAgIHhbImEiXSA/
Pz0gNDI7CisgICAgcmV0dXJuIHhbImEiXTsKK30sIDEpOworCitzaG91bGRCZShmdW5jdGlvbigp
IHsKKyAgICBjb25zdCB4ID0ge2E6ICIifTsKKyAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKK30s
ICIiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHthOiAiIn07Cisg
ICAgeFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgIiIpOworCitzaG91bGRC
ZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6ICJ0ZXN0In07CisgICAgcmV0dXJuIHhb
ImEiXSA/Pz0gNDI7Cit9LCAidGVzdCIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBj
b25zdCB4ID0ge2E6ICJ0ZXN0In07CisgICAgeFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsi
YSJdOworfSwgInRlc3QiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9
IHthOiB7fX07CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCBPYmplY3QpOworCitzaG91
bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0ge2E6IHt9fTsKKyAgICB4WyJhIl0gPz89
IDQyOworICAgIHJldHVybiB4WyJhIl07Cit9LCBPYmplY3QpOworCitzaG91bGRCZShmdW5jdGlv
bigpIHsKKyAgICBjb25zdCB4ID0ge2E6IFtdfTsKKyAgICByZXR1cm4geFsiYSJdID8/PSA0MjsK
K30sIEFycmF5KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IHthOiBb
XX07CisgICAgeFsiYSJdID8/PSA0MjsKKyAgICByZXR1cm4geFsiYSJdOworfSwgQXJyYXkpOwor
CisKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBbXTsKKyAgICByZXR1cm4g
eFswXSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0gW107CisgICAgeFswXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhbMF07Cit9LCA0Mik7CisKK3No
b3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gW3VuZGVmaW5lZF07CisgICAgcmV0dXJu
IHhbMF0gPz89IDQyOworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQg
eCA9IFt1bmRlZmluZWRdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwg
NDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IFtudWxsXTsKKyAgICBy
ZXR1cm4geFswXSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0gW251bGxdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwg
NDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IFt0cnVlXTsKKyAgICBy
ZXR1cm4geFswXSA/Pz0gNDI7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgbGV0IHggPSBbdHJ1ZV07CisgICAgeFswXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhbMF07Cit9
LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBbZmFsc2VdOwor
ICAgIHJldHVybiB4WzBdID8/PSA0MjsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24o
KSB7CisgICAgbGV0IHggPSBbZmFsc2VdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4
WzBdOworfSwgZmFsc2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IFsw
XTsKKyAgICByZXR1cm4geFswXSA/Pz0gNDI7Cit9LCAwKTsKKworc2hvdWxkQmUoZnVuY3Rpb24o
KSB7CisgICAgbGV0IHggPSBbMF07CisgICAgeFswXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhbMF07
Cit9LCAwKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBbMV07CisgICAg
cmV0dXJuIHhbMF0gPz89IDQyOworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0gWzFdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwgMSk7
CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gWyIiXTsKKyAgICByZXR1cm4g
eFswXSA/Pz0gNDI7Cit9LCAiIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0gWyIiXTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFswXTsKK30sICIiKTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBbInRlc3QiXTsKKyAgICByZXR1cm4g
eFswXSA/Pz0gNDI7Cit9LCAidGVzdCIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBs
ZXQgeCA9IFsidGVzdCJdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwg
InRlc3QiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBbe31dOworICAg
IHJldHVybiB4WzBdID8/PSA0MjsKK30sIE9iamVjdCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkg
eworICAgIGxldCB4ID0gW3t9XTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFswXTsK
K30sIE9iamVjdCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gW1tdXTsK
KyAgICByZXR1cm4geFswXSA/Pz0gNDI7Cit9LCBBcnJheSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgIGxldCB4ID0gW1tdXTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFsw
XTsKK30sIEFycmF5KTsKKworCisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHgg
PSBbXTsKKyAgICByZXR1cm4geFswXSA/Pz0gNDI7Cit9LCA0Mik7CisKK3Nob3VsZEJlKGZ1bmN0
aW9uKCkgeworICAgIGNvbnN0IHggPSBbXTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4g
eFswXTsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFt1
bmRlZmluZWRdOworICAgIHJldHVybiB4WzBdID8/PSA0MjsKK30sIDQyKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFt1bmRlZmluZWRdOworICAgIHhbMF0gPz89IDQy
OworICAgIHJldHVybiB4WzBdOworfSwgNDIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAg
ICBjb25zdCB4ID0gW251bGxdOworICAgIHJldHVybiB4WzBdID8/PSA0MjsKK30sIDQyKTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFtudWxsXTsKKyAgICB4WzBdID8/
PSA0MjsKKyAgICByZXR1cm4geFswXTsKK30sIDQyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7
CisgICAgY29uc3QgeCA9IFt0cnVlXTsKKyAgICByZXR1cm4geFswXSA/Pz0gNDI7Cit9LCB0cnVl
KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFt0cnVlXTsKKyAgICB4
WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFswXTsKK30sIHRydWUpOworCitzaG91bGRCZShmdW5j
dGlvbigpIHsKKyAgICBjb25zdCB4ID0gW2ZhbHNlXTsKKyAgICByZXR1cm4geFswXSA/Pz0gNDI7
Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSBbZmFs
c2VdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwgZmFsc2UpOworCitz
aG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0gWzBdOworICAgIHJldHVybiB4WzBd
ID8/PSA0MjsKK30sIDApOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0g
WzBdOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOworfSwgMCk7CisKK3Nob3Vs
ZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSBbMV07CisgICAgcmV0dXJuIHhbMF0gPz89
IDQyOworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSBbMV07
CisgICAgeFswXSA/Pz0gNDI7CisgICAgcmV0dXJuIHhbMF07Cit9LCAxKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFsiIl07CisgICAgcmV0dXJuIHhbMF0gPz89IDQy
OworfSwgIiIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0gWyIiXTsK
KyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFswXTsKK30sICIiKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFsidGVzdCJdOworICAgIHJldHVybiB4WzBdID8/
PSA0MjsKK30sICJ0ZXN0Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHgg
PSBbInRlc3QiXTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4geFswXTsKK30sICJ0ZXN0
Iik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGNvbnN0IHggPSBbe31dOworICAgIHJl
dHVybiB4WzBdID8/PSA0MjsKK30sIE9iamVjdCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgewor
ICAgIGNvbnN0IHggPSBbe31dOworICAgIHhbMF0gPz89IDQyOworICAgIHJldHVybiB4WzBdOwor
fSwgT2JqZWN0KTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IFtbXV07
CisgICAgcmV0dXJuIHhbMF0gPz89IDQyOworfSwgQXJyYXkpOworCitzaG91bGRCZShmdW5jdGlv
bigpIHsKKyAgICBjb25zdCB4ID0gW1tdXTsKKyAgICB4WzBdID8/PSA0MjsKKyAgICByZXR1cm4g
eFswXTsKK30sIEFycmF5KTsKKworCisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0gZmFsc2U7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAgICByZXR1cm4geCA/
Pz0geSArIHo7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0gZmFsc2U7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAgICByZXR1cm4geCA/
Pz0geSA9IHo7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4
ID0gZmFsc2U7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAgICByZXR1cm4geCA/
Pz0geSAmJiB6OworfSwgZmFsc2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQg
eCA9IGZhbHNlOworICAgIGxldCB5ID0gMTsKKyAgICBsZXQgeiA9IDI7CisgICAgcmV0dXJuIHgg
Pz89IHkgPz8gejsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0
IHggPSBmYWxzZTsKKyAgICBsZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVybiB4
ID8/PSB5IHx8IHo7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxl
dCB4ID0gZmFsc2U7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAgICByZXR1cm4g
eCA/Pz0geSAmJj0gejsKK30sIGZhbHNlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAg
bGV0IHggPSBmYWxzZTsKKyAgICBsZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVy
biB4ID8/PSB5ID8/PSB6OworfSwgZmFsc2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAg
ICBsZXQgeCA9IGZhbHNlOworICAgIGxldCB5ID0gMTsKKyAgICBsZXQgeiA9IDI7CisgICAgcmV0
dXJuIHggPz89IHkgfHw9IHo7Cit9LCBmYWxzZSk7CisKKworCitzaG91bGRCZShmdW5jdGlvbigp
IHsKKyAgICBsZXQgeCA9IG51bGw7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAg
ICByZXR1cm4geCA/Pz0geSArIHo7Cit9LCAzKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgbGV0IHggPSBudWxsOworICAgIGxldCB5ID0gMTsKKyAgICBsZXQgeiA9IDI7CisgICAgcmV0
dXJuIHggPz89IHkgPSB6OworfSwgMik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxl
dCB4ID0gbnVsbDsKKyAgICBsZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVybiB4
ID8/PSB5ICYmIHo7Cit9LCAyKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHgg
PSBudWxsOworICAgIGxldCB5ID0gMTsKKyAgICBsZXQgeiA9IDI7CisgICAgcmV0dXJuIHggPz89
IHkgPz8gejsKK30sIDEpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IG51
bGw7CisgICAgbGV0IHkgPSAxOworICAgIGxldCB6ID0gMjsKKyAgICByZXR1cm4geCA/Pz0geSB8
fCB6OworfSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gbnVsbDsK
KyAgICBsZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVybiB4ID8/PSB5ICYmPSB6
OworfSwgMik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gbnVsbDsKKyAg
ICBsZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVybiB4ID8/PSB5ID8/PSB6Owor
fSwgMSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCB4ID0gbnVsbDsKKyAgICBs
ZXQgeSA9IDE7CisgICAgbGV0IHogPSAyOworICAgIHJldHVybiB4ID8/PSB5IHx8PSB6OworfSwg
MSk7CisKKworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgbG9nID0gW107CisKKyAg
ICBsZXQgYSA9IHRydWU7CisgICAgbGV0IHggPSB7CisgICAgICAgIGdldCBhKCkgeworICAgICAg
ICAgICAgbG9nLnB1c2goImdldCIpOworICAgICAgICAgICAgcmV0dXJuIGE7CisgICAgICAgIH0s
CisgICAgICAgIHNldCBhKHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQiKTsKKyAgICAg
ICAgICAgIGEgPSB2OworICAgICAgICB9LAorICAgIH07CisKKyAgICB4LmEgPz89IDQyOworICAg
IHguYSA/Pz0gNDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIGE7Cit9LCAi
Z2V0IGdldCB0cnVlIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCBsb2cgPSBb
XTsKKworICAgIGxldCBhID0gZmFsc2U7CisgICAgbGV0IHggPSB7CisgICAgICAgIGdldCBhKCkg
eworICAgICAgICAgICAgbG9nLnB1c2goImdldCIpOworICAgICAgICAgICAgcmV0dXJuIGE7Cisg
ICAgICAgIH0sCisgICAgICAgIHNldCBhKHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQi
KTsKKyAgICAgICAgICAgIGEgPSB2OworICAgICAgICB9LAorICAgIH07CisKKyAgICB4LmEgPz89
IDQyOworICAgIHguYSA/Pz0gNDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiAr
IGE7Cit9LCAiZ2V0IGdldCBmYWxzZSIpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBs
ZXQgbG9nID0gW107CisKKyAgICBsZXQgYSA9IHVuZGVmaW5lZDsKKyAgICBsZXQgeCA9IHsKKyAg
ICAgICAgZ2V0IGEoKSB7CisgICAgICAgICAgICBsb2cucHVzaCgiZ2V0Iik7CisgICAgICAgICAg
ICByZXR1cm4gYTsKKyAgICAgICAgfSwKKyAgICAgICAgc2V0IGEodikgeworICAgICAgICAgICAg
bG9nLnB1c2goInNldCIpOworICAgICAgICAgICAgYSA9IHY7CisgICAgICAgIH0sCisgICAgfTsK
KworICAgIHguYSA/Pz0gNDI7CisgICAgeC5hID8/PSA0MjsKKworICAgIHJldHVybiBsb2cuam9p
bigiICIpICsgIiAiICsgYTsKK30sICJnZXQgc2V0IGdldCA0MiIpOworCisKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgbGV0IGxvZyA9IFtdOworCisgICAgbGV0IGEgPSB0cnVlOworICAg
IGxldCB4ID0geworICAgICAgICBnZXQgYSgpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQi
KTsKKyAgICAgICAgICAgIHJldHVybiBhOworICAgICAgICB9LAorICAgICAgICBzZXQgYSh2KSB7
CisgICAgICAgICAgICBsb2cucHVzaCgic2V0Iik7CisgICAgICAgICAgICBhID0gdjsKKyAgICAg
ICAgfSwKKyAgICB9OworCisgICAgeFsiYSJdID8/PSA0MjsKKyAgICB4WyJhIl0gPz89IDQyOwor
CisgICAgcmV0dXJuIGxvZy5qb2luKCIgIikgKyAiICIgKyBhOworfSwgImdldCBnZXQgdHJ1ZSIp
OworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgbG9nID0gW107CisKKyAgICBsZXQg
YSA9IGZhbHNlOworICAgIGxldCB4ID0geworICAgICAgICBnZXQgYSgpIHsKKyAgICAgICAgICAg
IGxvZy5wdXNoKCJnZXQiKTsKKyAgICAgICAgICAgIHJldHVybiBhOworICAgICAgICB9LAorICAg
ICAgICBzZXQgYSh2KSB7CisgICAgICAgICAgICBsb2cucHVzaCgic2V0Iik7CisgICAgICAgICAg
ICBhID0gdjsKKyAgICAgICAgfSwKKyAgICB9OworCisgICAgeFsiYSJdID8/PSA0MjsKKyAgICB4
WyJhIl0gPz89IDQyOworCisgICAgcmV0dXJuIGxvZy5qb2luKCIgIikgKyAiICIgKyBhOworfSwg
ImdldCBnZXQgZmFsc2UiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IGxvZyA9
IFtdOworCisgICAgbGV0IGEgPSB1bmRlZmluZWQ7CisgICAgbGV0IHggPSB7CisgICAgICAgIGdl
dCBhKCkgeworICAgICAgICAgICAgbG9nLnB1c2goImdldCIpOworICAgICAgICAgICAgcmV0dXJu
IGE7CisgICAgICAgIH0sCisgICAgICAgIHNldCBhKHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNo
KCJzZXQiKTsKKyAgICAgICAgICAgIGEgPSB2OworICAgICAgICB9LAorICAgIH07CisKKyAgICB4
WyJhIl0gPz89IDQyOworICAgIHhbImEiXSA/Pz0gNDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4o
IiAiKSArICIgIiArIGE7Cit9LCAiZ2V0IHNldCBnZXQgNDIiKTsKKworCisKK3Nob3VsZEJlKGZ1
bmN0aW9uKCkgeworICAgIGxldCBsb2cgPSBbXTsKKworICAgIGNsYXNzIFBhcmVudCB7CisgICAg
ICAgIGdldCBhKCkgeworICAgICAgICAgICAgbG9nLnB1c2goImdldC1wYXJlbnQiKTsKKyAgICAg
ICAgICAgIHJldHVybiB0aGlzLl9hOworICAgICAgICB9CisgICAgICAgIHNldCBhKHYpIHsKKyAg
ICAgICAgICAgIGxvZy5wdXNoKCJzZXQtcGFyZW50Iik7CisgICAgICAgICAgICB0aGlzLl9hID8/
PSB2OworICAgICAgICB9CisgICAgfQorICAgIGNsYXNzIENoaWxkIGV4dGVuZHMgUGFyZW50IHsK
KyAgICAgICAgZ2V0IGEoKSB7CisgICAgICAgICAgICBsb2cucHVzaCgiZ2V0LWNoaWxkIik7Cisg
ICAgICAgICAgICByZXR1cm4gc3VwZXIuYTsKKyAgICAgICAgfQorICAgICAgICBzZXQgYSh2KSB7
CisgICAgICAgICAgICBsb2cucHVzaCgic2V0LWNoaWxkIik7CisgICAgICAgICAgICBzdXBlci5h
ID8/PSB2OworICAgICAgICB9CisgICAgfQorCisgICAgbGV0IHggPSBuZXcgQ2hpbGQ7CisgICAg
eC5fYSA9IHRydWU7CisgICAgeC5hID8/PSA0MjsKKyAgICB4LmEgPz89IDQyOworCisgICAgcmV0
dXJuIGxvZy5qb2luKCIgIikgKyAiICIgKyB4Ll9hOworfSwgImdldC1jaGlsZCBnZXQtcGFyZW50
IGdldC1jaGlsZCBnZXQtcGFyZW50IHRydWUiKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7Cisg
ICAgbGV0IGxvZyA9IFtdOworCisgICAgY2xhc3MgUGFyZW50IHsKKyAgICAgICAgZ2V0IGEoKSB7
CisgICAgICAgICAgICBsb2cucHVzaCgiZ2V0LXBhcmVudCIpOworICAgICAgICAgICAgcmV0dXJu
IHRoaXMuX2E7CisgICAgICAgIH0KKyAgICAgICAgc2V0IGEodikgeworICAgICAgICAgICAgbG9n
LnB1c2goInNldC1wYXJlbnQiKTsKKyAgICAgICAgICAgIHRoaXMuX2EgPz89IHY7CisgICAgICAg
IH0KKyAgICB9CisgICAgY2xhc3MgQ2hpbGQgZXh0ZW5kcyBQYXJlbnQgeworICAgICAgICBnZXQg
YSgpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtY2hpbGQiKTsKKyAgICAgICAgICAgIHJl
dHVybiBzdXBlci5hOworICAgICAgICB9CisgICAgICAgIHNldCBhKHYpIHsKKyAgICAgICAgICAg
IGxvZy5wdXNoKCJzZXQtY2hpbGQiKTsKKyAgICAgICAgICAgIHN1cGVyLmEgPz89IHY7CisgICAg
ICAgIH0KKyAgICB9CisKKyAgICBsZXQgeCA9IG5ldyBDaGlsZDsKKyAgICB4Ll9hID0gZmFsc2U7
CisgICAgeC5hID8/PSA0MjsKKyAgICB4LmEgPz89IDQyOworCisgICAgcmV0dXJuIGxvZy5qb2lu
KCIgIikgKyAiICIgKyB4Ll9hOworfSwgImdldC1jaGlsZCBnZXQtcGFyZW50IGdldC1jaGlsZCBn
ZXQtcGFyZW50IGZhbHNlIik7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCBsb2cg
PSBbXTsKKworICAgIGNsYXNzIFBhcmVudCB7CisgICAgICAgIGdldCBhKCkgeworICAgICAgICAg
ICAgbG9nLnB1c2goImdldC1wYXJlbnQiKTsKKyAgICAgICAgICAgIHJldHVybiB0aGlzLl9hOwor
ICAgICAgICB9CisgICAgICAgIHNldCBhKHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQt
cGFyZW50Iik7CisgICAgICAgICAgICB0aGlzLl9hID8/PSB2OworICAgICAgICB9CisgICAgfQor
ICAgIGNsYXNzIENoaWxkIGV4dGVuZHMgUGFyZW50IHsKKyAgICAgICAgZ2V0IGEoKSB7CisgICAg
ICAgICAgICBsb2cucHVzaCgiZ2V0LWNoaWxkIik7CisgICAgICAgICAgICByZXR1cm4gc3VwZXIu
YTsKKyAgICAgICAgfQorICAgICAgICBzZXQgYSh2KSB7CisgICAgICAgICAgICBsb2cucHVzaCgi
c2V0LWNoaWxkIik7CisgICAgICAgICAgICBzdXBlci5hID8/PSB2OworICAgICAgICB9CisgICAg
fQorCisgICAgbGV0IHggPSBuZXcgQ2hpbGQ7CisgICAgeC5fYSA9IHVuZGVmaW5lZDsKKyAgICB4
LmEgPz89IDQyOworICAgIHguYSA/Pz0gNDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSAr
ICIgIiArIHguX2E7Cit9LCAiZ2V0LWNoaWxkIGdldC1wYXJlbnQgc2V0LWNoaWxkIGdldC1wYXJl
bnQgc2V0LXBhcmVudCBnZXQtY2hpbGQgZ2V0LXBhcmVudCA0MiIpOworCisKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgbGV0IGxvZyA9IFtdOworCisgICAgY2xhc3MgUGFyZW50IHsKKyAg
ICAgICAgZ2V0IGEoKSB7CisgICAgICAgICAgICBsb2cucHVzaCgiZ2V0LXBhcmVudCIpOworICAg
ICAgICAgICAgcmV0dXJuIHRoaXMuX2E7CisgICAgICAgIH0KKyAgICAgICAgc2V0IGEodikgewor
ICAgICAgICAgICAgbG9nLnB1c2goInNldC1wYXJlbnQiKTsKKyAgICAgICAgICAgIHRoaXMuX2Eg
Pz89IHY7CisgICAgICAgIH0KKyAgICB9CisgICAgY2xhc3MgQ2hpbGQgZXh0ZW5kcyBQYXJlbnQg
eworICAgICAgICBnZXQgYSgpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtY2hpbGQiKTsK
KyAgICAgICAgICAgIHJldHVybiBzdXBlclsiYSJdOworICAgICAgICB9CisgICAgICAgIHNldCBh
KHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQtY2hpbGQiKTsKKyAgICAgICAgICAgIHN1
cGVyWyJhIl0gPz89IHY7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBsZXQgeCA9IG5ldyBDaGls
ZDsKKyAgICB4Ll9hID0gdHJ1ZTsKKyAgICB4WyJhIl0gPz89IDQyOworICAgIHhbImEiXSA/Pz0g
NDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIHguX2E7Cit9LCAiZ2V0LWNo
aWxkIGdldC1wYXJlbnQgZ2V0LWNoaWxkIGdldC1wYXJlbnQgdHJ1ZSIpOworCitzaG91bGRCZShm
dW5jdGlvbigpIHsKKyAgICBsZXQgbG9nID0gW107CisKKyAgICBjbGFzcyBQYXJlbnQgeworICAg
ICAgICBnZXQgYSgpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtcGFyZW50Iik7CisgICAg
ICAgICAgICByZXR1cm4gdGhpcy5fYTsKKyAgICAgICAgfQorICAgICAgICBzZXQgYSh2KSB7Cisg
ICAgICAgICAgICBsb2cucHVzaCgic2V0LXBhcmVudCIpOworICAgICAgICAgICAgdGhpcy5fYSA/
Pz0gdjsKKyAgICAgICAgfQorICAgIH0KKyAgICBjbGFzcyBDaGlsZCBleHRlbmRzIFBhcmVudCB7
CisgICAgICAgIGdldCBhKCkgeworICAgICAgICAgICAgbG9nLnB1c2goImdldC1jaGlsZCIpOwor
ICAgICAgICAgICAgcmV0dXJuIHN1cGVyWyJhIl07CisgICAgICAgIH0KKyAgICAgICAgc2V0IGEo
dikgeworICAgICAgICAgICAgbG9nLnB1c2goInNldC1jaGlsZCIpOworICAgICAgICAgICAgc3Vw
ZXJbImEiXSA/Pz0gdjsKKyAgICAgICAgfQorICAgIH0KKworICAgIGxldCB4ID0gbmV3IENoaWxk
OworICAgIHguX2EgPSBmYWxzZTsKKyAgICB4WyJhIl0gPz89IDQyOworICAgIHhbImEiXSA/Pz0g
NDI7CisKKyAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIHguX2E7Cit9LCAiZ2V0LWNo
aWxkIGdldC1wYXJlbnQgZ2V0LWNoaWxkIGdldC1wYXJlbnQgZmFsc2UiKTsKKworc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7CisgICAgbGV0IGxvZyA9IFtdOworCisgICAgY2xhc3MgUGFyZW50IHsKKyAg
ICAgICAgZ2V0IGEoKSB7CisgICAgICAgICAgICBsb2cucHVzaCgiZ2V0LXBhcmVudCIpOworICAg
ICAgICAgICAgcmV0dXJuIHRoaXMuX2E7CisgICAgICAgIH0KKyAgICAgICAgc2V0IGEodikgewor
ICAgICAgICAgICAgbG9nLnB1c2goInNldC1wYXJlbnQiKTsKKyAgICAgICAgICAgIHRoaXMuX2Eg
Pz89IHY7CisgICAgICAgIH0KKyAgICB9CisgICAgY2xhc3MgQ2hpbGQgZXh0ZW5kcyBQYXJlbnQg
eworICAgICAgICBnZXQgYSgpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtY2hpbGQiKTsK
KyAgICAgICAgICAgIHJldHVybiBzdXBlclsiYSJdOworICAgICAgICB9CisgICAgICAgIHNldCBh
KHYpIHsKKyAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQtY2hpbGQiKTsKKyAgICAgICAgICAgIHN1
cGVyWyJhIl0gPz89IHY7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBsZXQgeCA9IG5ldyBDaGls
ZDsKKyAgICB4Ll9hID0gdW5kZWZpbmVkOworICAgIHhbImEiXSA/Pz0gNDI7CisgICAgeFsiYSJd
ID8/PSA0MjsKKworICAgIHJldHVybiBsb2cuam9pbigiICIpICsgIiAiICsgeC5fYTsKK30sICJn
ZXQtY2hpbGQgZ2V0LXBhcmVudCBzZXQtY2hpbGQgZ2V0LXBhcmVudCBzZXQtcGFyZW50IGdldC1j
aGlsZCBnZXQtcGFyZW50IDQyIik7CisKKworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBs
ZXQgeCA9IHt9OworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4LCAiYSIsIHsKKyAgICAgICAg
dmFsdWU6IHRydWUsCisgICAgICAgIHdyaXRhYmxlOiBmYWxzZSwKKyAgICB9KTsKKyAgICByZXR1
cm4geC5hID8/PSA0MjsKK30sIHRydWUpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBs
ZXQgeCA9IHt9OworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4LCAiYSIsIHsKKyAgICAgICAg
dmFsdWU6IGZhbHNlLAorICAgICAgICB3cml0YWJsZTogZmFsc2UsCisgICAgfSk7CisgICAgcmV0
dXJuIHguYSA/Pz0gNDI7Cit9LCBmYWxzZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IGxldCB4ID0ge307CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgeworICAgICAg
ICB2YWx1ZTogdW5kZWZpbmVkLAorICAgICAgICB3cml0YWJsZTogZmFsc2UsCisgICAgfSk7Cisg
ICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCA0Mik7CisKKworCitzaG91bGRCZShmdW5jdGlvbigp
IHsKKyAgICAidXNlIHN0cmljdCI7CisgICAgbGV0IHggPSB7fTsKKyAgICBPYmplY3QuZGVmaW5l
UHJvcGVydHkoeCwgImEiLCB7CisgICAgICAgIHZhbHVlOiB0cnVlLAorICAgICAgICB3cml0YWJs
ZTogZmFsc2UsCisgICAgfSk7CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCB0cnVlKTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgInVzZSBzdHJpY3QiOworICAgIGxldCB4ID0ge307
CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgeworICAgICAgICB2YWx1ZTogZmFs
c2UsCisgICAgICAgIHdyaXRhYmxlOiBmYWxzZSwKKyAgICB9KTsKKyAgICByZXR1cm4geC5hID8/
PSA0MjsKK30sIGZhbHNlKTsKKworc2hvdWxkVGhyb3coZnVuY3Rpb24oKSB7CisgICAgInVzZSBz
dHJpY3QiOworICAgIGxldCB4ID0ge307CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJh
IiwgeworICAgICAgICB2YWx1ZTogdW5kZWZpbmVkLAorICAgICAgICB3cml0YWJsZTogZmFsc2Us
CisgICAgfSk7CisgICAgcmV0dXJuIHguYSA/Pz0gNDI7Cit9LCBUeXBlRXJyb3IpOworCisKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7fTsKKyAgICBPYmplY3QuZGVmaW5l
UHJvcGVydHkoeCwgImEiLCB7CisgICAgICAgIHZhbHVlOiB0cnVlLAorICAgICAgICB3cml0YWJs
ZTogZmFsc2UsCisgICAgfSk7CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCB0cnVlKTsK
Kworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB7fTsKKyAgICBPYmplY3QuZGVm
aW5lUHJvcGVydHkoeCwgImEiLCB7CisgICAgICAgIHZhbHVlOiBmYWxzZSwKKyAgICAgICAgd3Jp
dGFibGU6IGZhbHNlLAorICAgIH0pOworICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgZmFs
c2UpOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgeCA9IHt9OworICAgIE9iamVj
dC5kZWZpbmVQcm9wZXJ0eSh4LCAiYSIsIHsKKyAgICAgICAgdmFsdWU6IHVuZGVmaW5lZCwKKyAg
ICAgICAgd3JpdGFibGU6IGZhbHNlLAorICAgIH0pOworICAgIHJldHVybiB4WyJhIl0gPz89IDQy
OworfSwgNDIpOworCisKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgInVzZSBzdHJpY3Qi
OworICAgIGxldCB4ID0ge307CisgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgewor
ICAgICAgICB2YWx1ZTogdHJ1ZSwKKyAgICAgICAgd3JpdGFibGU6IGZhbHNlLAorICAgIH0pOwor
ICAgIHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgdHJ1ZSk7CisKK3Nob3VsZEJlKGZ1bmN0aW9u
KCkgeworICAgICJ1c2Ugc3RyaWN0IjsKKyAgICBsZXQgeCA9IHt9OworICAgIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh4LCAiYSIsIHsKKyAgICAgICAgdmFsdWU6IGZhbHNlLAorICAgICAgICB3cml0
YWJsZTogZmFsc2UsCisgICAgfSk7CisgICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Cit9LCBmYWxz
ZSk7CisKK3Nob3VsZFRocm93KGZ1bmN0aW9uKCkgeworICAgICJ1c2Ugc3RyaWN0IjsKKyAgICBs
ZXQgeCA9IHt9OworICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh4LCAiYSIsIHsKKyAgICAgICAg
dmFsdWU6IHVuZGVmaW5lZCwKKyAgICAgICAgd3JpdGFibGU6IGZhbHNlLAorICAgIH0pOworICAg
IHJldHVybiB4WyJhIl0gPz89IDQyOworfSwgVHlwZUVycm9yKTsKKworCisKK3Nob3VsZEJlKGZ1
bmN0aW9uKCkgeworICAgIGxldCB4ID0gdHJ1ZTsKKyAgICAoZnVuY3Rpb24oKSB7CisgICAgICAg
IHggPz89IDQyOworICAgIH0pKCk7CisgICAgcmV0dXJuIHg7Cit9LCB0cnVlKTsKKworc2hvdWxk
QmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSBmYWxzZTsKKyAgICByZXR1cm4gKGZ1bmN0aW9u
KCkgeworICAgICAgICByZXR1cm4geCA/Pz0gNDI7CisgICAgfSkoKTsKK30sIGZhbHNlKTsKKwor
c2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgbGV0IHggPSB1bmRlZmluZWQ7CisgICAgcmV0dXJu
IChmdW5jdGlvbigpIHsKKyAgICAgICAgcmV0dXJuIHggPz89IDQyOworICAgIH0pKCk7Cit9LCA0
Mik7CisKKworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBjb25zdCB4ID0gdHJ1ZTsKKyAg
ICAoZnVuY3Rpb24oKSB7CisgICAgICAgIHggPz89IDQyOworICAgIH0pKCk7CisgICAgcmV0dXJu
IHg7Cit9LCB0cnVlKTsKKworc2hvdWxkQmUoZnVuY3Rpb24oKSB7CisgICAgY29uc3QgeCA9IGZh
bHNlOworICAgIHJldHVybiAoZnVuY3Rpb24oKSB7CisgICAgICAgIHJldHVybiB4ID8/PSA0MjsK
KyAgICB9KSgpOworfSwgZmFsc2UpOworCitzaG91bGRUaHJvdyhmdW5jdGlvbigpIHsKKyAgICBj
b25zdCB4ID0gdW5kZWZpbmVkOworICAgIHJldHVybiAoZnVuY3Rpb24oKSB7CisgICAgICAgIHJl
dHVybiB4ID8/PSA0MjsKKyAgICB9KSgpOworfSwgVHlwZUVycm9yKTsKKworCisKK3Nob3VsZEJl
KGZ1bmN0aW9uKCkgeworICAgIGxldCBjb3VudCA9IDA7CisKKyAgICBjb25zdCB4ID0gdHJ1ZTsK
KyAgICB4ID8/PSArK2NvdW50OworCisgICAgcmV0dXJuIGNvdW50OworfSwgMCk7CisKK3Nob3Vs
ZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCBjb3VudCA9IDA7CisKKyAgICBjb25zdCB4ID0gZmFs
c2U7CisgICAgeCA/Pz0gKytjb3VudDsKKworICAgIHJldHVybiBjb3VudDsKK30sIDApOworCitz
aG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBsZXQgY291bnQgPSAwOworCisgICAgY29uc3QgeCA9
IHVuZGVmaW5lZDsKKyAgICB0cnkgeworICAgICAgICB4ID8/PSArK2NvdW50OworICAgIH0gY2F0
Y2ggeyB9CisKKyAgICByZXR1cm4gY291bnQ7Cit9LCAxKTsKKworCisKK3Nob3VsZEJlKGZ1bmN0
aW9uKCkgeworICAgIGxldCBjb3VudCA9IDA7CisKKyAgICBjb25zdCB4ID0gdHJ1ZTsKKyAgICBm
dW5jdGlvbiBjYXB0dXJlKCkgeyByZXR1cm4geDsgfQorCisgICAgeCA/Pz0gKytjb3VudDsKKwor
ICAgIHJldHVybiBjb3VudDsKK30sIDApOworCitzaG91bGRCZShmdW5jdGlvbigpIHsKKyAgICBs
ZXQgY291bnQgPSAwOworCisgICAgY29uc3QgeCA9IGZhbHNlOworICAgIGZ1bmN0aW9uIGNhcHR1
cmUoKSB7IHJldHVybiB4OyB9CisKKyAgICB4ID8/PSArK2NvdW50OworCisgICAgcmV0dXJuIGNv
dW50OworfSwgMCk7CisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAgIGxldCBjb3VudCA9IDA7
CisKKyAgICBjb25zdCB4ID0gdW5kZWZpbmVkOworICAgIGZ1bmN0aW9uIGNhcHR1cmUoKSB7IHJl
dHVybiB4OyB9CisKKyAgICB0cnkgeworICAgICAgICB4ID8/PSArK2NvdW50OworICAgIH0gY2F0
Y2ggeyB9CisKKyAgICByZXR1cm4gY291bnQ7Cit9LCAxKTsKKworCisKK3Nob3VsZFRocm93KGZ1
bmN0aW9uKCkgeworICAgIHggPz89IDQyOworICAgIGxldCB4ID0gdHJ1ZTsKKyAgICByZXR1cm4g
eDsKK30sIFJlZmVyZW5jZUVycm9yKTsKKworCisKK3Nob3VsZEJlKGZ1bmN0aW9uKCkgeworICAg
IHJldHVybiB1bmRlZmluZWQgPz89IDQyOworfSwgNDIpOworCitzaG91bGRUaHJvd1N5bnRheEVy
cm9yKGBudWxsID8/PSA0MmApOworCitzaG91bGRUaHJvd1N5bnRheEVycm9yKGB0cnVlID8/PSA0
MmApOworCitzaG91bGRUaHJvd1N5bnRheEVycm9yKGBmYWxzZSA/Pz0gNDJgKTsKKworc2hvdWxk
VGhyb3dTeW50YXhFcnJvcihgMCA/Pz0gNDJgKTsKKworc2hvdWxkVGhyb3dTeW50YXhFcnJvcihg
MSA/Pz0gNDJgKTsKKworc2hvdWxkVGhyb3dTeW50YXhFcnJvcihgIiIgPz89IDQyYCk7CisKK3No
b3VsZFRocm93U3ludGF4RXJyb3IoYCJ0ZXN0IiA/Pz0gNDJgKTsKKworc2hvdWxkVGhyb3dTeW50
YXhFcnJvcihge30gPz89IDQyYCk7CisKK3Nob3VsZFRocm93U3ludGF4RXJyb3IoYFtdID8/PSA0
MmApOwpkaWZmIC0tZ2l0IGEvSlNUZXN0cy9zdHJlc3MvbG9naWNhbC1hc3NpZ25tZW50LW9wZXJh
dG9yLW51bGxpc2guanMgYi9KU1Rlc3RzL3N0cmVzcy9sb2dpY2FsLWFzc2lnbm1lbnQtb3BlcmF0
b3ItbnVsbGlzaC5qcwpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjk0NjVjYzg1ZGIw
MWUyMjIzNjNjMmUwYTJiYjU2MjZjZTlkYmM3ZC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMAotLS0gYS9KU1Rlc3RzL3N0cmVzcy9sb2dpY2FsLWFzc2lnbm1lbnQtb3Bl
cmF0b3ItbnVsbGlzaC5qcworKysgL2Rldi9udWxsCkBAIC0xLDE2OTkgKzAsMCBAQAotLy9AIHJ1
bkxvZ2ljYWxBc3NpZ25tZW50T3BlcmF0b3JzRW5hYmxlZAotCi1mdW5jdGlvbiBzaG91bGRCZShm
dW5jLCBleHBlY3RlZCkgewotICAgIGxldCBhY3R1YWwgPSBmdW5jKCk7Ci0gICAgaWYgKHR5cGVv
ZiBleHBlY3RlZCA9PT0gImZ1bmN0aW9uIiA/ICEoYWN0dWFsIGluc3RhbmNlb2YgZXhwZWN0ZWQp
IDogYWN0dWFsICE9PSBleHBlY3RlZCkKLSAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBleHBlY3Rl
ZCAke0pTT04uc3RyaW5naWZ5KGV4cGVjdGVkKX0gYnV0IGdvdCAke0pTT04uc3RyaW5naWZ5KGFj
dHVhbCl9YCk7Ci19Ci0KLWZ1bmN0aW9uIHNob3VsZFRocm93KGZ1bmMsIGVycm9yVHlwZSkgewot
ICAgIGxldCBlcnJvcjsKLSAgICB0cnkgewotICAgICAgICBmdW5jKCk7Ci0gICAgfSBjYXRjaCAo
ZSkgewotICAgICAgICBlcnJvciA9IGU7Ci0gICAgfQotCi0gICAgaWYgKCEoZXJyb3IgaW5zdGFu
Y2VvZiBlcnJvclR5cGUpKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkICR7ZXJy
b3JUeXBlLm5hbWV9IGJ1dCBzYXcgJHtlcnJvciAmJiBlcnJvci5uYW1lfSFgKTsKLX0KLQotZnVu
Y3Rpb24gc2hvdWxkVGhyb3dTeW50YXhFcnJvcihzY3JpcHQpIHsKLSAgICBsZXQgZXJyb3I7Ci0g
ICAgdHJ5IHsKLSAgICAgICAgZXZhbChzY3JpcHQpOwotICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAg
ICAgZXJyb3IgPSBlOwotICAgIH0KLQotICAgIGlmICghKGVycm9yIGluc3RhbmNlb2YgU3ludGF4
RXJyb3IpKQotICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEV4cGVjdGVkIFN5bnRheEVycm9yIGJ1
dCBzYXcgJHtlcnJvciAmJiBlcnJvci5uYW1lfSFgKTsKLX0KLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgbGV0IHg7Ci0gICAgcmV0dXJuIHggPz89IDQyOwotfSwgNDIpOwotCi1zaG91bGRC
ZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeDsKLSAgICB4ID8/PSA0MjsKLSAgICByZXR1cm4geDsK
LX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB1bmRlZmluZWQ7
Ci0gICAgcmV0dXJuIHggPz89IDQyOwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsK
LSAgICBsZXQgeCA9IHVuZGVmaW5lZDsKLSAgICB4ID8/PSA0MjsKLSAgICByZXR1cm4geDsKLX0s
IDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBudWxsOwotICAgIHJl
dHVybiB4ID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0
IHggPSBudWxsOwotICAgIHggPz89IDQyOwotICAgIHJldHVybiB4OwotfSwgNDIpOwotCi1zaG91
bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHRydWU7Ci0gICAgcmV0dXJuIHggPz89IDQy
OwotfSwgdHJ1ZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gdHJ1ZTsK
LSAgICB4ID8/PSA0MjsKLSAgICByZXR1cm4geDsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5j
dGlvbigpIHsKLSAgICBsZXQgeCA9IGZhbHNlOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIGZh
bHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBmYWxzZTsKLSAgICB4
ID8/PSA0MjsKLSAgICByZXR1cm4geDsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgbGV0IHggPSAwOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIDApOwotCi1zaG91
bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IDA7Ci0gICAgeCA/Pz0gNDI7Ci0gICAgcmV0
dXJuIHg7Ci19LCAwKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSAxOwot
ICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIDEpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBsZXQgeCA9IDE7Ci0gICAgeCA/Pz0gNDI7Ci0gICAgcmV0dXJuIHg7Ci19LCAxKTsKLQotc2hv
dWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSAiIjsKLSAgICByZXR1cm4geCA/Pz0gNDI7
Ci19LCAiIik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gIiI7Ci0gICAg
eCA/Pz0gNDI7Ci0gICAgcmV0dXJuIHg7Ci19LCAiIik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkg
ewotICAgIGxldCB4ID0gInRlc3QiOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sICJ0ZXN0Iik7
Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gInRlc3QiOwotICAgIHggPz89
IDQyOwotICAgIHJldHVybiB4OwotfSwgInRlc3QiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7
Ci0gICAgbGV0IHggPSB7fTsKLSAgICByZXR1cm4geCA/Pz0gNDI7Ci19LCBPYmplY3QpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHt9OwotICAgIHggPz89IDQyOwotICAg
IHJldHVybiB4OwotfSwgT2JqZWN0KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0
IHggPSBbXTsKLSAgICByZXR1cm4geCA/Pz0gNDI7Ci19LCBBcnJheSk7Ci0KLXNob3VsZEJlKGZ1
bmN0aW9uKCkgewotICAgIGxldCB4ID0gW107Ci0gICAgeCA/Pz0gNDI7Ci0gICAgcmV0dXJuIHg7
Ci19LCBBcnJheSk7Ci0KLQotCi1zaG91bGRUaHJvdyhmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4
ID0gdW5kZWZpbmVkOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIFR5cGVFcnJvcik7Ci0KLXNo
b3VsZFRocm93KGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSBudWxsOwotICAgIHJldHVybiB4
ID8/PSA0MjsKLX0sIFR5cGVFcnJvcik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNv
bnN0IHggPSB0cnVlOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIHRydWUpOwotCi1zaG91bGRC
ZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gdHJ1ZTsKLSAgICB4ID8/PSA0MjsKLSAgICBy
ZXR1cm4geDsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4
ID0gZmFsc2U7Ci0gICAgcmV0dXJuIHggPz89IDQyOwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gZmFsc2U7Ci0gICAgeCA/Pz0gNDI7Ci0gICAgcmV0
dXJuIHg7Ci19LCBmYWxzZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHgg
PSAwOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIDApOwotCi1zaG91bGRCZShmdW5jdGlvbigp
IHsKLSAgICBjb25zdCB4ID0gMDsKLSAgICB4ID8/PSA0MjsKLSAgICByZXR1cm4geDsKLX0sIDAp
OwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gMTsKLSAgICByZXR1cm4g
eCA/Pz0gNDI7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9
IDE7Ci0gICAgeCA/Pz0gNDI7Ci0gICAgcmV0dXJuIHg7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVu
Y3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9ICIiOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sICIi
KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9ICIiOwotICAgIHggPz89
IDQyOwotICAgIHJldHVybiB4OwotfSwgIiIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBjb25zdCB4ID0gInRlc3QiOwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sICJ0ZXN0Iik7Ci0K
LXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSAidGVzdCI7Ci0gICAgcmV0dXJu
IHggPz89IDQyOwotfSwgInRlc3QiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29u
c3QgeCA9IHt9OwotICAgIHJldHVybiB4ID8/PSA0MjsKLX0sIE9iamVjdCk7Ci0KLXNob3VsZEJl
KGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7fTsKLSAgICByZXR1cm4geCA/Pz0gNDI7Ci19
LCBPYmplY3QpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW107Ci0g
ICAgcmV0dXJuIHggPz89IDQyOwotfSwgQXJyYXkpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsK
LSAgICBjb25zdCB4ID0gW107Ci0gICAgcmV0dXJuIHggPz89IDQyOwotfSwgQXJyYXkpOwotCi0K
LQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7fTsKLSAgICByZXR1cm4geC5h
ID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7
fTsKLSAgICB4LmEgPz89IDQyOwotICAgIHJldHVybiB4LmE7Ci19LCA0Mik7Ci0KLXNob3VsZEJl
KGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IHVuZGVmaW5lZH07Ci0gICAgcmV0dXJuIHgu
YSA/Pz0gNDI7Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0g
e2E6IHVuZGVmaW5lZH07Ci0gICAgeC5hID8/PSA0MjsKLSAgICByZXR1cm4geC5hOwotfSwgNDIp
OwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiBudWxsfTsKLSAgICBy
ZXR1cm4geC5hID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSB7YTogbnVsbH07Ci0gICAgeC5hID8/PSA0MjsKLSAgICByZXR1cm4geC5hOwotfSwg
NDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiB0cnVlfTsKLSAg
ICByZXR1cm4geC5hID8/PSA0MjsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsK
LSAgICBsZXQgeCA9IHthOiB0cnVlfTsKLSAgICB4LmEgPz89IDQyOwotICAgIHJldHVybiB4LmE7
Ci19LCB0cnVlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YTogZmFs
c2V9OwotICAgIHJldHVybiB4LmEgPz89IDQyOwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5j
dGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiBmYWxzZX07Ci0gICAgeC5hID8/PSA0MjsKLSAgICBy
ZXR1cm4geC5hOwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQg
eCA9IHthOiAwfTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sIDApOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiAwfTsKLSAgICB4LmEgPz89IDQyOwotICAgIHJl
dHVybiB4LmE7Ci19LCAwKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7
YTogMX07Ci0gICAgcmV0dXJuIHguYSA/Pz0gNDI7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rp
b24oKSB7Ci0gICAgbGV0IHggPSB7YTogMX07Ci0gICAgeC5hID8/PSA0MjsKLSAgICByZXR1cm4g
eC5hOwotfSwgMSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6ICIi
fTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sICIiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgbGV0IHggPSB7YTogIiJ9OwotICAgIHguYSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHgu
YTsKLX0sICIiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YTogInRl
c3QifTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sICJ0ZXN0Iik7Ci0KLXNob3VsZEJlKGZ1
bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6ICJ0ZXN0In07Ci0gICAgeC5hID8/PSA0MjsKLSAg
ICByZXR1cm4geC5hOwotfSwgInRlc3QiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSB7YToge319OwotICAgIHJldHVybiB4LmEgPz89IDQyOwotfSwgT2JqZWN0KTsKLQot
c2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YToge319OwotICAgIHguYSA/Pz0g
NDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sIE9iamVjdCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkg
ewotICAgIGxldCB4ID0ge2E6IFtdfTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sIEFycmF5
KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YTogW119OwotICAgIHgu
YSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sIEFycmF5KTsKLQotCi0KLXNob3VsZEJlKGZ1
bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7fTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0s
IDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHt9OwotICAgIHgu
YSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgY29uc3QgeCA9IHthOiB1bmRlZmluZWR9OwotICAgIHJldHVybiB4LmEgPz89IDQy
OwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6IHVu
ZGVmaW5lZH07Ci0gICAgeC5hID8/PSA0MjsKLSAgICByZXR1cm4geC5hOwotfSwgNDIpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6IG51bGx9OwotICAgIHJldHVy
biB4LmEgPz89IDQyOwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25z
dCB4ID0ge2E6IG51bGx9OwotICAgIHguYSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sIDQy
KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiB0cnVlfTsKLSAg
ICByZXR1cm4geC5hID8/PSA0MjsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsK
LSAgICBjb25zdCB4ID0ge2E6IHRydWV9OwotICAgIHguYSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHgu
YTsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6
IGZhbHNlfTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiBmYWxzZX07Ci0gICAgeC5hID8/PSA0MjsK
LSAgICByZXR1cm4geC5hOwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBjb25zdCB4ID0ge2E6IDB9OwotICAgIHJldHVybiB4LmEgPz89IDQyOwotfSwgMCk7Ci0KLXNo
b3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YTogMH07Ci0gICAgeC5hID8/PSA0
MjsKLSAgICByZXR1cm4geC5hOwotfSwgMCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAg
IGNvbnN0IHggPSB7YTogMX07Ci0gICAgcmV0dXJuIHguYSA/Pz0gNDI7Ci19LCAxKTsKLQotc2hv
dWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiAxfTsKLSAgICB4LmEgPz89IDQy
OwotICAgIHJldHVybiB4LmE7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
Y29uc3QgeCA9IHthOiAiIn07Ci0gICAgcmV0dXJuIHguYSA/Pz0gNDI7Ci19LCAiIik7Ci0KLXNo
b3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YTogIiJ9OwotICAgIHguYSA/Pz0g
NDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sICIiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0g
ICAgY29uc3QgeCA9IHthOiAidGVzdCJ9OwotICAgIHJldHVybiB4LmEgPz89IDQyOwotfSwgInRl
c3QiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiAidGVzdCJ9
OwotICAgIHguYSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHguYTsKLX0sICJ0ZXN0Iik7Ci0KLXNob3Vs
ZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YToge319OwotICAgIHJldHVybiB4LmEg
Pz89IDQyOwotfSwgT2JqZWN0KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3Qg
eCA9IHthOiB7fX07Ci0gICAgeC5hID8/PSA0MjsKLSAgICByZXR1cm4geC5hOwotfSwgT2JqZWN0
KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiBbXX07Ci0gICAg
cmV0dXJuIHguYSA/Pz0gNDI7Ci19LCBBcnJheSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewot
ICAgIGNvbnN0IHggPSB7YTogW119OwotICAgIHguYSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHguYTsK
LX0sIEFycmF5KTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge307
Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9u
KCkgewotICAgIGxldCB4ID0ge307Ci0gICAgeFsiYSJdID8/PSA0MjsKLSAgICByZXR1cm4geFsi
YSJdOwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiB1
bmRlZmluZWR9OwotICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwotfSwgNDIpOwotCi1zaG91bGRC
ZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHthOiB1bmRlZmluZWR9OwotICAgIHhbImEiXSA/
Pz0gNDI7Ci0gICAgcmV0dXJuIHhbImEiXTsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgbGV0IHggPSB7YTogbnVsbH07Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19
LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IG51bGx9Owot
ICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbImEiXTsKLX0sIDQyKTsKLQotc2hvdWxk
QmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YTogdHJ1ZX07Ci0gICAgcmV0dXJuIHhbImEi
XSA/Pz0gNDI7Ci19LCB0cnVlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSB7YTogdHJ1ZX07Ci0gICAgeFsiYSJdID8/PSA0MjsKLSAgICByZXR1cm4geFsiYSJdOwotfSwg
dHJ1ZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IGZhbHNlfTsK
LSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rp
b24oKSB7Ci0gICAgbGV0IHggPSB7YTogZmFsc2V9OwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAg
cmV0dXJuIHhbImEiXTsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSB7YTogMH07Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCAwKTsKLQotc2hv
dWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSB7YTogMH07Ci0gICAgeFsiYSJdID8/PSA0
MjsKLSAgICByZXR1cm4geFsiYSJdOwotfSwgMCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewot
ICAgIGxldCB4ID0ge2E6IDF9OwotICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwotfSwgMSk7Ci0K
LXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IDF9OwotICAgIHhbImEiXSA/
Pz0gNDI7Ci0gICAgcmV0dXJuIHhbImEiXTsKLX0sIDEpOwotCi1zaG91bGRCZShmdW5jdGlvbigp
IHsKLSAgICBsZXQgeCA9IHthOiAiIn07Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCAi
Iik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6ICIifTsKLSAgICB4
WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCAiIik7Ci0KLXNob3VsZEJlKGZ1
bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6ICJ0ZXN0In07Ci0gICAgcmV0dXJuIHhbImEiXSA/
Pz0gNDI7Ci19LCAidGVzdCIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9
IHthOiAidGVzdCJ9OwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbImEiXTsKLX0s
ICJ0ZXN0Iik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IHt9fTsK
LSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIE9iamVjdCk7Ci0KLXNob3VsZEJlKGZ1bmN0
aW9uKCkgewotICAgIGxldCB4ID0ge2E6IHt9fTsKLSAgICB4WyJhIl0gPz89IDQyOwotICAgIHJl
dHVybiB4WyJhIl07Ci19LCBPYmplY3QpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBs
ZXQgeCA9IHthOiBbXX07Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCBBcnJheSk7Ci0K
LXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge2E6IFtdfTsKLSAgICB4WyJhIl0g
Pz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCBBcnJheSk7Ci0KLQotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge307Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7
Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7fTsKLSAg
ICB4WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCA0Mik7Ci0KLXNob3VsZEJl
KGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YTogdW5kZWZpbmVkfTsKLSAgICByZXR1cm4g
eFsiYSJdID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29u
c3QgeCA9IHthOiB1bmRlZmluZWR9OwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhb
ImEiXTsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHth
OiBudWxsfTsKLSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiBudWxsfTsKLSAgICB4WyJhIl0gPz89IDQy
OwotICAgIHJldHVybiB4WyJhIl07Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewot
ICAgIGNvbnN0IHggPSB7YTogdHJ1ZX07Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCB0
cnVlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiB0cnVlfTsK
LSAgICB4WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCB0cnVlKTsKLQotc2hv
dWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IHthOiBmYWxzZX07Ci0gICAgcmV0dXJu
IHhbImEiXSA/Pz0gNDI7Ci19LCBmYWxzZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAg
IGNvbnN0IHggPSB7YTogZmFsc2V9OwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhb
ImEiXTsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9
IHthOiAwfTsKLSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIDApOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6IDB9OwotICAgIHhbImEiXSA/Pz0gNDI7Ci0g
ICAgcmV0dXJuIHhbImEiXTsKLX0sIDApOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBj
b25zdCB4ID0ge2E6IDF9OwotICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwotfSwgMSk7Ci0KLXNo
b3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YTogMX07Ci0gICAgeFsiYSJdID8/
PSA0MjsKLSAgICByZXR1cm4geFsiYSJdOwotfSwgMSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkg
ewotICAgIGNvbnN0IHggPSB7YTogIiJ9OwotICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwotfSwg
IiIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6ICIifTsKLSAg
ICB4WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCAiIik7Ci0KLXNob3VsZEJl
KGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YTogInRlc3QifTsKLSAgICByZXR1cm4geFsi
YSJdID8/PSA0MjsKLX0sICJ0ZXN0Iik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNv
bnN0IHggPSB7YTogInRlc3QifTsKLSAgICB4WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJh
Il07Ci19LCAidGVzdCIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0g
e2E6IHt9fTsKLSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIE9iamVjdCk7Ci0KLXNob3Vs
ZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB7YToge319OwotICAgIHhbImEiXSA/Pz0g
NDI7Ci0gICAgcmV0dXJuIHhbImEiXTsKLX0sIE9iamVjdCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9u
KCkgewotICAgIGNvbnN0IHggPSB7YTogW119OwotICAgIHJldHVybiB4WyJhIl0gPz89IDQyOwot
fSwgQXJyYXkpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0ge2E6IFtd
fTsKLSAgICB4WyJhIl0gPz89IDQyOwotICAgIHJldHVybiB4WyJhIl07Ci19LCBBcnJheSk7Ci0K
LQotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IFtdOwotICAgIHJldHVybiB4
WzBdID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSBbXTsKLSAgICB4WzBdID8/PSA0MjsKLSAgICByZXR1cm4geFswXTsKLX0sIDQyKTsKLQotc2hv
dWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBbdW5kZWZpbmVkXTsKLSAgICByZXR1cm4g
eFswXSA/Pz0gNDI7Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4
ID0gW3VuZGVmaW5lZF07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCA0
Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gW251bGxdOwotICAgIHJl
dHVybiB4WzBdID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSBbbnVsbF07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCA0
Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gW3RydWVdOwotICAgIHJl
dHVybiB4WzBdID8/PSA0MjsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBsZXQgeCA9IFt0cnVlXTsKLSAgICB4WzBdID8/PSA0MjsKLSAgICByZXR1cm4geFswXTsKLX0s
IHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IFtmYWxzZV07Ci0g
ICAgcmV0dXJuIHhbMF0gPz89IDQyOwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5jdGlvbigp
IHsKLSAgICBsZXQgeCA9IFtmYWxzZV07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhb
MF07Ci19LCBmYWxzZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gWzBd
OwotICAgIHJldHVybiB4WzBdID8/PSA0MjsKLX0sIDApOwotCi1zaG91bGRCZShmdW5jdGlvbigp
IHsKLSAgICBsZXQgeCA9IFswXTsKLSAgICB4WzBdID8/PSA0MjsKLSAgICByZXR1cm4geFswXTsK
LX0sIDApOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IFsxXTsKLSAgICBy
ZXR1cm4geFswXSA/Pz0gNDI7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSBbMV07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCAxKTsK
LQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBbIiJdOwotICAgIHJldHVybiB4
WzBdID8/PSA0MjsKLX0sICIiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSBbIiJdOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4WzBdOwotfSwgIiIpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IFsidGVzdCJdOwotICAgIHJldHVybiB4
WzBdID8/PSA0MjsKLX0sICJ0ZXN0Iik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxl
dCB4ID0gWyJ0ZXN0Il07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCAi
dGVzdCIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IFt7fV07Ci0gICAg
cmV0dXJuIHhbMF0gPz89IDQyOwotfSwgT2JqZWN0KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7
Ci0gICAgbGV0IHggPSBbe31dOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4WzBdOwot
fSwgT2JqZWN0KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBbW11dOwot
ICAgIHJldHVybiB4WzBdID8/PSA0MjsKLX0sIEFycmF5KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgbGV0IHggPSBbW11dOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4WzBd
OwotfSwgQXJyYXkpOwotCi0KLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9
IFtdOwotICAgIHJldHVybiB4WzBdID8/PSA0MjsKLX0sIDQyKTsKLQotc2hvdWxkQmUoZnVuY3Rp
b24oKSB7Ci0gICAgY29uc3QgeCA9IFtdOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4
WzBdOwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW3Vu
ZGVmaW5lZF07Ci0gICAgcmV0dXJuIHhbMF0gPz89IDQyOwotfSwgNDIpOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW3VuZGVmaW5lZF07Ci0gICAgeFswXSA/Pz0gNDI7
Ci0gICAgcmV0dXJuIHhbMF07Ci19LCA0Mik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAg
IGNvbnN0IHggPSBbbnVsbF07Ci0gICAgcmV0dXJuIHhbMF0gPz89IDQyOwotfSwgNDIpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW251bGxdOwotICAgIHhbMF0gPz89
IDQyOwotICAgIHJldHVybiB4WzBdOwotfSwgNDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsK
LSAgICBjb25zdCB4ID0gW3RydWVdOwotICAgIHJldHVybiB4WzBdID8/PSA0MjsKLX0sIHRydWUp
OwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW3RydWVdOwotICAgIHhb
MF0gPz89IDQyOwotICAgIHJldHVybiB4WzBdOwotfSwgdHJ1ZSk7Ci0KLXNob3VsZEJlKGZ1bmN0
aW9uKCkgewotICAgIGNvbnN0IHggPSBbZmFsc2VdOwotICAgIHJldHVybiB4WzBdID8/PSA0MjsK
LX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IFtmYWxz
ZV07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCBmYWxzZSk7Ci0KLXNo
b3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSBbMF07Ci0gICAgcmV0dXJuIHhbMF0g
Pz89IDQyOwotfSwgMCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSBb
MF07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19LCAwKTsKLQotc2hvdWxk
QmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IFsxXTsKLSAgICByZXR1cm4geFswXSA/Pz0g
NDI7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IFsxXTsK
LSAgICB4WzBdID8/PSA0MjsKLSAgICByZXR1cm4geFswXTsKLX0sIDEpOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gWyIiXTsKLSAgICByZXR1cm4geFswXSA/Pz0gNDI7
Ci19LCAiIik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSBbIiJdOwot
ICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4WzBdOwotfSwgIiIpOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gWyJ0ZXN0Il07Ci0gICAgcmV0dXJuIHhbMF0gPz89
IDQyOwotfSwgInRlc3QiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9
IFsidGVzdCJdOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4WzBdOwotfSwgInRlc3Qi
KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgY29uc3QgeCA9IFt7fV07Ci0gICAgcmV0
dXJuIHhbMF0gPz89IDQyOwotfSwgT2JqZWN0KTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0g
ICAgY29uc3QgeCA9IFt7fV07Ci0gICAgeFswXSA/Pz0gNDI7Ci0gICAgcmV0dXJuIHhbMF07Ci19
LCBPYmplY3QpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gW1tdXTsK
LSAgICByZXR1cm4geFswXSA/Pz0gNDI7Ci19LCBBcnJheSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9u
KCkgewotICAgIGNvbnN0IHggPSBbW11dOwotICAgIHhbMF0gPz89IDQyOwotICAgIHJldHVybiB4
WzBdOwotfSwgQXJyYXkpOwotCi0KLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSBmYWxzZTsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAgIHJldHVybiB4ID8/
PSB5ICsgejsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSBmYWxzZTsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAgIHJldHVybiB4ID8/
PSB5ID0gejsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHgg
PSBmYWxzZTsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAgIHJldHVybiB4ID8/
PSB5ICYmIHo7Ci19LCBmYWxzZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4
ID0gZmFsc2U7Ci0gICAgbGV0IHkgPSAxOwotICAgIGxldCB6ID0gMjsKLSAgICByZXR1cm4geCA/
Pz0geSA/PyB6OwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQg
eCA9IGZhbHNlOwotICAgIGxldCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJuIHgg
Pz89IHkgfHwgejsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0
IHggPSBmYWxzZTsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAgIHJldHVybiB4
ID8/PSB5ICYmPSB6OwotfSwgZmFsc2UpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBs
ZXQgeCA9IGZhbHNlOwotICAgIGxldCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJu
IHggPz89IHkgPz89IHo7Ci19LCBmYWxzZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAg
IGxldCB4ID0gZmFsc2U7Ci0gICAgbGV0IHkgPSAxOwotICAgIGxldCB6ID0gMjsKLSAgICByZXR1
cm4geCA/Pz0geSB8fD0gejsKLX0sIGZhbHNlKTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkg
ewotICAgIGxldCB4ID0gbnVsbDsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAg
IHJldHVybiB4ID8/PSB5ICsgejsKLX0sIDMpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBsZXQgeCA9IG51bGw7Ci0gICAgbGV0IHkgPSAxOwotICAgIGxldCB6ID0gMjsKLSAgICByZXR1
cm4geCA/Pz0geSA9IHo7Ci19LCAyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0
IHggPSBudWxsOwotICAgIGxldCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJuIHgg
Pz89IHkgJiYgejsKLX0sIDIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9
IG51bGw7Ci0gICAgbGV0IHkgPSAxOwotICAgIGxldCB6ID0gMjsKLSAgICByZXR1cm4geCA/Pz0g
eSA/PyB6OwotfSwgMSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0gbnVs
bDsKLSAgICBsZXQgeSA9IDE7Ci0gICAgbGV0IHogPSAyOwotICAgIHJldHVybiB4ID8/PSB5IHx8
IHo7Ci19LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBudWxsOwot
ICAgIGxldCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJuIHggPz89IHkgJiY9IHo7
Ci19LCAyKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBudWxsOwotICAg
IGxldCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJuIHggPz89IHkgPz89IHo7Ci19
LCAxKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IHggPSBudWxsOwotICAgIGxl
dCB5ID0gMTsKLSAgICBsZXQgeiA9IDI7Ci0gICAgcmV0dXJuIHggPz89IHkgfHw9IHo7Ci19LCAx
KTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCBsb2cgPSBbXTsKLQotICAg
IGxldCBhID0gdHJ1ZTsKLSAgICBsZXQgeCA9IHsKLSAgICAgICAgZ2V0IGEoKSB7Ci0gICAgICAg
ICAgICBsb2cucHVzaCgiZ2V0Iik7Ci0gICAgICAgICAgICByZXR1cm4gYTsKLSAgICAgICAgfSwK
LSAgICAgICAgc2V0IGEodikgewotICAgICAgICAgICAgbG9nLnB1c2goInNldCIpOwotICAgICAg
ICAgICAgYSA9IHY7Ci0gICAgICAgIH0sCi0gICAgfTsKLQotICAgIHguYSA/Pz0gNDI7Ci0gICAg
eC5hID8/PSA0MjsKLQotICAgIHJldHVybiBsb2cuam9pbigiICIpICsgIiAiICsgYTsKLX0sICJn
ZXQgZ2V0IHRydWUiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IGxvZyA9IFtd
OwotCi0gICAgbGV0IGEgPSBmYWxzZTsKLSAgICBsZXQgeCA9IHsKLSAgICAgICAgZ2V0IGEoKSB7
Ci0gICAgICAgICAgICBsb2cucHVzaCgiZ2V0Iik7Ci0gICAgICAgICAgICByZXR1cm4gYTsKLSAg
ICAgICAgfSwKLSAgICAgICAgc2V0IGEodikgewotICAgICAgICAgICAgbG9nLnB1c2goInNldCIp
OwotICAgICAgICAgICAgYSA9IHY7Ci0gICAgICAgIH0sCi0gICAgfTsKLQotICAgIHguYSA/Pz0g
NDI7Ci0gICAgeC5hID8/PSA0MjsKLQotICAgIHJldHVybiBsb2cuam9pbigiICIpICsgIiAiICsg
YTsKLX0sICJnZXQgZ2V0IGZhbHNlIik7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxl
dCBsb2cgPSBbXTsKLQotICAgIGxldCBhID0gdW5kZWZpbmVkOwotICAgIGxldCB4ID0gewotICAg
ICAgICBnZXQgYSgpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQiKTsKLSAgICAgICAgICAg
IHJldHVybiBhOwotICAgICAgICB9LAotICAgICAgICBzZXQgYSh2KSB7Ci0gICAgICAgICAgICBs
b2cucHVzaCgic2V0Iik7Ci0gICAgICAgICAgICBhID0gdjsKLSAgICAgICAgfSwKLSAgICB9Owot
Ci0gICAgeC5hID8/PSA0MjsKLSAgICB4LmEgPz89IDQyOwotCi0gICAgcmV0dXJuIGxvZy5qb2lu
KCIgIikgKyAiICIgKyBhOwotfSwgImdldCBzZXQgZ2V0IDQyIik7Ci0KLQotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBsZXQgbG9nID0gW107Ci0KLSAgICBsZXQgYSA9IHRydWU7Ci0gICAg
bGV0IHggPSB7Ci0gICAgICAgIGdldCBhKCkgewotICAgICAgICAgICAgbG9nLnB1c2goImdldCIp
OwotICAgICAgICAgICAgcmV0dXJuIGE7Ci0gICAgICAgIH0sCi0gICAgICAgIHNldCBhKHYpIHsK
LSAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQiKTsKLSAgICAgICAgICAgIGEgPSB2OwotICAgICAg
ICB9LAotICAgIH07Ci0KLSAgICB4WyJhIl0gPz89IDQyOwotICAgIHhbImEiXSA/Pz0gNDI7Ci0K
LSAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIGE7Ci19LCAiZ2V0IGdldCB0cnVlIik7
Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCBsb2cgPSBbXTsKLQotICAgIGxldCBh
ID0gZmFsc2U7Ci0gICAgbGV0IHggPSB7Ci0gICAgICAgIGdldCBhKCkgewotICAgICAgICAgICAg
bG9nLnB1c2goImdldCIpOwotICAgICAgICAgICAgcmV0dXJuIGE7Ci0gICAgICAgIH0sCi0gICAg
ICAgIHNldCBhKHYpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQiKTsKLSAgICAgICAgICAg
IGEgPSB2OwotICAgICAgICB9LAotICAgIH07Ci0KLSAgICB4WyJhIl0gPz89IDQyOwotICAgIHhb
ImEiXSA/Pz0gNDI7Ci0KLSAgICByZXR1cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIGE7Ci19LCAi
Z2V0IGdldCBmYWxzZSIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgbG9nID0g
W107Ci0KLSAgICBsZXQgYSA9IHVuZGVmaW5lZDsKLSAgICBsZXQgeCA9IHsKLSAgICAgICAgZ2V0
IGEoKSB7Ci0gICAgICAgICAgICBsb2cucHVzaCgiZ2V0Iik7Ci0gICAgICAgICAgICByZXR1cm4g
YTsKLSAgICAgICAgfSwKLSAgICAgICAgc2V0IGEodikgewotICAgICAgICAgICAgbG9nLnB1c2go
InNldCIpOwotICAgICAgICAgICAgYSA9IHY7Ci0gICAgICAgIH0sCi0gICAgfTsKLQotICAgIHhb
ImEiXSA/Pz0gNDI7Ci0gICAgeFsiYSJdID8/PSA0MjsKLQotICAgIHJldHVybiBsb2cuam9pbigi
ICIpICsgIiAiICsgYTsKLX0sICJnZXQgc2V0IGdldCA0MiIpOwotCi0KLQotc2hvdWxkQmUoZnVu
Y3Rpb24oKSB7Ci0gICAgbGV0IGxvZyA9IFtdOwotCi0gICAgY2xhc3MgUGFyZW50IHsKLSAgICAg
ICAgZ2V0IGEoKSB7Ci0gICAgICAgICAgICBsb2cucHVzaCgiZ2V0LXBhcmVudCIpOwotICAgICAg
ICAgICAgcmV0dXJuIHRoaXMuX2E7Ci0gICAgICAgIH0KLSAgICAgICAgc2V0IGEodikgewotICAg
ICAgICAgICAgbG9nLnB1c2goInNldC1wYXJlbnQiKTsKLSAgICAgICAgICAgIHRoaXMuX2EgPz89
IHY7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgY2xhc3MgQ2hpbGQgZXh0ZW5kcyBQYXJlbnQgewot
ICAgICAgICBnZXQgYSgpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtY2hpbGQiKTsKLSAg
ICAgICAgICAgIHJldHVybiBzdXBlci5hOwotICAgICAgICB9Ci0gICAgICAgIHNldCBhKHYpIHsK
LSAgICAgICAgICAgIGxvZy5wdXNoKCJzZXQtY2hpbGQiKTsKLSAgICAgICAgICAgIHN1cGVyLmEg
Pz89IHY7Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICBsZXQgeCA9IG5ldyBDaGlsZDsKLSAgICB4
Ll9hID0gdHJ1ZTsKLSAgICB4LmEgPz89IDQyOwotICAgIHguYSA/Pz0gNDI7Ci0KLSAgICByZXR1
cm4gbG9nLmpvaW4oIiAiKSArICIgIiArIHguX2E7Ci19LCAiZ2V0LWNoaWxkIGdldC1wYXJlbnQg
Z2V0LWNoaWxkIGdldC1wYXJlbnQgdHJ1ZSIpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAg
ICBsZXQgbG9nID0gW107Ci0KLSAgICBjbGFzcyBQYXJlbnQgewotICAgICAgICBnZXQgYSgpIHsK
LSAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtcGFyZW50Iik7Ci0gICAgICAgICAgICByZXR1cm4g
dGhpcy5fYTsKLSAgICAgICAgfQotICAgICAgICBzZXQgYSh2KSB7Ci0gICAgICAgICAgICBsb2cu
cHVzaCgic2V0LXBhcmVudCIpOwotICAgICAgICAgICAgdGhpcy5fYSA/Pz0gdjsKLSAgICAgICAg
fQotICAgIH0KLSAgICBjbGFzcyBDaGlsZCBleHRlbmRzIFBhcmVudCB7Ci0gICAgICAgIGdldCBh
KCkgewotICAgICAgICAgICAgbG9nLnB1c2goImdldC1jaGlsZCIpOwotICAgICAgICAgICAgcmV0
dXJuIHN1cGVyLmE7Ci0gICAgICAgIH0KLSAgICAgICAgc2V0IGEodikgewotICAgICAgICAgICAg
bG9nLnB1c2goInNldC1jaGlsZCIpOwotICAgICAgICAgICAgc3VwZXIuYSA/Pz0gdjsKLSAgICAg
ICAgfQotICAgIH0KLQotICAgIGxldCB4ID0gbmV3IENoaWxkOwotICAgIHguX2EgPSBmYWxzZTsK
LSAgICB4LmEgPz89IDQyOwotICAgIHguYSA/Pz0gNDI7Ci0KLSAgICByZXR1cm4gbG9nLmpvaW4o
IiAiKSArICIgIiArIHguX2E7Ci19LCAiZ2V0LWNoaWxkIGdldC1wYXJlbnQgZ2V0LWNoaWxkIGdl
dC1wYXJlbnQgZmFsc2UiKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IGxvZyA9
IFtdOwotCi0gICAgY2xhc3MgUGFyZW50IHsKLSAgICAgICAgZ2V0IGEoKSB7Ci0gICAgICAgICAg
ICBsb2cucHVzaCgiZ2V0LXBhcmVudCIpOwotICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2E7Ci0g
ICAgICAgIH0KLSAgICAgICAgc2V0IGEodikgewotICAgICAgICAgICAgbG9nLnB1c2goInNldC1w
YXJlbnQiKTsKLSAgICAgICAgICAgIHRoaXMuX2EgPz89IHY7Ci0gICAgICAgIH0KLSAgICB9Ci0g
ICAgY2xhc3MgQ2hpbGQgZXh0ZW5kcyBQYXJlbnQgewotICAgICAgICBnZXQgYSgpIHsKLSAgICAg
ICAgICAgIGxvZy5wdXNoKCJnZXQtY2hpbGQiKTsKLSAgICAgICAgICAgIHJldHVybiBzdXBlci5h
OwotICAgICAgICB9Ci0gICAgICAgIHNldCBhKHYpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJz
ZXQtY2hpbGQiKTsKLSAgICAgICAgICAgIHN1cGVyLmEgPz89IHY7Ci0gICAgICAgIH0KLSAgICB9
Ci0KLSAgICBsZXQgeCA9IG5ldyBDaGlsZDsKLSAgICB4Ll9hID0gdW5kZWZpbmVkOwotICAgIHgu
YSA/Pz0gNDI7Ci0gICAgeC5hID8/PSA0MjsKLQotICAgIHJldHVybiBsb2cuam9pbigiICIpICsg
IiAiICsgeC5fYTsKLX0sICJnZXQtY2hpbGQgZ2V0LXBhcmVudCBzZXQtY2hpbGQgZ2V0LXBhcmVu
dCBzZXQtcGFyZW50IGdldC1jaGlsZCBnZXQtcGFyZW50IDQyIik7Ci0KLQotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBsZXQgbG9nID0gW107Ci0KLSAgICBjbGFzcyBQYXJlbnQgewotICAg
ICAgICBnZXQgYSgpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtcGFyZW50Iik7Ci0gICAg
ICAgICAgICByZXR1cm4gdGhpcy5fYTsKLSAgICAgICAgfQotICAgICAgICBzZXQgYSh2KSB7Ci0g
ICAgICAgICAgICBsb2cucHVzaCgic2V0LXBhcmVudCIpOwotICAgICAgICAgICAgdGhpcy5fYSA/
Pz0gdjsKLSAgICAgICAgfQotICAgIH0KLSAgICBjbGFzcyBDaGlsZCBleHRlbmRzIFBhcmVudCB7
Ci0gICAgICAgIGdldCBhKCkgewotICAgICAgICAgICAgbG9nLnB1c2goImdldC1jaGlsZCIpOwot
ICAgICAgICAgICAgcmV0dXJuIHN1cGVyWyJhIl07Ci0gICAgICAgIH0KLSAgICAgICAgc2V0IGEo
dikgewotICAgICAgICAgICAgbG9nLnB1c2goInNldC1jaGlsZCIpOwotICAgICAgICAgICAgc3Vw
ZXJbImEiXSA/Pz0gdjsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGxldCB4ID0gbmV3IENoaWxk
OwotICAgIHguX2EgPSB0cnVlOwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgeFsiYSJdID8/PSA0
MjsKLQotICAgIHJldHVybiBsb2cuam9pbigiICIpICsgIiAiICsgeC5fYTsKLX0sICJnZXQtY2hp
bGQgZ2V0LXBhcmVudCBnZXQtY2hpbGQgZ2V0LXBhcmVudCB0cnVlIik7Ci0KLXNob3VsZEJlKGZ1
bmN0aW9uKCkgewotICAgIGxldCBsb2cgPSBbXTsKLQotICAgIGNsYXNzIFBhcmVudCB7Ci0gICAg
ICAgIGdldCBhKCkgewotICAgICAgICAgICAgbG9nLnB1c2goImdldC1wYXJlbnQiKTsKLSAgICAg
ICAgICAgIHJldHVybiB0aGlzLl9hOwotICAgICAgICB9Ci0gICAgICAgIHNldCBhKHYpIHsKLSAg
ICAgICAgICAgIGxvZy5wdXNoKCJzZXQtcGFyZW50Iik7Ci0gICAgICAgICAgICB0aGlzLl9hID8/
PSB2OwotICAgICAgICB9Ci0gICAgfQotICAgIGNsYXNzIENoaWxkIGV4dGVuZHMgUGFyZW50IHsK
LSAgICAgICAgZ2V0IGEoKSB7Ci0gICAgICAgICAgICBsb2cucHVzaCgiZ2V0LWNoaWxkIik7Ci0g
ICAgICAgICAgICByZXR1cm4gc3VwZXJbImEiXTsKLSAgICAgICAgfQotICAgICAgICBzZXQgYSh2
KSB7Ci0gICAgICAgICAgICBsb2cucHVzaCgic2V0LWNoaWxkIik7Ci0gICAgICAgICAgICBzdXBl
clsiYSJdID8/PSB2OwotICAgICAgICB9Ci0gICAgfQotCi0gICAgbGV0IHggPSBuZXcgQ2hpbGQ7
Ci0gICAgeC5fYSA9IGZhbHNlOwotICAgIHhbImEiXSA/Pz0gNDI7Ci0gICAgeFsiYSJdID8/PSA0
MjsKLQotICAgIHJldHVybiBsb2cuam9pbigiICIpICsgIiAiICsgeC5fYTsKLX0sICJnZXQtY2hp
bGQgZ2V0LXBhcmVudCBnZXQtY2hpbGQgZ2V0LXBhcmVudCBmYWxzZSIpOwotCi1zaG91bGRCZShm
dW5jdGlvbigpIHsKLSAgICBsZXQgbG9nID0gW107Ci0KLSAgICBjbGFzcyBQYXJlbnQgewotICAg
ICAgICBnZXQgYSgpIHsKLSAgICAgICAgICAgIGxvZy5wdXNoKCJnZXQtcGFyZW50Iik7Ci0gICAg
ICAgICAgICByZXR1cm4gdGhpcy5fYTsKLSAgICAgICAgfQotICAgICAgICBzZXQgYSh2KSB7Ci0g
ICAgICAgICAgICBsb2cucHVzaCgic2V0LXBhcmVudCIpOwotICAgICAgICAgICAgdGhpcy5fYSA/
Pz0gdjsKLSAgICAgICAgfQotICAgIH0KLSAgICBjbGFzcyBDaGlsZCBleHRlbmRzIFBhcmVudCB7
Ci0gICAgICAgIGdldCBhKCkgewotICAgICAgICAgICAgbG9nLnB1c2goImdldC1jaGlsZCIpOwot
ICAgICAgICAgICAgcmV0dXJuIHN1cGVyWyJhIl07Ci0gICAgICAgIH0KLSAgICAgICAgc2V0IGEo
dikgewotICAgICAgICAgICAgbG9nLnB1c2goInNldC1jaGlsZCIpOwotICAgICAgICAgICAgc3Vw
ZXJbImEiXSA/Pz0gdjsKLSAgICAgICAgfQotICAgIH0KLQotICAgIGxldCB4ID0gbmV3IENoaWxk
OwotICAgIHguX2EgPSB1bmRlZmluZWQ7Ci0gICAgeFsiYSJdID8/PSA0MjsKLSAgICB4WyJhIl0g
Pz89IDQyOwotCi0gICAgcmV0dXJuIGxvZy5qb2luKCIgIikgKyAiICIgKyB4Ll9hOwotfSwgImdl
dC1jaGlsZCBnZXQtcGFyZW50IHNldC1jaGlsZCBnZXQtcGFyZW50IHNldC1wYXJlbnQgZ2V0LWNo
aWxkIGdldC1wYXJlbnQgNDIiKTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxl
dCB4ID0ge307Ci0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgewotICAgICAgICB2
YWx1ZTogdHJ1ZSwKLSAgICAgICAgd3JpdGFibGU6IGZhbHNlLAotICAgIH0pOwotICAgIHJldHVy
biB4LmEgPz89IDQyOwotfSwgdHJ1ZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxl
dCB4ID0ge307Ci0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgewotICAgICAgICB2
YWx1ZTogZmFsc2UsCi0gICAgICAgIHdyaXRhYmxlOiBmYWxzZSwKLSAgICB9KTsKLSAgICByZXR1
cm4geC5hID8/PSA0MjsKLX0sIGZhbHNlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
bGV0IHggPSB7fTsKLSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwgImEiLCB7Ci0gICAgICAg
IHZhbHVlOiB1bmRlZmluZWQsCi0gICAgICAgIHdyaXRhYmxlOiBmYWxzZSwKLSAgICB9KTsKLSAg
ICByZXR1cm4geC5hID8/PSA0MjsKLX0sIDQyKTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkg
ewotICAgICJ1c2Ugc3RyaWN0IjsKLSAgICBsZXQgeCA9IHt9OwotICAgIE9iamVjdC5kZWZpbmVQ
cm9wZXJ0eSh4LCAiYSIsIHsKLSAgICAgICAgdmFsdWU6IHRydWUsCi0gICAgICAgIHdyaXRhYmxl
OiBmYWxzZSwKLSAgICB9KTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sIHRydWUpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICAidXNlIHN0cmljdCI7Ci0gICAgbGV0IHggPSB7fTsK
LSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwgImEiLCB7Ci0gICAgICAgIHZhbHVlOiBmYWxz
ZSwKLSAgICAgICAgd3JpdGFibGU6IGZhbHNlLAotICAgIH0pOwotICAgIHJldHVybiB4LmEgPz89
IDQyOwotfSwgZmFsc2UpOwotCi1zaG91bGRUaHJvdyhmdW5jdGlvbigpIHsKLSAgICAidXNlIHN0
cmljdCI7Ci0gICAgbGV0IHggPSB7fTsKLSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwgImEi
LCB7Ci0gICAgICAgIHZhbHVlOiB1bmRlZmluZWQsCi0gICAgICAgIHdyaXRhYmxlOiBmYWxzZSwK
LSAgICB9KTsKLSAgICByZXR1cm4geC5hID8/PSA0MjsKLX0sIFR5cGVFcnJvcik7Ci0KLQotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHt9OwotICAgIE9iamVjdC5kZWZpbmVQ
cm9wZXJ0eSh4LCAiYSIsIHsKLSAgICAgICAgdmFsdWU6IHRydWUsCi0gICAgICAgIHdyaXRhYmxl
OiBmYWxzZSwKLSAgICB9KTsKLSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIHRydWUpOwot
Ci1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHt9OwotICAgIE9iamVjdC5kZWZp
bmVQcm9wZXJ0eSh4LCAiYSIsIHsKLSAgICAgICAgdmFsdWU6IGZhbHNlLAotICAgICAgICB3cml0
YWJsZTogZmFsc2UsCi0gICAgfSk7Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCBmYWxz
ZSk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCB4ID0ge307Ci0gICAgT2JqZWN0
LmRlZmluZVByb3BlcnR5KHgsICJhIiwgewotICAgICAgICB2YWx1ZTogdW5kZWZpbmVkLAotICAg
ICAgICB3cml0YWJsZTogZmFsc2UsCi0gICAgfSk7Ci0gICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7
Ci19LCA0Mik7Ci0KLQotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICAidXNlIHN0cmljdCI7
Ci0gICAgbGV0IHggPSB7fTsKLSAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoeCwgImEiLCB7Ci0g
ICAgICAgIHZhbHVlOiB0cnVlLAotICAgICAgICB3cml0YWJsZTogZmFsc2UsCi0gICAgfSk7Ci0g
ICAgcmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCB0cnVlKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24o
KSB7Ci0gICAgInVzZSBzdHJpY3QiOwotICAgIGxldCB4ID0ge307Ci0gICAgT2JqZWN0LmRlZmlu
ZVByb3BlcnR5KHgsICJhIiwgewotICAgICAgICB2YWx1ZTogZmFsc2UsCi0gICAgICAgIHdyaXRh
YmxlOiBmYWxzZSwKLSAgICB9KTsKLSAgICByZXR1cm4geFsiYSJdID8/PSA0MjsKLX0sIGZhbHNl
KTsKLQotc2hvdWxkVGhyb3coZnVuY3Rpb24oKSB7Ci0gICAgInVzZSBzdHJpY3QiOwotICAgIGxl
dCB4ID0ge307Ci0gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHgsICJhIiwgewotICAgICAgICB2
YWx1ZTogdW5kZWZpbmVkLAotICAgICAgICB3cml0YWJsZTogZmFsc2UsCi0gICAgfSk7Ci0gICAg
cmV0dXJuIHhbImEiXSA/Pz0gNDI7Ci19LCBUeXBlRXJyb3IpOwotCi0KLQotc2hvdWxkQmUoZnVu
Y3Rpb24oKSB7Ci0gICAgbGV0IHggPSB0cnVlOwotICAgIChmdW5jdGlvbigpIHsKLSAgICAgICAg
eCA/Pz0gNDI7Ci0gICAgfSkoKTsKLSAgICByZXR1cm4geDsKLX0sIHRydWUpOwotCi1zaG91bGRC
ZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IGZhbHNlOwotICAgIHJldHVybiAoZnVuY3Rpb24o
KSB7Ci0gICAgICAgIHJldHVybiB4ID8/PSA0MjsKLSAgICB9KSgpOwotfSwgZmFsc2UpOwotCi1z
aG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBsZXQgeCA9IHVuZGVmaW5lZDsKLSAgICByZXR1cm4g
KGZ1bmN0aW9uKCkgewotICAgICAgICByZXR1cm4geCA/Pz0gNDI7Ci0gICAgfSkoKTsKLX0sIDQy
KTsKLQotCi0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGNvbnN0IHggPSB0cnVlOwotICAg
IChmdW5jdGlvbigpIHsKLSAgICAgICAgeCA/Pz0gNDI7Ci0gICAgfSkoKTsKLSAgICByZXR1cm4g
eDsKLX0sIHRydWUpOwotCi1zaG91bGRCZShmdW5jdGlvbigpIHsKLSAgICBjb25zdCB4ID0gZmFs
c2U7Ci0gICAgcmV0dXJuIChmdW5jdGlvbigpIHsKLSAgICAgICAgcmV0dXJuIHggPz89IDQyOwot
ICAgIH0pKCk7Ci19LCBmYWxzZSk7Ci0KLXNob3VsZFRocm93KGZ1bmN0aW9uKCkgewotICAgIGNv
bnN0IHggPSB1bmRlZmluZWQ7Ci0gICAgcmV0dXJuIChmdW5jdGlvbigpIHsKLSAgICAgICAgcmV0
dXJuIHggPz89IDQyOwotICAgIH0pKCk7Ci19LCBUeXBlRXJyb3IpOwotCi0KLQotc2hvdWxkQmUo
ZnVuY3Rpb24oKSB7Ci0gICAgbGV0IGNvdW50ID0gMDsKLQotICAgIGNvbnN0IHggPSB0cnVlOwot
ICAgIHggPz89ICsrY291bnQ7Ci0KLSAgICByZXR1cm4gY291bnQ7Ci19LCAwKTsKLQotc2hvdWxk
QmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IGNvdW50ID0gMDsKLQotICAgIGNvbnN0IHggPSBmYWxz
ZTsKLSAgICB4ID8/PSArK2NvdW50OwotCi0gICAgcmV0dXJuIGNvdW50OwotfSwgMCk7Ci0KLXNo
b3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxldCBjb3VudCA9IDA7Ci0KLSAgICBjb25zdCB4ID0g
dW5kZWZpbmVkOwotICAgIHRyeSB7Ci0gICAgICAgIHggPz89ICsrY291bnQ7Ci0gICAgfSBjYXRj
aCB7IH0KLQotICAgIHJldHVybiBjb3VudDsKLX0sIDEpOwotCi0KLQotc2hvdWxkQmUoZnVuY3Rp
b24oKSB7Ci0gICAgbGV0IGNvdW50ID0gMDsKLQotICAgIGNvbnN0IHggPSB0cnVlOwotICAgIGZ1
bmN0aW9uIGNhcHR1cmUoKSB7IHJldHVybiB4OyB9Ci0KLSAgICB4ID8/PSArK2NvdW50OwotCi0g
ICAgcmV0dXJuIGNvdW50OwotfSwgMCk7Ci0KLXNob3VsZEJlKGZ1bmN0aW9uKCkgewotICAgIGxl
dCBjb3VudCA9IDA7Ci0KLSAgICBjb25zdCB4ID0gZmFsc2U7Ci0gICAgZnVuY3Rpb24gY2FwdHVy
ZSgpIHsgcmV0dXJuIHg7IH0KLQotICAgIHggPz89ICsrY291bnQ7Ci0KLSAgICByZXR1cm4gY291
bnQ7Ci19LCAwKTsKLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAgbGV0IGNvdW50ID0gMDsK
LQotICAgIGNvbnN0IHggPSB1bmRlZmluZWQ7Ci0gICAgZnVuY3Rpb24gY2FwdHVyZSgpIHsgcmV0
dXJuIHg7IH0KLQotICAgIHRyeSB7Ci0gICAgICAgIHggPz89ICsrY291bnQ7Ci0gICAgfSBjYXRj
aCB7IH0KLQotICAgIHJldHVybiBjb3VudDsKLX0sIDEpOwotCi0KLQotc2hvdWxkVGhyb3coZnVu
Y3Rpb24oKSB7Ci0gICAgeCA/Pz0gNDI7Ci0gICAgbGV0IHggPSB0cnVlOwotICAgIHJldHVybiB4
OwotfSwgUmVmZXJlbmNlRXJyb3IpOwotCi0KLQotc2hvdWxkQmUoZnVuY3Rpb24oKSB7Ci0gICAg
cmV0dXJuIHVuZGVmaW5lZCA/Pz0gNDI7Ci19LCA0Mik7Ci0KLXNob3VsZFRocm93U3ludGF4RXJy
b3IoYG51bGwgPz89IDQyYCk7Ci0KLXNob3VsZFRocm93U3ludGF4RXJyb3IoYHRydWUgPz89IDQy
YCk7Ci0KLXNob3VsZFRocm93U3ludGF4RXJyb3IoYGZhbHNlID8/PSA0MmApOwotCi1zaG91bGRU
aHJvd1N5bnRheEVycm9yKGAwID8/PSA0MmApOwotCi1zaG91bGRUaHJvd1N5bnRheEVycm9yKGAx
ID8/PSA0MmApOwotCi1zaG91bGRUaHJvd1N5bnRheEVycm9yKGAiIiA/Pz0gNDJgKTsKLQotc2hv
dWxkVGhyb3dTeW50YXhFcnJvcihgInRlc3QiID8/PSA0MmApOwotCi1zaG91bGRUaHJvd1N5bnRh
eEVycm9yKGB7fSA/Pz0gNDJgKTsKLQotc2hvdWxkVGhyb3dTeW50YXhFcnJvcihgW10gPz89IDQy
YCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>