Archive | Family Devotionals

A family devotional: Honoring God

The Verse: Psalm 22:23 “Shout Hallelujah, you God-worshipers; give glory, you sons of Jacob; adore him, you daughters of Israel.” (The Message)

The thought:

We teach our children weekly that the three most important things in life are to honor God, honor others, and honor ourselves. This morning we are focusing on honoring God.

The questions:

  1. Why is it important to honor God?
  2. What does giving God honor as a family look like?
  3. How does God honor us?

Posted in Family DevotionalsView Comments

What is righteousness?

In my devlotional yesterday (I’m reading “Be Still: 31 Days to a Deeper Meditative Prayer Life”.), I read Isaiah 32:17-18 four times using the Read, Reflect, Respond, Relax method utilized in the devotional. Verse 17 reads, “The fruit of righteousness will be peace;
the effect of righteousness will be quietness and confidence forever.”

So I think a great question is, “What is righteousness?”

Here’s a definition I found over at DiscipleshipTools.org:

Righteousness is defined as conformity to God’s Law, both from our heart and deeds, inside and outside. No one can attain it apart from perfect adherence to the law; Christ was the only one in all of human history to do it. No one can attain it without Divine intervention; righteousness to please God must come from God Himself. Because we all are corrupted by sin, and unable to live according to God’s perfect standards. Thus it must be a gift from God! Even though some people are better than others, your neighbor versus Stalin, both are guilty in view of God’s perspective. (vs. 1: 10; 17). Our only hope is in the Person and Work of our Lord.

What do you think righteousness is?  Let me know :-)

Posted in Devotionals, Family DevotionalsView Comments

You can not lose by doing the right thing

Isaiah 33:14-17

14 The sinners in Zion are rightly terrified;
the godless are at their wit’s end:
‘Who among us can survive this firestorm?
Who of us can get out of this purge with our lives?’”

15 The answer’s simple:
Live right,
speak the truth,
despise exploitation,
refuse bribes,
reject violence,
avoid evil amusements.

16 This is how you raise your standard of living!
A safe and stable way to live.
A nourishing, satisfying way to live.
God Makes All the Decisions Here

17 Oh, you’ll see the king—a beautiful sight!
And you’ll take in the wide vistas of land.

My wife and I help couples in crisis through our Marriage Restoration Intensive program. These verses were part of my daily reading, but I felt like they were perfect verses for anyone going through a struggle or a hurting marriage.

I tell individuals all the time, “You can’t lose if you do the right thing.” This doesn’t mean that life is easy, because sometimes the right thing to do is also the toughest thing to do. But in the end, when it really matters, you can’t lose because God will not forget how you handled yourself and you will be blessed!

Posted in Family DevotionalsView Comments

A Family Devotional: How do you find strength in God?

Play the Podcast

 

What does it take to find strength in God? Listen to our latest (unedited) family devotional to find out.

Isaiah 40:29 “He energizes those who get tired, gives fresh strength to dropouts.”

Listen to the Podcast

Finding strength in God

Possible family questions:

  1. What does it look like if you are depending on God?
  2. How have you depended on God before, and how has God given you strength?
  3. What would you prayer sound like if you were asking God for strength?

Posted in Family Devotionals, PodcastsView Comments

A family devotional: Can you go to God for help?

Play the Podcast

 

Sorry it has taken me this long to get our second edition of the Smalley Family devotional! Remember, these are unedited and uncut (and slightly disturbing). My hope is that you get encouragement to do your own family devotionals because you experience that they are not as clean, organized, and perfect when I do them. :-)

The verse is James 1:5 and is from The Message:

5 If you don’t know what you’re doing, pray to the Father. He loves to help. You’ll get his help, and won’t be condescended to when you ask for it.

By the way, you won’t believe how Reagan worked the word “cheese” into this devotional. It is quite hilarious!

Questions you can ask the kids:

  1. What kinds of questions can you ask God?
  2. Does God seem interested in our problems?
  3. Is there any problem that we can have that God would laugh at or ignore?

Posted in Family Devotionals, Podcasts, The Top PostsView Comments

A family devotional: Desiring God’s will over your own

Our pastor, Ken Werlein, was preaching today on overcoming the storms in your life and he read from Daniel 3.  It is the story of Shadrach, Meshach, and Abednego.

There is a verse or two that really stood out to me this morning and I thought it would make a great family devotional.  We will have this ourselves on Monday, but I wanted to give a heads up to you before Monday.

Here are the verses that I want to focus on (Daniel 3:16-18 MSG):

16 Shadrach, Meshach, and Abednego answered King Nebuchadnezzar, “Your threat means nothing to us. 17 If you throw us in the fire, the God we serve can rescue us from your roaring furnace and anything else you might cook up, O king. 18 But even if he doesn’t, it wouldn’t make a bit of difference, O king. We still wouldn’t serve your gods or worship the gold statue you set up.”

What stands out to me in these verses is that they tell King Nebuchadnezzar that “if” God wants to save us, He can.  The word “if” is important for us to understand when it comes to following God’s will.  What they recognized is that God may not want to save them from the fire, but they chose to not dishonor God anyways.

Shadrach, Meshach, and Abednego knew they were not allowed to worship any idols, even if it meant their death.  So they did what was right in God’s eyes and didn’t worry about whether or not it would turn out well for them here on earth.

They were God focused and not “fire” focused.

We always need to remember that God’s will is far better than our own.  Sometimes we pray for things to happen, as if God himself told us to pray for them, and then we are hurt or dissapointed when they don’t turn out like we wanted.

This is why, when I pray, I always end my prayers with, “and God, if this is not your will, then please give me the wisdom to see your will because ultimately, Lord, I want your will done in this thing and not my own.”

Posted in Family DevotionalsView Comments

advert

PHVsPjxsaT48c3Ryb25nPndvb19hZHNfcm90YXRlPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzIwMF9hZHNlbnNlPC9zdHJvbmc+IC0gPCEtLS8qIE9wZW5YIEphdmFzY3JpcHQgVGFnIHYyLjguMi1yYzI1ICovLS0+DQoNCjxzY3JpcHQgdHlwZT1cJ3RleHQvamF2YXNjcmlwdFwnPjwhLS0vLzwhW0NEQVRBWw0KICAgdmFyIG0zX3UgPSAobG9jYXRpb24ucHJvdG9jb2w9PVwnaHR0cHM6XCc/XCdodHRwczovL2QxLm9wZW54Lm9yZy9hanMucGhwXCc6XCdodHRwOi8vZDEub3Blbngub3JnL2Fqcy5waHBcJyk7DQogICB2YXIgbTNfciA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo5OTk5OTk5OTk5OSk7DQogICBpZiAoIWRvY3VtZW50Lk1BWF91c2VkKSBkb2N1bWVudC5NQVhfdXNlZCA9IFwnLFwnOw0KICAgZG9jdW1lbnQud3JpdGUgKFwiPHNjclwiK1wiaXB0IHR5cGU9XCd0ZXh0L2phdmFzY3JpcHRcJyBzcmM9XCdcIittM191KTsNCiAgIGRvY3VtZW50LndyaXRlIChcIj96b25laWQ9ODM4OTYmYW1wO3RhcmdldD1fdG9wXCIpOw0KICAgZG9jdW1lbnQud3JpdGUgKFwnJmFtcDtjYj1cJyArIG0zX3IpOw0KICAgaWYgKGRvY3VtZW50Lk1BWF91c2VkICE9IFwnLFwnKSBkb2N1bWVudC53cml0ZSAoXCImYW1wO2V4Y2x1ZGU9XCIgKyBkb2N1bWVudC5NQVhfdXNlZCk7DQogICBkb2N1bWVudC53cml0ZSAoZG9jdW1lbnQuY2hhcnNldCA/IFwnJmFtcDtjaGFyc2V0PVwnK2RvY3VtZW50LmNoYXJzZXQgOiAoZG9jdW1lbnQuY2hhcmFjdGVyU2V0ID8gXCcmYW1wO2NoYXJzZXQ9XCcrZG9jdW1lbnQuY2hhcmFjdGVyU2V0IDogXCdcJykpOw0KICAgZG9jdW1lbnQud3JpdGUgKFwiJmFtcDtsb2M9XCIgKyBlc2NhcGUod2luZG93LmxvY2F0aW9uKSk7DQogICBpZiAoZG9jdW1lbnQucmVmZXJyZXIpIGRvY3VtZW50LndyaXRlIChcIiZhbXA7cmVmZXJlcj1cIiArIGVzY2FwZShkb2N1bWVudC5yZWZlcnJlcikpOw0KICAgaWYgKGRvY3VtZW50LmNvbnRleHQpIGRvY3VtZW50LndyaXRlIChcIiZjb250ZXh0PVwiICsgZXNjYXBlKGRvY3VtZW50LmNvbnRleHQpKTsNCiAgIGlmIChkb2N1bWVudC5tbW1fZm8pIGRvY3VtZW50LndyaXRlIChcIiZhbXA7bW1tX2ZvPTFcIik7DQogICBkb2N1bWVudC53cml0ZSAoXCJcJz48XFwvc2NyXCIrXCJpcHQ+XCIpOw0KLy9dXT4tLT48L3NjcmlwdD48bm9zY3JpcHQ+PGEgaHJlZj1cJ2h0dHA6Ly9kMS5vcGVueC5vcmcvY2sucGhwP249YTdmOTg4ZTAmY2I9SU5TRVJUX1JBTkRPTV9OVU1CRVJfSEVSRVwnIHRhcmdldD1cJ190b3BcJz48aW1nIHNyYz1cJ2h0dHA6Ly9kMS5vcGVueC5vcmcvYXZ3LnBocD96b25laWQ9ODM4OTYmY2I9SU5TRVJUX1JBTkRPTV9OVU1CRVJfSEVSRSZuPWE3Zjk4OGUwXCcgYm9yZGVyPVwnMFwnIGFsdD1cJ1wnIC8+PC9hPjwvbm9zY3JpcHQ+PC9saT48bGk+PHN0cm9uZz53b29fYWRfMjAwX2ltYWdlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfMjAwX3VybDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkXzI1MF9hZHNlbnNlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfMjUwX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXkuY2MvaW1hZ2VzL0FzTG9uZ0FzV2VCb3RoLTI1MHgyNTAuanBnPC9saT48bGk+PHN0cm9uZz53b29fYWRfMjUwX3VybDwvc3Ryb25nPiAtIGh0dHA6Ly9zbWFsbGV5b25saW5lc3RvcmUuY29tL2FzbG9uZ2Fzd2Vib3Roc2hhbGxsaXZlLmFzcHg8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X2Fkc2Vuc2U8L3N0cm9uZz4gLSA8IS0tLyogT3BlblggSmF2YXNjcmlwdCBUYWcgdjIuOC41IChSaWNoIE1lZGlhIC0gT3BlblgpICovLS0+Cgo8IS0tLyoKICAqIFRoZSBiYWNrdXAgaW1hZ2Ugc2VjdGlvbiBvZiB0aGlzIHRhZyBoYXMgYmVlbiBnZW5lcmF0ZWQgZm9yIHVzZSBvbiBhCiAgKiBub24tU1NMIHBhZ2UuIElmIHRoaXMgdGFnIGlzIHRvIGJlIHBsYWNlZCBvbiBhbiBTU0wgcGFnZSwgY2hhbmdlIHRoZQogICogICBcJ2h0dHA6Ly9kMS5vcGVueC5vcmcvLi4uXCcKICAqIHRvCiAgKiAgIFwnaHR0cHM6Ly9kMS5vcGVueC5vcmcvLi4uXCcKICAqCiAgKiBUaGlzIG5vc2NyaXB0IHNlY3Rpb24gb2YgdGhpcyB0YWcgb25seSBzaG93cyBpbWFnZSBiYW5uZXJzLiBUaGVyZQogICogaXMgbm8gd2lkdGggb3IgaGVpZ2h0IGluIHRoZXNlIGJhbm5lcnMsIHNvIGlmIHlvdSB3YW50IHRoZXNlIHRhZ3MgdG8KICAqIGFsbG9jYXRlIHNwYWNlIGZvciB0aGUgYWQgYmVmb3JlIGl0IHNob3dzLCB5b3Ugd2lsbCBuZWVkIHRvIGFkZCB0aGlzCiAgKiBpbmZvcm1hdGlvbiB0byB0aGUgPGltZz4gdGFnLgogICoKICAqIElmIHlvdSBkbyBub3Qgd2FudCB0byBkZWFsIHdpdGggdGhlIGludHJpY2l0aWVzIG9mIHRoZSBub3NjcmlwdAogICogc2VjdGlvbiwgZGVsZXRlIHRoZSB0YWcgKGZyb20gPG5vc2NyaXB0Pi4uLiB0byA8L25vc2NyaXB0PikuIE9uCiAgKiBhdmVyYWdlLCB0aGUgbm9zY3JpcHQgdGFnIGlzIGNhbGxlZCBmcm9tIGxlc3MgdGhhbiAxJSBvZiBpbnRlcm5ldAogICogdXNlcnMuCiAgKi8tLT4KCjxzY3JpcHQgdHlwZT1cJ3RleHQvamF2YXNjcmlwdFwnPjwhLS0vLzwhW0NEQVRBWwogICBkb2N1bWVudC5NQVhfY3QwID1cJ3tjbGlja3VybH1cJzsKCiAgIHZhciBtM191ID0gKGxvY2F0aW9uLnByb3RvY29sPT1cJ2h0dHBzOlwnP1wnaHR0cHM6Ly9kMS5vcGVueC5vcmcvYWpzLnBocFwnOlwnaHR0cDovL2QxLm9wZW54Lm9yZy9hanMucGhwXCcpOwogICB2YXIgbTNfciA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSo5OTk5OTk5OTk5OSk7CiAgIGlmICghZG9jdW1lbnQuTUFYX3VzZWQpIGRvY3VtZW50Lk1BWF91c2VkID0gXCcsXCc7CiAgIGRvY3VtZW50LndyaXRlICgiPHNjciIrImlwdCB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCcgc3JjPVwnIittM191KTsKICAgZG9jdW1lbnQud3JpdGUgKCI/em9uZWlkPTExODE0OSIpOwogICBkb2N1bWVudC53cml0ZSAoXCcmYW1wO2NiPVwnICsgbTNfcik7CiAgIGlmIChkb2N1bWVudC5NQVhfdXNlZCAhPSBcJyxcJykgZG9jdW1lbnQud3JpdGUgKCImYW1wO2V4Y2x1ZGU9IiArIGRvY3VtZW50Lk1BWF91c2VkKTsKICAgZG9jdW1lbnQud3JpdGUgKGRvY3VtZW50LmNoYXJzZXQgPyBcJyZhbXA7Y2hhcnNldD1cJytkb2N1bWVudC5jaGFyc2V0IDogKGRvY3VtZW50LmNoYXJhY3RlclNldCA/IFwnJmFtcDtjaGFyc2V0PVwnK2RvY3VtZW50LmNoYXJhY3RlclNldCA6IFwnXCcpKTsKICAgZG9jdW1lbnQud3JpdGUgKCImYW1wO2xvYz0iICsgZXNjYXBlKHdpbmRvdy5sb2NhdGlvbikpOwogICBpZiAoZG9jdW1lbnQucmVmZXJyZXIpIGRvY3VtZW50LndyaXRlICgiJmFtcDtyZWZlcmVyPSIgKyBlc2NhcGUoZG9jdW1lbnQucmVmZXJyZXIpKTsKICAgaWYgKGRvY3VtZW50LmNvbnRleHQpIGRvY3VtZW50LndyaXRlICgiJmNvbnRleHQ9IiArIGVzY2FwZShkb2N1bWVudC5jb250ZXh0KSk7CiAgIGlmICgodHlwZW9mKGRvY3VtZW50Lk1BWF9jdDApICE9IFwndW5kZWZpbmVkXCcpICYmIChkb2N1bWVudC5NQVhfY3QwLnN1YnN0cmluZygwLDQpID09IFwnaHR0cFwnKSkgewogICAgICAgZG9jdW1lbnQud3JpdGUgKCImYW1wO2N0MD0iICsgZXNjYXBlKGRvY3VtZW50Lk1BWF9jdDApKTsKICAgfQogICBpZiAoZG9jdW1lbnQubW1tX2ZvKSBkb2N1bWVudC53cml0ZSAoIiZhbXA7bW1tX2ZvPTEiKTsKICAgZG9jdW1lbnQud3JpdGUgKCJcJz48L3NjciIrImlwdD4iKTsKLy9dXT4tLT48L3NjcmlwdD48bm9zY3JpcHQ+PGEgaHJlZj1cJ2h0dHA6Ly9kMS5vcGVueC5vcmcvY2sucGhwP249YTU0ZWFmZmEmY2I9e3JhbmRvbX1cJyB0YXJnZXQ9XCdfYmxhbmtcJz48aW1nIHNyYz1cJ2h0dHA6Ly9kMS5vcGVueC5vcmcvYXZ3LnBocD96b25laWQ9MTE4MTQ5JmNiPXtyYW5kb219Jm49YTU0ZWFmZmEmY3QwPXtjbGlja3VybH1cJyBib3JkZXI9XCcwXCcgYWx0PVwnXCcgLz48L2E+PC9ub3NjcmlwdD48L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X2Rpc2FibGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2NvbnRlbnRfaW1hZ2U8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy00Njh4NjAtMi5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9jb250ZW50X3VybDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzE8L3N0cm9uZz4gLSBodHRwOi8vc21hbGxleS5jYy9pbWFnZXMvTmV3bHl3ZWRLaXQtMTI1eDEyNS5wbmc8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8yPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXkuY2MvaW1hZ2VzL1dvcmtib29rcy0xMjV4MTI1LnBuZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzM8L3N0cm9uZz4gLSBodHRwOi8vc21hbGxleS5jYy9pbWFnZXMvRW1icmFjZS0xMjV4MTI1LnBuZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzQ8L3N0cm9uZz4gLSBodHRwOi8vc21hbGxleS5jYy9pbWFnZXMvUFlGLTEyNXgxMjUuanBnPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfNTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtNC5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV82PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS00LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX21wdV9hZHNlbnNlPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fYWRfbXB1X2Rpc2FibGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX21wdV9pbWFnZTwvc3Ryb25nPiAtIGh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9ETkEtMzAwWDI1MC5qcGc8L2xpPjxsaT48c3Ryb25nPndvb19hZF9tcHVfdXJsPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vZG5hb2ZyZWxhdGlvbnNoaXBzc2VyaWVzb25kdmQuYXNweDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3RvcF9hZHNlbnNlPC9zdHJvbmc+IC0gPCEtLS8qIE9wZW5YIEphdmFzY3JpcHQgVGFnIHYyLjguNSAoUmljaCBNZWRpYSAtIE9wZW5YKSAqLy0tPg0KDQo8IS0tLyoNCiAgKiBUaGUgYmFja3VwIGltYWdlIHNlY3Rpb24gb2YgdGhpcyB0YWcgaGFzIGJlZW4gZ2VuZXJhdGVkIGZvciB1c2Ugb24gYQ0KICAqIG5vbi1TU0wgcGFnZS4gSWYgdGhpcyB0YWcgaXMgdG8gYmUgcGxhY2VkIG9uIGFuIFNTTCBwYWdlLCBjaGFuZ2UgdGhlDQogICogICBcJ2h0dHA6Ly9kMS5vcGVueC5vcmcvLi4uXCcNCiAgKiB0bw0KICAqICAgXCdodHRwczovL2QxLm9wZW54Lm9yZy8uLi5cJw0KICAqDQogICogVGhpcyBub3NjcmlwdCBzZWN0aW9uIG9mIHRoaXMgdGFnIG9ubHkgc2hvd3MgaW1hZ2UgYmFubmVycy4gVGhlcmUNCiAgKiBpcyBubyB3aWR0aCBvciBoZWlnaHQgaW4gdGhlc2UgYmFubmVycywgc28gaWYgeW91IHdhbnQgdGhlc2UgdGFncyB0bw0KICAqIGFsbG9jYXRlIHNwYWNlIGZvciB0aGUgYWQgYmVmb3JlIGl0IHNob3dzLCB5b3Ugd2lsbCBuZWVkIHRvIGFkZCB0aGlzDQogICogaW5mb3JtYXRpb24gdG8gdGhlIDxpbWc+IHRhZy4NCiAgKg0KICAqIElmIHlvdSBkbyBub3Qgd2FudCB0byBkZWFsIHdpdGggdGhlIGludHJpY2l0aWVzIG9mIHRoZSBub3NjcmlwdA0KICAqIHNlY3Rpb24sIGRlbGV0ZSB0aGUgdGFnIChmcm9tIDxub3NjcmlwdD4uLi4gdG8gPC9ub3NjcmlwdD4pLiBPbg0KICAqIGF2ZXJhZ2UsIHRoZSBub3NjcmlwdCB0YWcgaXMgY2FsbGVkIGZyb20gbGVzcyB0aGFuIDElIG9mIGludGVybmV0DQogICogdXNlcnMuDQogICovLS0+DQoNCjxzY3JpcHQgdHlwZT1cJ3RleHQvamF2YXNjcmlwdFwnPjwhLS0vLzwhW0NEQVRBWw0KICAgZG9jdW1lbnQuTUFYX2N0MCA9XCd7Y2xpY2t1cmx9XCc7DQoNCiAgIHZhciBtM191ID0gKGxvY2F0aW9uLnByb3RvY29sPT1cJ2h0dHBzOlwnP1wnaHR0cHM6Ly9kMS5vcGVueC5vcmcvYWpzLnBocFwnOlwnaHR0cDovL2QxLm9wZW54Lm9yZy9hanMucGhwXCcpOw0KICAgdmFyIG0zX3IgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OTk5OTk5OTkpOw0KICAgaWYgKCFkb2N1bWVudC5NQVhfdXNlZCkgZG9jdW1lbnQuTUFYX3VzZWQgPSBcJyxcJzsNCiAgIGRvY3VtZW50LndyaXRlIChcIjxzY3JcIitcImlwdCB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCcgc3JjPVwnXCIrbTNfdSk7DQogICBkb2N1bWVudC53cml0ZSAoXCI/em9uZWlkPTY0NTgyXCIpOw0KICAgZG9jdW1lbnQud3JpdGUgKFwnJmFtcDtjYj1cJyArIG0zX3IpOw0KICAgaWYgKGRvY3VtZW50Lk1BWF91c2VkICE9IFwnLFwnKSBkb2N1bWVudC53cml0ZSAoXCImYW1wO2V4Y2x1ZGU9XCIgKyBkb2N1bWVudC5NQVhfdXNlZCk7DQogICBkb2N1bWVudC53cml0ZSAoZG9jdW1lbnQuY2hhcnNldCA/IFwnJmFtcDtjaGFyc2V0PVwnK2RvY3VtZW50LmNoYXJzZXQgOiAoZG9jdW1lbnQuY2hhcmFjdGVyU2V0ID8gXCcmYW1wO2NoYXJzZXQ9XCcrZG9jdW1lbnQuY2hhcmFjdGVyU2V0IDogXCdcJykpOw0KICAgZG9jdW1lbnQud3JpdGUgKFwiJmFtcDtsb2M9XCIgKyBlc2NhcGUod2luZG93LmxvY2F0aW9uKSk7DQogICBpZiAoZG9jdW1lbnQucmVmZXJyZXIpIGRvY3VtZW50LndyaXRlIChcIiZhbXA7cmVmZXJlcj1cIiArIGVzY2FwZShkb2N1bWVudC5yZWZlcnJlcikpOw0KICAgaWYgKGRvY3VtZW50LmNvbnRleHQpIGRvY3VtZW50LndyaXRlIChcIiZjb250ZXh0PVwiICsgZXNjYXBlKGRvY3VtZW50LmNvbnRleHQpKTsNCiAgIGlmICgodHlwZW9mKGRvY3VtZW50Lk1BWF9jdDApICE9IFwndW5kZWZpbmVkXCcpICYmIChkb2N1bWVudC5NQVhfY3QwLnN1YnN0cmluZygwLDQpID09IFwnaHR0cFwnKSkgew0KICAgICAgIGRvY3VtZW50LndyaXRlIChcIiZhbXA7Y3QwPVwiICsgZXNjYXBlKGRvY3VtZW50Lk1BWF9jdDApKTsNCiAgIH0NCiAgIGlmIChkb2N1bWVudC5tbW1fZm8pIGRvY3VtZW50LndyaXRlIChcIiZhbXA7bW1tX2ZvPTFcIik7DQogICBkb2N1bWVudC53cml0ZSAoXCJcJz48L3NjclwiK1wiaXB0PlwiKTsNCi8vXV0+LS0+PC9zY3JpcHQ+PG5vc2NyaXB0PjxhIGhyZWY9XCdodHRwOi8vZDEub3Blbngub3JnL2NrLnBocD9uPWExZGMxZDRmJmNiPXtyYW5kb219XCcgdGFyZ2V0PVwnX2JsYW5rXCc+PGltZyBzcmM9XCdodHRwOi8vZDEub3Blbngub3JnL2F2dy5waHA/em9uZWlkPTY0NTgyJmNiPXtyYW5kb219Jm49YTFkYzFkNGYmY3QwPXtjbGlja3VybH1cJyBib3JkZXI9XCcwXCcgYWx0PVwnXCcgLz48L2E+PC9ub3NjcmlwdD48L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3BfZGlzYWJsZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtNDY4eDYwLTIuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX3VybDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8xPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vdGhlbmV3bHl3ZWRraXQuYXNweDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8yPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vd29ya2Jvb2tzc3R1ZHlndWlkZXMuYXNweDwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8zPC9zdHJvbmc+IC0gaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vZW1icmFjZS10aGVtYXJyaWFnZXNlbWluYXJhdWRpb3Nlcmllcy5hc3B4PC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzQ8L3N0cm9uZz4gLSBodHRwOi8vc21hbGxleW9ubGluZXN0b3JlLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF81PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzY8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hbHRfc3R5bGVzaGVldDwvc3Ryb25nPiAtIGRlZmF1bHQuY3NzPC9saT48bGk+PHN0cm9uZz53b29fYXJjaGl2ZV9ib3hlczwvc3Ryb25nPiAtIE9uPC9saT48bGk+PHN0cm9uZz53b29fYXJjaGl2ZV9jb250ZW50PC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2F1dGhvcjwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19hdXRvX2ltZzwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYm94ZWRfdGh1bWJfaGVpZ2h0PC9zdHJvbmc+IC0gMTAwPC9saT48bGk+PHN0cm9uZz53b29fYm94ZWRfdGh1bWJfd2lkdGg8L3N0cm9uZz4gLSAyMzQ8L2xpPjxsaT48c3Ryb25nPndvb19icmVhZGNydW1iczwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYnV5X3RoZW1lczwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19jYXJvdXNlbF9oZWlnaHQ8L3N0cm9uZz4gLSAyOTI8L2xpPjxsaT48c3Ryb25nPndvb19jYXRuYXZfZXhjbHVkZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9leDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2NhdF9tZW51PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jb21tZW50X3Bvc3RzPC9zdHJvbmc+IC0gNTwvbGk+PGxpPjxzdHJvbmc+d29vX2NvbnRhY3Rmb3JtX2VtYWlsPC9zdHJvbmc+IC0gaW5mb0BzbWFsbGV5LmNjPC9saT48bGk+PHN0cm9uZz53b29fY29udGVudDwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fY29udGVudF9hcmNoaXZlczwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fY29udGVudF9mZWF0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fY3NzPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY3VzdG9tX2Zhdmljb248L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fdXBsb2FkX3RyYWNraW5nPC9zdHJvbmc+IC0gYToxOntpOjA7YTo0OntzOjQ6ImZpbGUiO3M6NjA6Ii9ob21lcGFnZXMvMjQvZDE5MjcwNzQ1MC9odGRvY3MvR29TbWFsbGV5L2ltYWdlcy9kYXRpbmcyLmpwZyI7czozOiJ1cmwiO3M6MzY6Imh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9kYXRpbmcyLmpwZyI7czo0OiJ0eXBlIjtzOjEwOiJpbWFnZS9qcGVnIjtzOjExOiJvcHRpb25fbmFtZSI7czo1OiJJbWFnZSI7fX08L2xpPjxsaT48c3Ryb25nPndvb19lbWJlZDwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19mZWF0dXJlZF9jYXRlZ29yeTwvc3Ryb25nPiAtIEZlYXR1cmVkPC9saT48bGk+PHN0cm9uZz53b29fZmVhdHVyZWRfcG9zdHM8L3N0cm9uZz4gLSAxPC9saT48bGk+PHN0cm9uZz53b29fZmVhdHVyZWRfdGFnczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlYXRfZW50cmllczwvc3Ryb25nPiAtIDQ8L2xpPjxsaT48c3Ryb25nPndvb19mZWVkYnVybmVyX2lkPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl91cmw8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19mb290ZXJfY3JlZGl0czwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2Zvb3Rlcl9pbWFnZTwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZyYW1ld29ya191cGRhdGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2ZyYW1ld29ya192ZXJzaW9uPC9zdHJvbmc+IC0gMi41LjM8L2xpPjxsaT48c3Ryb25nPndvb19mdWxsX3RodW1iX2hlaWdodDwvc3Ryb25nPiAtIDE4MDwvbGk+PGxpPjxzdHJvbmc+d29vX2Z1bGxfdGh1bWJfd2lkdGg8L3N0cm9uZz4gLSA1NjA8L2xpPjxsaT48c3Ryb25nPndvb19nZXRfaW1hZ2VfaGVpZ2h0PC9zdHJvbmc+IC0gMTQyPC9saT48bGk+PHN0cm9uZz53b29fZ2V0X2ltYWdlX3dpZHRoPC9zdHJvbmc+IC0gMTkwPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfYXJjPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2JveGVzPC9zdHJvbmc+IC0gT248L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2NvbnRlbnQ8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfZmVhdHVyZWQ8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9saW5rPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfbGlua19kZXNjPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29faG9tZV9saW5rX3RleHQ8L3N0cm9uZz4gLSBIb21lPC9saT48bGk+PHN0cm9uZz53b29faG9tZV90aHVtYl9oZWlnaHQ8L3N0cm9uZz4gLSA5MjwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfdGh1bWJfd2lkdGg8L3N0cm9uZz4gLSAyNDc8L2xpPjxsaT48c3Ryb25nPndvb19pbWFnZV9oZWlnaHQ8L3N0cm9uZz4gLSAyMTA8L2xpPjxsaT48c3Ryb25nPndvb19pbWFnZV9zaW5nbGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2ltYWdlX3dpZHRoPC9zdHJvbmc+IC0gNTQwPC9saT48bGk+PHN0cm9uZz53b29fbG9nbzwvc3Ryb25nPiAtIGh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9TSVRFLUhFQURFUjEucG5nPC9saT48bGk+PHN0cm9uZz53b29fbWFudWFsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL3N1cHBvcnQvdGhlbWUtZG9jdW1lbnRhdGlvbi9nYXpldHRlLWVkaXRpb24vPC9saT48bGk+PHN0cm9uZz53b29fbmF2X2V4Y2x1ZGU8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19vcHRpb25zPC9zdHJvbmc+IC0gYToxMDc6e3M6MTQ6Indvb19hZHNfcm90YXRlIjtzOjQ6InRydWUiO3M6MTg6Indvb19hZF8yMDBfYWRzZW5zZSI7czoxMzM4OiI8IS0tLyogT3BlblggSmF2YXNjcmlwdCBUYWcgdjIuOC4yLXJjMjUgKi8tLT4NCg0KPHNjcmlwdCB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCc+PCEtLS8vPCFbQ0RBVEFbDQogICB2YXIgbTNfdSA9IChsb2NhdGlvbi5wcm90b2NvbD09XCdodHRwczpcJz9cJ2h0dHBzOi8vZDEub3Blbngub3JnL2Fqcy5waHBcJzpcJ2h0dHA6Ly9kMS5vcGVueC5vcmcvYWpzLnBocFwnKTsNCiAgIHZhciBtM19yID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjk5OTk5OTk5OTk5KTsNCiAgIGlmICghZG9jdW1lbnQuTUFYX3VzZWQpIGRvY3VtZW50Lk1BWF91c2VkID0gXCcsXCc7DQogICBkb2N1bWVudC53cml0ZSAoXCI8c2NyXCIrXCJpcHQgdHlwZT1cJ3RleHQvamF2YXNjcmlwdFwnIHNyYz1cJ1wiK20zX3UpOw0KICAgZG9jdW1lbnQud3JpdGUgKFwiP3pvbmVpZD04Mzg5NiZhbXA7dGFyZ2V0PV90b3BcIik7DQogICBkb2N1bWVudC53cml0ZSAoXCcmYW1wO2NiPVwnICsgbTNfcik7DQogICBpZiAoZG9jdW1lbnQuTUFYX3VzZWQgIT0gXCcsXCcpIGRvY3VtZW50LndyaXRlIChcIiZhbXA7ZXhjbHVkZT1cIiArIGRvY3VtZW50Lk1BWF91c2VkKTsNCiAgIGRvY3VtZW50LndyaXRlIChkb2N1bWVudC5jaGFyc2V0ID8gXCcmYW1wO2NoYXJzZXQ9XCcrZG9jdW1lbnQuY2hhcnNldCA6IChkb2N1bWVudC5jaGFyYWN0ZXJTZXQgPyBcJyZhbXA7Y2hhcnNldD1cJytkb2N1bWVudC5jaGFyYWN0ZXJTZXQgOiBcJ1wnKSk7DQogICBkb2N1bWVudC53cml0ZSAoXCImYW1wO2xvYz1cIiArIGVzY2FwZSh3aW5kb3cubG9jYXRpb24pKTsNCiAgIGlmIChkb2N1bWVudC5yZWZlcnJlcikgZG9jdW1lbnQud3JpdGUgKFwiJmFtcDtyZWZlcmVyPVwiICsgZXNjYXBlKGRvY3VtZW50LnJlZmVycmVyKSk7DQogICBpZiAoZG9jdW1lbnQuY29udGV4dCkgZG9jdW1lbnQud3JpdGUgKFwiJmNvbnRleHQ9XCIgKyBlc2NhcGUoZG9jdW1lbnQuY29udGV4dCkpOw0KICAgaWYgKGRvY3VtZW50Lm1tbV9mbykgZG9jdW1lbnQud3JpdGUgKFwiJmFtcDttbW1fZm89MVwiKTsNCiAgIGRvY3VtZW50LndyaXRlIChcIlwnPjxcXC9zY3JcIitcImlwdD5cIik7DQovL11dPi0tPjwvc2NyaXB0Pjxub3NjcmlwdD48YSBocmVmPVwnaHR0cDovL2QxLm9wZW54Lm9yZy9jay5waHA/bj1hN2Y5ODhlMCZjYj1JTlNFUlRfUkFORE9NX05VTUJFUl9IRVJFXCcgdGFyZ2V0PVwnX3RvcFwnPjxpbWcgc3JjPVwnaHR0cDovL2QxLm9wZW54Lm9yZy9hdncucGhwP3pvbmVpZD04Mzg5NiZjYj1JTlNFUlRfUkFORE9NX05VTUJFUl9IRVJFJm49YTdmOTg4ZTBcJyBib3JkZXI9XCcwXCcgYWx0PVwnXCcgLz48L2E+PC9ub3NjcmlwdD4iO3M6MTY6Indvb19hZF8yMDBfaW1hZ2UiO3M6MDoiIjtzOjE0OiJ3b29fYWRfMjAwX3VybCI7czowOiIiO3M6MTg6Indvb19hZF8yNTBfYWRzZW5zZSI7czowOiIiO3M6MTY6Indvb19hZF8yNTBfaW1hZ2UiO3M6NTE6Imh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9Bc0xvbmdBc1dlQm90aC0yNTB4MjUwLmpwZyI7czoxNDoid29vX2FkXzI1MF91cmwiO3M6NTg6Imh0dHA6Ly9zbWFsbGV5b25saW5lc3RvcmUuY29tL2FzbG9uZ2Fzd2Vib3Roc2hhbGxsaXZlLmFzcHgiO3M6MjI6Indvb19hZF9jb250ZW50X2Fkc2Vuc2UiO3M6MjIwODoiPCEtLS8qIE9wZW5YIEphdmFzY3JpcHQgVGFnIHYyLjguNSAoUmljaCBNZWRpYSAtIE9wZW5YKSAqLy0tPgoKPCEtLS8qCiAgKiBUaGUgYmFja3VwIGltYWdlIHNlY3Rpb24gb2YgdGhpcyB0YWcgaGFzIGJlZW4gZ2VuZXJhdGVkIGZvciB1c2Ugb24gYQogICogbm9uLVNTTCBwYWdlLiBJZiB0aGlzIHRhZyBpcyB0byBiZSBwbGFjZWQgb24gYW4gU1NMIHBhZ2UsIGNoYW5nZSB0aGUKICAqICAgXCdodHRwOi8vZDEub3Blbngub3JnLy4uLlwnCiAgKiB0bwogICogICBcJ2h0dHBzOi8vZDEub3Blbngub3JnLy4uLlwnCiAgKgogICogVGhpcyBub3NjcmlwdCBzZWN0aW9uIG9mIHRoaXMgdGFnIG9ubHkgc2hvd3MgaW1hZ2UgYmFubmVycy4gVGhlcmUKICAqIGlzIG5vIHdpZHRoIG9yIGhlaWdodCBpbiB0aGVzZSBiYW5uZXJzLCBzbyBpZiB5b3Ugd2FudCB0aGVzZSB0YWdzIHRvCiAgKiBhbGxvY2F0ZSBzcGFjZSBmb3IgdGhlIGFkIGJlZm9yZSBpdCBzaG93cywgeW91IHdpbGwgbmVlZCB0byBhZGQgdGhpcwogICogaW5mb3JtYXRpb24gdG8gdGhlIDxpbWc+IHRhZy4KICAqCiAgKiBJZiB5b3UgZG8gbm90IHdhbnQgdG8gZGVhbCB3aXRoIHRoZSBpbnRyaWNpdGllcyBvZiB0aGUgbm9zY3JpcHQKICAqIHNlY3Rpb24sIGRlbGV0ZSB0aGUgdGFnIChmcm9tIDxub3NjcmlwdD4uLi4gdG8gPC9ub3NjcmlwdD4pLiBPbgogICogYXZlcmFnZSwgdGhlIG5vc2NyaXB0IHRhZyBpcyBjYWxsZWQgZnJvbSBsZXNzIHRoYW4gMSUgb2YgaW50ZXJuZXQKICAqIHVzZXJzLgogICovLS0+Cgo8c2NyaXB0IHR5cGU9XCd0ZXh0L2phdmFzY3JpcHRcJz48IS0tLy88IVtDREFUQVsKICAgZG9jdW1lbnQuTUFYX2N0MCA9XCd7Y2xpY2t1cmx9XCc7CgogICB2YXIgbTNfdSA9IChsb2NhdGlvbi5wcm90b2NvbD09XCdodHRwczpcJz9cJ2h0dHBzOi8vZDEub3Blbngub3JnL2Fqcy5waHBcJzpcJ2h0dHA6Ly9kMS5vcGVueC5vcmcvYWpzLnBocFwnKTsKICAgdmFyIG0zX3IgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqOTk5OTk5OTk5OTkpOwogICBpZiAoIWRvY3VtZW50Lk1BWF91c2VkKSBkb2N1bWVudC5NQVhfdXNlZCA9IFwnLFwnOwogICBkb2N1bWVudC53cml0ZSAoIjxzY3IiKyJpcHQgdHlwZT1cJ3RleHQvamF2YXNjcmlwdFwnIHNyYz1cJyIrbTNfdSk7CiAgIGRvY3VtZW50LndyaXRlICgiP3pvbmVpZD0xMTgxNDkiKTsKICAgZG9jdW1lbnQud3JpdGUgKFwnJmFtcDtjYj1cJyArIG0zX3IpOwogICBpZiAoZG9jdW1lbnQuTUFYX3VzZWQgIT0gXCcsXCcpIGRvY3VtZW50LndyaXRlICgiJmFtcDtleGNsdWRlPSIgKyBkb2N1bWVudC5NQVhfdXNlZCk7CiAgIGRvY3VtZW50LndyaXRlIChkb2N1bWVudC5jaGFyc2V0ID8gXCcmYW1wO2NoYXJzZXQ9XCcrZG9jdW1lbnQuY2hhcnNldCA6IChkb2N1bWVudC5jaGFyYWN0ZXJTZXQgPyBcJyZhbXA7Y2hhcnNldD1cJytkb2N1bWVudC5jaGFyYWN0ZXJTZXQgOiBcJ1wnKSk7CiAgIGRvY3VtZW50LndyaXRlICgiJmFtcDtsb2M9IiArIGVzY2FwZSh3aW5kb3cubG9jYXRpb24pKTsKICAgaWYgKGRvY3VtZW50LnJlZmVycmVyKSBkb2N1bWVudC53cml0ZSAoIiZhbXA7cmVmZXJlcj0iICsgZXNjYXBlKGRvY3VtZW50LnJlZmVycmVyKSk7CiAgIGlmIChkb2N1bWVudC5jb250ZXh0KSBkb2N1bWVudC53cml0ZSAoIiZjb250ZXh0PSIgKyBlc2NhcGUoZG9jdW1lbnQuY29udGV4dCkpOwogICBpZiAoKHR5cGVvZihkb2N1bWVudC5NQVhfY3QwKSAhPSBcJ3VuZGVmaW5lZFwnKSAmJiAoZG9jdW1lbnQuTUFYX2N0MC5zdWJzdHJpbmcoMCw0KSA9PSBcJ2h0dHBcJykpIHsKICAgICAgIGRvY3VtZW50LndyaXRlICgiJmFtcDtjdDA9IiArIGVzY2FwZShkb2N1bWVudC5NQVhfY3QwKSk7CiAgIH0KICAgaWYgKGRvY3VtZW50Lm1tbV9mbykgZG9jdW1lbnQud3JpdGUgKCImYW1wO21tbV9mbz0xIik7CiAgIGRvY3VtZW50LndyaXRlICgiXCc+PC9zY3IiKyJpcHQ+Iik7Ci8vXV0+LS0+PC9zY3JpcHQ+PG5vc2NyaXB0PjxhIGhyZWY9XCdodHRwOi8vZDEub3Blbngub3JnL2NrLnBocD9uPWE1NGVhZmZhJmNiPXtyYW5kb219XCcgdGFyZ2V0PVwnX2JsYW5rXCc+PGltZyBzcmM9XCdodHRwOi8vZDEub3Blbngub3JnL2F2dy5waHA/em9uZWlkPTExODE0OSZjYj17cmFuZG9tfSZuPWE1NGVhZmZhJmN0MD17Y2xpY2t1cmx9XCcgYm9yZGVyPVwnMFwnIGFsdD1cJ1wnIC8+PC9hPjwvbm9zY3JpcHQ+IjtzOjIyOiJ3b29fYWRfY29udGVudF9kaXNhYmxlIjtzOjU6ImZhbHNlIjtzOjIwOiJ3b29fYWRfY29udGVudF9pbWFnZSI7czo1MToiaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtNDY4eDYwLTIuZ2lmIjtzOjE4OiJ3b29fYWRfY29udGVudF91cmwiO3M6MjQ6Imh0dHA6Ly93d3cud29vdGhlbWVzLmNvbSI7czoxNDoid29vX2FkX2ltYWdlXzEiO3M6NDg6Imh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9OZXdseXdlZEtpdC0xMjV4MTI1LnBuZyI7czoxNDoid29vX2FkX2ltYWdlXzIiO3M6NDY6Imh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9Xb3JrYm9va3MtMTI1eDEyNS5wbmciO3M6MTQ6Indvb19hZF9pbWFnZV8zIjtzOjQ0OiJodHRwOi8vc21hbGxleS5jYy9pbWFnZXMvRW1icmFjZS0xMjV4MTI1LnBuZyI7czoxNDoid29vX2FkX2ltYWdlXzQiO3M6NDA6Imh0dHA6Ly9zbWFsbGV5LmNjL2ltYWdlcy9QWUYtMTI1eDEyNS5qcGciO3M6MTQ6Indvb19hZF9pbWFnZV81IjtzOjUyOiJodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTQuZ2lmIjtzOjE0OiJ3b29fYWRfaW1hZ2VfNiI7czo1MjoiaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS00LmdpZiI7czoxODoid29vX2FkX21wdV9hZHNlbnNlIjtzOjA6IiI7czoxODoid29vX2FkX21wdV9kaXNhYmxlIjtzOjU6ImZhbHNlIjtzOjE2OiJ3b29fYWRfbXB1X2ltYWdlIjtzOjQwOiJodHRwOi8vc21hbGxleS5jYy9pbWFnZXMvRE5BLTMwMFgyNTAuanBnIjtzOjE0OiJ3b29fYWRfbXB1X3VybCI7czo2NDoiaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vZG5hb2ZyZWxhdGlvbnNoaXBzc2VyaWVzb25kdmQuYXNweCI7czoxODoid29vX2FkX3RvcF9hZHNlbnNlIjtzOjIyMDY6IjwhLS0vKiBPcGVuWCBKYXZhc2NyaXB0IFRhZyB2Mi44LjUgKFJpY2ggTWVkaWEgLSBPcGVuWCkgKi8tLT4KCjwhLS0vKgogICogVGhlIGJhY2t1cCBpbWFnZSBzZWN0aW9uIG9mIHRoaXMgdGFnIGhhcyBiZWVuIGdlbmVyYXRlZCBmb3IgdXNlIG9uIGEKICAqIG5vbi1TU0wgcGFnZS4gSWYgdGhpcyB0YWcgaXMgdG8gYmUgcGxhY2VkIG9uIGFuIFNTTCBwYWdlLCBjaGFuZ2UgdGhlCiAgKiAgIFwnaHR0cDovL2QxLm9wZW54Lm9yZy8uLi5cJwogICogdG8KICAqICAgXCdodHRwczovL2QxLm9wZW54Lm9yZy8uLi5cJwogICoKICAqIFRoaXMgbm9zY3JpcHQgc2VjdGlvbiBvZiB0aGlzIHRhZyBvbmx5IHNob3dzIGltYWdlIGJhbm5lcnMuIFRoZXJlCiAgKiBpcyBubyB3aWR0aCBvciBoZWlnaHQgaW4gdGhlc2UgYmFubmVycywgc28gaWYgeW91IHdhbnQgdGhlc2UgdGFncyB0bwogICogYWxsb2NhdGUgc3BhY2UgZm9yIHRoZSBhZCBiZWZvcmUgaXQgc2hvd3MsIHlvdSB3aWxsIG5lZWQgdG8gYWRkIHRoaXMKICAqIGluZm9ybWF0aW9uIHRvIHRoZSA8aW1nPiB0YWcuCiAgKgogICogSWYgeW91IGRvIG5vdCB3YW50IHRvIGRlYWwgd2l0aCB0aGUgaW50cmljaXRpZXMgb2YgdGhlIG5vc2NyaXB0CiAgKiBzZWN0aW9uLCBkZWxldGUgdGhlIHRhZyAoZnJvbSA8bm9zY3JpcHQ+Li4uIHRvIDwvbm9zY3JpcHQ+KS4gT24KICAqIGF2ZXJhZ2UsIHRoZSBub3NjcmlwdCB0YWcgaXMgY2FsbGVkIGZyb20gbGVzcyB0aGFuIDElIG9mIGludGVybmV0CiAgKiB1c2Vycy4KICAqLy0tPgoKPHNjcmlwdCB0eXBlPVwndGV4dC9qYXZhc2NyaXB0XCc+PCEtLS8vPCFbQ0RBVEFbCiAgIGRvY3VtZW50Lk1BWF9jdDAgPVwne2NsaWNrdXJsfVwnOwoKICAgdmFyIG0zX3UgPSAobG9jYXRpb24ucHJvdG9jb2w9PVwnaHR0cHM6XCc/XCdodHRwczovL2QxLm9wZW54Lm9yZy9hanMucGhwXCc6XCdodHRwOi8vZDEub3Blbngub3JnL2Fqcy5waHBcJyk7CiAgIHZhciBtM19yID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjk5OTk5OTk5OTk5KTsKICAgaWYgKCFkb2N1bWVudC5NQVhfdXNlZCkgZG9jdW1lbnQuTUFYX3VzZWQgPSBcJyxcJzsKICAgZG9jdW1lbnQud3JpdGUgKCI8c2NyIisiaXB0IHR5cGU9XCd0ZXh0L2phdmFzY3JpcHRcJyBzcmM9XCciK20zX3UpOwogICBkb2N1bWVudC53cml0ZSAoIj96b25laWQ9NjQ1ODIiKTsKICAgZG9jdW1lbnQud3JpdGUgKFwnJmFtcDtjYj1cJyArIG0zX3IpOwogICBpZiAoZG9jdW1lbnQuTUFYX3VzZWQgIT0gXCcsXCcpIGRvY3VtZW50LndyaXRlICgiJmFtcDtleGNsdWRlPSIgKyBkb2N1bWVudC5NQVhfdXNlZCk7CiAgIGRvY3VtZW50LndyaXRlIChkb2N1bWVudC5jaGFyc2V0ID8gXCcmYW1wO2NoYXJzZXQ9XCcrZG9jdW1lbnQuY2hhcnNldCA6IChkb2N1bWVudC5jaGFyYWN0ZXJTZXQgPyBcJyZhbXA7Y2hhcnNldD1cJytkb2N1bWVudC5jaGFyYWN0ZXJTZXQgOiBcJ1wnKSk7CiAgIGRvY3VtZW50LndyaXRlICgiJmFtcDtsb2M9IiArIGVzY2FwZSh3aW5kb3cubG9jYXRpb24pKTsKICAgaWYgKGRvY3VtZW50LnJlZmVycmVyKSBkb2N1bWVudC53cml0ZSAoIiZhbXA7cmVmZXJlcj0iICsgZXNjYXBlKGRvY3VtZW50LnJlZmVycmVyKSk7CiAgIGlmIChkb2N1bWVudC5jb250ZXh0KSBkb2N1bWVudC53cml0ZSAoIiZjb250ZXh0PSIgKyBlc2NhcGUoZG9jdW1lbnQuY29udGV4dCkpOwogICBpZiAoKHR5cGVvZihkb2N1bWVudC5NQVhfY3QwKSAhPSBcJ3VuZGVmaW5lZFwnKSAmJiAoZG9jdW1lbnQuTUFYX2N0MC5zdWJzdHJpbmcoMCw0KSA9PSBcJ2h0dHBcJykpIHsKICAgICAgIGRvY3VtZW50LndyaXRlICgiJmFtcDtjdDA9IiArIGVzY2FwZShkb2N1bWVudC5NQVhfY3QwKSk7CiAgIH0KICAgaWYgKGRvY3VtZW50Lm1tbV9mbykgZG9jdW1lbnQud3JpdGUgKCImYW1wO21tbV9mbz0xIik7CiAgIGRvY3VtZW50LndyaXRlICgiXCc+PC9zY3IiKyJpcHQ+Iik7Ci8vXV0+LS0+PC9zY3JpcHQ+PG5vc2NyaXB0PjxhIGhyZWY9XCdodHRwOi8vZDEub3Blbngub3JnL2NrLnBocD9uPWExZGMxZDRmJmNiPXtyYW5kb219XCcgdGFyZ2V0PVwnX2JsYW5rXCc+PGltZyBzcmM9XCdodHRwOi8vZDEub3Blbngub3JnL2F2dy5waHA/em9uZWlkPTY0NTgyJmNiPXtyYW5kb219Jm49YTFkYzFkNGYmY3QwPXtjbGlja3VybH1cJyBib3JkZXI9XCcwXCcgYWx0PVwnXCcgLz48L2E+PC9ub3NjcmlwdD4iO3M6MTg6Indvb19hZF90b3BfZGlzYWJsZSI7czo1OiJmYWxzZSI7czoxNjoid29vX2FkX3RvcF9pbWFnZSI7czo1MToiaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtNDY4eDYwLTIuZ2lmIjtzOjE0OiJ3b29fYWRfdG9wX3VybCI7czoyNDoiaHR0cDovL3d3dy53b290aGVtZXMuY29tIjtzOjEyOiJ3b29fYWRfdXJsXzEiO3M6NDk6Imh0dHA6Ly9zbWFsbGV5b25saW5lc3RvcmUuY29tL3RoZW5ld2x5d2Vka2l0LmFzcHgiO3M6MTI6Indvb19hZF91cmxfMiI7czo1NToiaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20vd29ya2Jvb2tzc3R1ZHlndWlkZXMuYXNweCI7czoxMjoid29vX2FkX3VybF8zIjtzOjcyOiJodHRwOi8vc21hbGxleW9ubGluZXN0b3JlLmNvbS9lbWJyYWNlLXRoZW1hcnJpYWdlc2VtaW5hcmF1ZGlvc2VyaWVzLmFzcHgiO3M6MTI6Indvb19hZF91cmxfNCI7czoyOToiaHR0cDovL3NtYWxsZXlvbmxpbmVzdG9yZS5jb20iO3M6MTI6Indvb19hZF91cmxfNSI7czoyNDoiaHR0cDovL3d3dy53b290aGVtZXMuY29tIjtzOjEyOiJ3b29fYWRfdXJsXzYiO3M6MjQ6Imh0dHA6Ly93d3cud29vdGhlbWVzLmNvbSI7czoxODoid29vX2FsdF9zdHlsZXNoZWV0IjtzOjExOiJza3libHVlLmNzcyI7czoxNzoid29vX2FyY2hpdmVfYm94ZXMiO3M6MjoiT24iO3M6MTk6Indvb19hcmNoaXZlX2NvbnRlbnQiO3M6NDoidHJ1ZSI7czoxMDoid29vX2F1dGhvciI7czo0OiJ0cnVlIjtzOjEyOiJ3b29fYXV0b19pbWciO3M6NToiZmFsc2UiO3M6MjI6Indvb19ib3hlZF90aHVtYl9oZWlnaHQiO3M6MzoiMTAwIjtzOjIxOiJ3b29fYm94ZWRfdGh1bWJfd2lkdGgiO3M6MzoiMjM0IjtzOjE1OiJ3b29fYnJlYWRjcnVtYnMiO3M6NToiZmFsc2UiO3M6MTQ6Indvb19idXlfdGhlbWVzIjtzOjQ6InRydWUiO3M6MTk6Indvb19jYXJvdXNlbF9oZWlnaHQiO3M6MzoiMjkyIjtzOjE4OiJ3b29fY2F0bmF2X2V4Y2x1ZGUiO3M6MDoiIjtzOjEwOiJ3b29fY2F0X2V4IjtzOjA6IiI7czoxMjoid29vX2NhdF9tZW51IjtzOjU6ImZhbHNlIjtzOjE3OiJ3b29fY29tbWVudF9wb3N0cyI7czoxOiI1IjtzOjIxOiJ3b29fY29udGFjdGZvcm1fZW1haWwiO3M6MTU6ImluZm9Ac21hbGxleS5jYyI7czoxMToid29vX2NvbnRlbnQiO3M6NToiZmFsc2UiO3M6MjA6Indvb19jb250ZW50X2FyY2hpdmVzIjtzOjU6ImZhbHNlIjtzOjE2OiJ3b29fY29udGVudF9mZWF0IjtzOjU6ImZhbHNlIjtzOjE0OiJ3b29fY3VzdG9tX2NzcyI7czowOiIiO3M6MTg6Indvb19jdXN0b21fZmF2aWNvbiI7czowOiIiO3M6MjY6Indvb19jdXN0b21fdXBsb2FkX3RyYWNraW5nIjthOjE6e2k6MDthOjQ6e3M6NDoiZmlsZSI7czo2MDoiL2hvbWVwYWdlcy8yNC9kMTkyNzA3NDUwL2h0ZG9jcy9Hb1NtYWxsZXkvaW1hZ2VzL2RhdGluZzIuanBnIjtzOjM6InVybCI7czozNjoiaHR0cDovL3NtYWxsZXkuY2MvaW1hZ2VzL2RhdGluZzIuanBnIjtzOjQ6InR5cGUiO3M6MTA6ImltYWdlL2pwZWciO3M6MTE6Im9wdGlvbl9uYW1lIjtzOjU6IkltYWdlIjt9fXM6OToid29vX2VtYmVkIjtzOjQ6InRydWUiO3M6MjE6Indvb19mZWF0dXJlZF9jYXRlZ29yeSI7czo4OiJGZWF0dXJlZCI7czoxODoid29vX2ZlYXR1cmVkX3Bvc3RzIjtzOjE6IjEiO3M6MTc6Indvb19mZWF0dXJlZF90YWdzIjtzOjA6IiI7czoxNjoid29vX2ZlYXRfZW50cmllcyI7czoxOiI2IjtzOjE3OiJ3b29fZmVlZGJ1cm5lcl9pZCI7czowOiIiO3M6MTg6Indvb19mZWVkYnVybmVyX3VybCI7czowOiIiO3M6MTg6Indvb19mb290ZXJfY3JlZGl0cyI7czowOiIiO3M6MTY6Indvb19mb290ZXJfaW1hZ2UiO3M6MDoiIjtzOjIwOiJ3b29fZnJhbWV3b3JrX3VwZGF0ZSI7czo1OiJmYWxzZSI7czoyMToid29vX2Z1bGxfdGh1bWJfaGVpZ2h0IjtzOjM6IjE4MCI7czoyMDoid29vX2Z1bGxfdGh1bWJfd2lkdGgiO3M6MzoiNTYwIjtzOjIwOiJ3b29fZ2V0X2ltYWdlX2hlaWdodCI7czozOiIxNDIiO3M6MTk6Indvb19nZXRfaW1hZ2Vfd2lkdGgiO3M6MzoiMTkwIjtzOjIwOiJ3b29fZ29vZ2xlX2FuYWx5dGljcyI7czowOiIiO3M6ODoid29vX2hvbWUiO3M6NToiZmFsc2UiO3M6MTI6Indvb19ob21lX2FyYyI7czo1OiJmYWxzZSI7czoxNDoid29vX2hvbWVfYm94ZXMiO3M6MjoiT24iO3M6MTY6Indvb19ob21lX2NvbnRlbnQiO3M6NToiZmFsc2UiO3M6MTc6Indvb19ob21lX2ZlYXR1cmVkIjtzOjQ6InRydWUiO3M6MTM6Indvb19ob21lX2xpbmsiO3M6NDoidHJ1ZSI7czoxODoid29vX2hvbWVfbGlua19kZXNjIjtzOjA6IiI7czoxODoid29vX2hvbWVfbGlua190ZXh0IjtzOjQ6IkhvbWUiO3M6MjE6Indvb19ob21lX3RodW1iX2hlaWdodCI7czoyOiI5MiI7czoyMDoid29vX2hvbWVfdGh1bWJfd2lkdGgiO3M6MzoiMjQ3IjtzOjE2OiJ3b29faW1hZ2VfaGVpZ2h0IjtzOjM6IjIxMCI7czoxNjoid29vX2ltYWdlX3NpbmdsZSI7czo1OiJmYWxzZSI7czoxNToid29vX2ltYWdlX3dpZHRoIjtzOjM6IjU0MCI7czo4OiJ3b29fbG9nbyI7czo0MToiaHR0cDovL3NtYWxsZXkuY2MvaW1hZ2VzL1NJVEUtSEVBREVSMS5wbmciO3M6MTU6Indvb19uYXZfZXhjbHVkZSI7czowOiIiO3M6MTc6Indvb19wb3B1bGFyX3Bvc3RzIjtzOjE6IjUiO3M6MTA6Indvb19yZXNpemUiO3M6NDoidHJ1ZSI7czoxNjoid29vX3Nob3duX3NsaWRlcyI7YToxOntpOjA7czozOiIyNDIiO31zOjE3OiJ3b29fc2hvd19jYXJvdXNlbCI7czo0OiJ0cnVlIjtzOjE2OiJ3b29fc2hvd19vcHRpb25zIjtzOjU6ImZhbHNlIjtzOjIzOiJ3b29fc2hvd190YWxraW5nX3BvaW50cyI7czo1OiJmYWxzZSI7czoxNDoid29vX3Nob3dfdmlkZW8iO3M6NDoidHJ1ZSI7czoxNzoid29vX3NpbmdsZV9oZWlnaHQiO3M6MzoiMTIwIjtzOjE2OiJ3b29fc2luZ2xlX3dpZHRoIjtzOjM6IjE4MCI7czoxNjoid29vX3NsaWRlcl9jZmFkZSI7czo1OiJmYWxzZSI7czoyNDoid29vX3NsaWRlcl9jb250ZW50X3NwZWVkIjtzOjQ6IjEwMDAiO3M6MTY6Indvb19zbGlkZXJfc2ZhZGUiO3M6NToiZmFsc2UiO3M6MTY6Indvb19zbGlkZXJfc3BlZWQiO3M6MzoiNTAwIjtzOjE4OiJ3b29fc2xpZGVyX3RpbWVvdXQiO3M6NDoiNjAwMCI7czo4OiJ3b29fdGFicyI7czo1OiJmYWxzZSI7czoyMzoid29vX3RhbGtpbmdfcG9pbnRzX3RhZ3MiO3M6MDoiIjtzOjEzOiJ3b29fdGhlbWVuYW1lIjtzOjg6IkJ1c3kgQmVlIjtzOjI1OiJ3b29fdGhlbWVfdmVyc2lvbl9jaGVja2VyIjtzOjQ6InRydWUiO3M6MTY6Indvb190aHVtYl9oZWlnaHQiO3M6MjoiODgiO3M6MTU6Indvb190aHVtYl93aWR0aCI7czoyOiI4OCI7czoxMToid29vX3R3aXR0ZXIiO3M6MDoiIjtzOjExOiJ3b29fdXBsb2FkcyI7YTo4OntpOjA7czo4MDoiaHR0cDovL3d3dy5nb3NtYWxsZXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvMTAtU21hbGxleU9ubGluZS1NYWluLUhlYWRlci5qcGciO2k6MTtzOjc5OiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy85LVNtYWxsZXlPbmxpbmUtTWFpbi1IZWFkZXIuanBnIjtpOjI7czo3OToiaHR0cDovL3d3dy5nb3NtYWxsZXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvOC1TbWFsbGV5T25saW5lLU1haW4tSGVhZGVyLmpwZyI7aTozO3M6Nzk6Imh0dHA6Ly93d3cuZ29zbWFsbGV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzctU21hbGxleU9ubGluZS1NYWluLUhlYWRlci5qcGciO2k6NDtzOjcxOiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy82LXN0b3JlLWhlYWRlci1sb2dvLnBuZyI7aTo1O3M6NzQ6Imh0dHA6Ly93d3cuZ29zbWFsbGV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzUtU21hbGxleS1sb2dvXzJjX21haW4uanBnIjtpOjY7czo3NDoiaHR0cDovL3d3dy5nb3NtYWxsZXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNC1TbWFsbGV5LWxvZ29fMmNfbWFpbi5qcGciO2k6NztzOjU4OiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8zLWxvZ28ucG5nIjt9czoyMjoid29vX3ZpZGVvX2Jyb3dzZXJfaW5pdCI7czoxOiIzIjtzOjE4OiJ3b29fdmlkZW9fY2F0ZWdvcnkiO3M6MTQ6IlZpZGVvIFBvZGNhc3RzIjtzOjE0OiJ3b29fdmlkZW9fdGFncyI7czowOiIiO308L2xpPjxsaT48c3Ryb25nPndvb19wb3B1bGFyX3Bvc3RzPC9zdHJvbmc+IC0gNTwvbGk+PGxpPjxzdHJvbmc+d29vX3Jlc2l6ZTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19zaG9ydG5hbWU8L3N0cm9uZz4gLSB3b288L2xpPjxsaT48c3Ryb25nPndvb19zaG93bl9zbGlkZXM8L3N0cm9uZz4gLSBhOjE6e2k6MDtzOjM6IjI0MiI7fTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3dfY2Fyb3VzZWw8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fc2hvd19vcHRpb25zPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19zaG93X3RhbGtpbmdfcG9pbnRzPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19zaG93X3ZpZGVvPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX3NpbmdsZV9oZWlnaHQ8L3N0cm9uZz4gLSAxMjA8L2xpPjxsaT48c3Ryb25nPndvb19zaW5nbGVfd2lkdGg8L3N0cm9uZz4gLSAxODA8L2xpPjxsaT48c3Ryb25nPndvb19zbGlkZXJfY2ZhZGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3NsaWRlcl9jb250ZW50X3NwZWVkPC9zdHJvbmc+IC0gMTAwMDwvbGk+PGxpPjxzdHJvbmc+d29vX3NsaWRlcl9zZmFkZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fc2xpZGVyX3NwZWVkPC9zdHJvbmc+IC0gNTAwPC9saT48bGk+PHN0cm9uZz53b29fc2xpZGVyX3RpbWVvdXQ8L3N0cm9uZz4gLSA2MDAwPC9saT48bGk+PHN0cm9uZz53b29fdGFiczwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fdGFsa2luZ19wb2ludHNfdGFnczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX3RoZW1lbmFtZTwvc3Ryb25nPiAtIEdhemV0dGU8L2xpPjxsaT48c3Ryb25nPndvb190aGVtZV92ZXJzaW9uX2NoZWNrZXI8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fdGh1bWJfaGVpZ2h0PC9zdHJvbmc+IC0gODg8L2xpPjxsaT48c3Ryb25nPndvb190aHVtYl93aWR0aDwvc3Ryb25nPiAtIDg4PC9saT48bGk+PHN0cm9uZz53b29fdHdpdHRlcjwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX3VwbG9hZHM8L3N0cm9uZz4gLSBhOjg6e2k6MDtzOjgwOiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8xMC1TbWFsbGV5T25saW5lLU1haW4tSGVhZGVyLmpwZyI7aToxO3M6Nzk6Imh0dHA6Ly93d3cuZ29zbWFsbGV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzktU21hbGxleU9ubGluZS1NYWluLUhlYWRlci5qcGciO2k6MjtzOjc5OiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy84LVNtYWxsZXlPbmxpbmUtTWFpbi1IZWFkZXIuanBnIjtpOjM7czo3OToiaHR0cDovL3d3dy5nb3NtYWxsZXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNy1TbWFsbGV5T25saW5lLU1haW4tSGVhZGVyLmpwZyI7aTo0O3M6NzE6Imh0dHA6Ly93d3cuZ29zbWFsbGV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzYtc3RvcmUtaGVhZGVyLWxvZ28ucG5nIjtpOjU7czo3NDoiaHR0cDovL3d3dy5nb3NtYWxsZXkuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNS1TbWFsbGV5LWxvZ29fMmNfbWFpbi5qcGciO2k6NjtzOjc0OiJodHRwOi8vd3d3Lmdvc21hbGxleS5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy80LVNtYWxsZXktbG9nb18yY19tYWluLmpwZyI7aTo3O3M6NTg6Imh0dHA6Ly93d3cuZ29zbWFsbGV5LmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtbG9nby5wbmciO308L2xpPjxsaT48c3Ryb25nPndvb192aWRlb19icm93c2VyX2luaXQ8L3N0cm9uZz4gLSAzPC9saT48bGk+PHN0cm9uZz53b29fdmlkZW9fY2F0ZWdvcnk8L3N0cm9uZz4gLSBWaWRlbyBQb2RjYXN0czwvbGk+PGxpPjxzdHJvbmc+d29vX3ZpZGVvX3RhZ3M8L3N0cm9uZz4gLSA8L2xpPjwvdWw+