diff --git a/assets/app/views/directives/_click-to-reveal.html b/assets/app/views/directives/_click-to-reveal.html
new file mode 100644
index 000000000000..f60171ff3f47
--- /dev/null
+++ b/assets/app/views/directives/_click-to-reveal.html
@@ -0,0 +1,2 @@
+
{{linkText || "Show..."}}
+
diff --git a/assets/app/views/directives/_copy-to-clipboard.html b/assets/app/views/directives/_copy-to-clipboard.html
new file mode 100644
index 000000000000..51b7bff32241
--- /dev/null
+++ b/assets/app/views/directives/_copy-to-clipboard.html
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/assets/bower.json b/assets/bower.json
index 562e3e355214..5d5359da2f4e 100644
--- a/assets/bower.json
+++ b/assets/bower.json
@@ -20,9 +20,10 @@
"hawtio-extension-service": "2.0.0",
"lodash": "2.4.1",
"jquery": "2.1.3",
- "sifter": "0.3.4",
+ "sifter": "0.3.4",
"microplugin": "0.0.3",
- "selectize": "0.11.2"
+ "selectize": "0.11.2",
+ "zeroclipboard": "2.2.0"
},
"devDependencies": {
"angular-mocks": "1.3.8",
diff --git a/pkg/assets/bindata.go b/pkg/assets/bindata.go
index d1de9edb24d7..747fe2b247df 100644
--- a/pkg/assets/bindata.go
+++ b/pkg/assets/bindata.go
@@ -12402,6 +12402,13 @@ select:invalid {
text-overflow: ellipsis;
white-space: nowrap;
}
+.well h1:first-child,
+.well h2:first-child,
+.well h3:first-child,
+.well h4:first-child,
+.well h5:first-child {
+ margin-top: 0;
+}
`)
func css_main_css() ([]byte, error) {
@@ -12529,6 +12536,12 @@ func robots_txt() ([]byte, error) {
return _robots_txt, nil
}
+var _scripts_zeroclipboard_swf = []byte("CWS\x0e\xbe/\x00\x00xڵ:\vx\x93\xd7u\xf7\xfcOI\x96\x85$\x8c1\xef\x1f0\x96m\xaemA\x1eM0\x10\x8cm\x81\x1d@\xc4\x0fB\x00c\xfd\x96~Y\x02Yr\xf4K~$\xd0\x12\x12\xe7\xd5\xe6\xd5$\xa4\r%U_i\xdaФI\xb6u\xdd\xd6uM\xdbuk\xb7N\x92\x87麭[\xbbu\xed\xde[\xf7\xee\x1e\xec\xdc\xff\xff%\xd9Ƥ\xed\xf7\xb5\xc6W\xf7\xdes\xcf=\xe7\xdcs\xce=\xe7\\\x99)\"|\x8f\x10\xd7˄\xd4\x01\xe9\xf2\xac\"\x84\xbcg\xf97\x80\x90\x9d\xe9HtG_W@\x99\x1aK$\xf5\x1d8\xdb\xe5\x8be2\xe3;\xda\xda&''['ojM\xa5G۶\xdd~\xfb\xedm\xfe\xedm۷\xb7 F\x8b>\x9d̨S-I}\xb3o\xb7A\xa0K\xd3\xc3\xe9\xf8x&\x9eJ*l\xae\x8e\xa4\xb2\x99]>\x9fE5\x12.\x13\x1dϦ\x13\x06\xc9H\xb8MKhcZ2\xa3\xb7mk݆\x84\"\xe1\x1d\xd1TzL\xcd\xecV\xc7\xc7\x13\xf1\xb0\xcaȵM\xb5\xe8\xb1T\xf8\xf4\xa4:\xa1\xb5D\x13\xaa\x1e\xdb\xd9VAd{2\xf1LB\xdb\xdd\x11I\x8dhJ \xa1M)7+\x1d\x95\xfd\x06\xb6\x89\u0090#\x15Aw\xcf;\xa6\xcav\xb7\x86Scm\xe3\xe9T$\x1bF\x99\xa2H\xca\xd8<\u007f\v#1\x9e\x1dI\xc4\xf5\x98\x96ޝM\x9eN\xa6&M\x16\x15(\xc3\t\xa755\x93Z\x88Q\x82\xb1\xf5\x84\x9a\x1cͪ\xa3\xda\xee\xeeC\xc6ZynȨf\xb4\xdd]ZX\xd9~;U\xb6\xfb\xb7\xddl\x8a\xc1\xa0;\xdb\x16iۂ\xa0\x01w\x93.\xf7\x0f\xf9\x9d\xa4\x93\xbbv\xed\xda1\a\x8f\x16\x96\xb0\t\xd2G\x8e\x11\xe3\xe7\xab?nx\xa1\x17-\xfeM\xc71-\x9d\xeaL\xc4\xc7GRj:B\xbeXs\xb6\x85\x10\\ Ѵ:\xa6m#n\xd2J\x18\x11\x99p\xc4\xfay\x93#\xc2D*\x1e\x91\xf7\xa6R\tMMJ\xc1\x91SZ8Sm\x18\xa45\x12\xd7\xc7\x13\xea\xb4\xd4?\x9e\x8eg4\xa7\t\xd4&\x98i\x1d\aSY]\xebfc\xa9?\x93\x8e'Gm\x81l2\xccD\x17\xbb\xd3\xe9T\xbaz\x810\xf6Sz\xf7X<\x93\xd1\xd2\xf2)\xfdp:55-\xf7\x9a\xbd=\\\xc2\xf1\x94\xb1{\x92L\x88TZ0>\xe2\xc9x\xa6fT\xcb\x04\x18\xfb#jZ\x0f\xa4Sc\xfb3c\t\x06\xec\x9e\x1aGT-R^\xb4\x8f\xa7\xb5q5\xad\r\xf6ȩ$R\f\x9f\x164\xe4\xecL%+\x12\xbb\xd5HĘ\xedW\x93\x91\x84\x96\xd6mcZFEC\xa85ZRϦ5\xf3D\x81xDK\xc43\xd3U\xc8\xc7\xd4KO\xc4\x11\xd7;Sc\xe3\t-\xa3\xb9\xe2\xfa\xfe\xf8h\xac\x8c\x85D;\xd5DbD\r\x9fv\xa5\xb5\xb1ԄV\x9a\na\x1c\b\xba\x96\x8c\xd40\x11\x9215\x19\xd6\"\xe5\xe3Jq㼶\xa3\xba>\x98\x89't\xf9Hw_\u007fO\U00010e3du{\xab\u007f\xe5\xe1\xbe\xe0ў\xee\xae\xe1Ύ\x03\a\xf6vt\xde9|\xb8\xaf;\xd0s\xb4jx\x18}z*\xaeE\x86\x87kz\xfb\x87\xbb:\x06:p)\xd8\xd9\xdd\xdf\x1f\xec\x1b\x0e\x1czH\x88Z\x16Q\x101\xac\xe9z\x17\x9e\xb0\x91\x1d\x93*\xbaq\xc2\xc3&<\x95\x0e$\x9b\x94\xfb\x15%\x1eU\x1a3\xd3\xe3Z*\xaa04e\u05ee]\xca&\x13u\x93\xd2\xd0`\x00[\x13Zr4\x13Sv+~c\x8fb\xa1^O\xd2`\xd5\u052e(g\x15EK\xe8\xda\xd2\xe4S\x86f߁<\x86\x04\xa5qBM+qd\xe2o\xc7n\xe7|L\x04l\xddj\xa1\x9a\xb2\x1c\x8f\x0f!\xe6\xe23#t\xa9c\xb7\xb3]g\u007f6\x19\x95\x8d\xbb\x94d6\x91X, \xb2\x1cW\xe2I\x03\xa7,\x11#h\x88\x1bS\xf5\xe0d\x12y\x8fk\xe9\xcct#Cn*cY\x923\xe0\x92\xc2\x1b\v7\x94\xdf\x10\xbft\x8c\xb4\x96ɦM!\xda϶{K\xae\xd1}\xa83\xd8\xd5\xcd\x1cc\xa0\xec\x17Z2\x9c\x8ah\x8cK\x00\x89\xb1+\xd4X\x96\xdd\"s\xbd똛\x06\xfbz\xd8EH%\xf1>5\xcd\xe7\xd3\xd5]\xe23X\xe6\x13\xd1\xca|\xf0\xee\xfe\xb4\x8c\xcc]\x8b\x19U\xcdC\\\xb6\xe0\x00\xbd\xfd\ue14cz\xfb\x97\x9bW\xebpB\x8d'\a\xb4\xa9L0\x99\x98\xf6\x9a\xb0\xd25d\xc82چ\xf5nf#D)\xe3\xbbt-\x1dW\x13\xf1\xfb4#\xa8\xd9t\x15\x83\x11\xce\\\xa5\x81\x19)\xaa\xe3\xfa\x11Ċ\xb0\xa8\x841\x02㏮ݕ\xd5\xd2Ӣ\x9e\xc1\xe8/\x1aQ\xc7\xd5\xd1Յ\xd7x 8\xdc?б\xaf\x9b\x05!\x03~ \xaeg\xb4\xa4\x96\x96F\xb2\x99L*Ymť\xcel\x1a-\xbc܌$\v\x10\xad@\xacO\xe3t\xcc֯\x85\xb3i#\xfe$\x12\xa9ɮ\xd4\x18\x8a\xeeʤ\xb3\xb8\x18\t\xa6\xe3\xa3\xf1\xa4\xbe\xd1ʈ\x95l\xd8\xd1\u007fS\xdbv\xbf\xffֶ\x91l<\x91\x89'k\x16\x04\xfc\x1df\xc0\xaf_\b\xec2{3\x12v\xa6\xb0R\x88\xa30\x1b\x16\"\xf5$1ƫh\xf5\t\xcdD\\\xf3\x0eD\xd6\xce\xcf(;\x8c3\xb2u5\x13\xc6|+\xb2ba\xbaJ\x9f\x8c\x96bomcɡ\x1a\x8d-\bG\arx\x15\x85]\xbe\x94\x85\x85\xb7\xc7\xc7\xfb\xa8\xa3ۼ\x18\xb8\x1f!\x91T8\xcbJ\x92\xe3%\xac!\xe5̙2\xb4\x95%\x12\xb3f\xd9;\xdd\x13i,!5Q\xc7r\x93ʱN\x8a~\xaag\x13\x99v\x87#f^jF\x19\x03\x82\x15,pֺ \xe5\x19\x91\xc3W\x92\xd8\xf7N\xa8\xad,C-\xc2g'[k\xb2f\xb1u\xf1\x96v\x87\x80\x97\xddq\xf2\xfa\xa8\xf5S\n\xf1S\tPW\x16`\x11\xf3FEikS\xbaX\xbc\xcb\xc44\xc5*\xf8PEQ-\x8dwR\xa3L\"59\xedp\x95,\xc0\xe2e\xbb\xa3\xdaT\xdd\xc6c\x9d\x8c\xfc=\x8c|&\x96NM*ImR1\xaeX\xa3\xaf\xbb\xaf/طc\xd19\xfa\xef\x0e(\xe1T6\x11Q\x92\xa9\x8c\x92Ha\x11\xa8-B\xe9\xed\xb7|`\xe3\x89d}\xa9.(\x8b\xd6ӵC\xf1)[\xcbn\xd2\xd4\xee\x10\x99\x06\x1d\x1b\x14˲씝\x86&*\xee\x85֮[x\xd4\xf2\x11\xd9\xd1\f\u0558'sxʑ\xac\xe4(\xdc٦Z\xcc\r\xe1\xeb3\xbe\xa8\xb1\xa3\nI,\xcb<\xc6\x1dh\xc9&\xd5\t5\x9ePG\x12\x9a˄D\xb4Ѵ\x1a\xd1X\xe9t\x04K\x144\x89{\xc2\xec[\xc6\xe2\xfa\x18\xbb$\x0eT\xad\xb5\xb6,\x9cJF\xe3\xa3\xe5%۸\x95g\xac\x05,j\"\x18\xa2\xb2Z\x15^ά\x9a0\xc6պ\x96\xa9\x84\x1a\x11\xeb\xd8ȴG[\\Q-\xb3*\xb6\xd25t\x970J\x00W\xe5^2\xabZ\xf9\xcc\xd4\x02:\x02U0QS\x05\x83\xa2:\xd6\xcd4ռ\xe0\xfe0\xd7Nb\xd0>\x84\xca0]0\xb8\xb7\xb7\xbbs\xc0p\xc0\xf6r~5\x92\xbfAʺ\x0e\xe1X<\x11AKT\xca\x00\xac\vp\\\xaa\a\x1c\x1bM9,\xbe\x8bva5\xd0\ue617\xa1KX(\x905\\$\xd4Ꮎ\x8e\x83\xc6\x05*\u1ca8ё\xc1\xf8\x8fq[k\xf41c\xa2\xcc\x18V|\xbe\xa6\xd6L\xea@jRKw\xaa\xba\x86J1o\x16S(F*\xdd8\xd9m\xca\x02=\xb1\x9c\xbf$\xd9\tf(\x93\xae\xe9h6+\xe1;$\xb3k\xfa\tWQ/\xdf\xc5U\xa5\xbbXQ\x89\xe5\xbbp\xc7\xc6\xd1DjDM\xb4܇W\xaa\\\x91\x9bﲖ\x91t<2\xaaIf\xed\x01T\xc4\b\x1e\xcf\b\x98b4G?Ko\x1d\x89\xf8h\xd26\x10<<|\xa0;0 \xaal\xea2V\xfa\xb1\xf0\xd5\x0e\xa2\x1e\xed\xddG;:\a\x86\x03=\x03v\xbd\x04s\x1a(w\xa13b\xf6\x12\xf6v\xf7\x0f\xc8\xf7\x9a\x13\x1bz\xfex,\x1e\xd6\xed#\x1a\xe6\xaf@<\x91p\x18\x89\xf4\xeex$\x13\xab2\x86\xfb5\xac\xbd3\xb6HZ\x9d\xecC/D\xae\xe31\xd5a\xa6PF\xdd\xc6\xcaqflLj\x86\x0e\x84u\xc1\xf8\xb4\xc0>\xecj\x14S\x14\x1b\xc9z6\xcc*\t\x81\x95\x1b\x92q%u\x81\x85G{6\x19Ѣ\x98\xdd\"\x92\x9a\xc8ܩM;0g\x8e\xe1E\xc1\xa1̞\n&(\x99I\xa7\x12\f\x14ΤYo\xd3c\xf1\xa8\x89\xce\xde\x1d\x9d\xa9,>\x8e\"\x88\x1eO\xd8Y\x12gv9Z\x1e\xdd#\x19\xe78*\x0f\x9b\xbd9\xbdǚ\xde\xe3ZX.\xc2p\xd5<\x97\xe2ю\x88\x98\xcabpq\x1c\f\x0e\xf6w\x0f\x1f\f\x1e鶆8\xea\xb3[\xc3\xc1\x01\v\xd8\x15\xbc\xfb\x90\xcd\x1c\x0e\x1e\x16;\x0f\xf4t\u07b9lQƭ^\x90\x9c=ץ\xf2ڥ+\x00ɼ\x80\x92\x19Y\xbdח\x87\xde\xeb\v9[)\fK\xb1\x14+T\xaaG\xe2\x918\x1a\x89\x05\x115a\xc3j\x81E\xc2Ȳ\xa8\xf5\xb8\xea6\x9ee\x11\x97U0L\xa1d\x88\xe7\xe9\xb6\x06\x86\xa8Q5\xacy\xc7\xf0~Ű\x12\xea\x9e\nk\xc6CZ/\xb1겗#\xec\xba\x05\x01\xab\x14\xb6\x99C\xb7+g\x9bx\xf4\x84\x9aq\xe3\xfe ˃\x16AV\xe5-\xd8v}ٱ\x89\xdbD\xbb~\x0eUG\xbb\xb3\x1c \x91\xcfz\x8b^\xeb\xf0\xf5\xd5:\xf2\x80\xf6\re\x84%\xcal\xc4\xe01J\xa4\xcb\xc9i\xe3\xc6\xeb\xeb\x96%)\xb3wO鼛\x16oX\x92ӂ\x1d\xed\xe0\x10N\xa5\xe2IG$\x1e9\xcc\xfc\xab\xb7_\xecH\xa7U\xbc-\x89\x143\xe6\xcfCS\xb4\xf4v\xd2t\xf4\x9eH\xffd\xb4\xf4\xe46\x03\xb7\xb2i\x83\x89`&\xbd%ֽe)J+\xed\x1f\x83\x1b\xd4wǗ\xa42\xf4\x13T\xf5\v\xd0-z\xc5͋\xa46ӛ\x95Oo h{\xab\xb5\xe9\xf8\xd2\xfab\x0f\xcf\xf9\x1e\xbe\xc2\xd4\r\xf3r\xd3J\x99X\\o\xef\xac@\xd5\xf4\xa8n\xe5\xd5%\x8e\xd9x|\xa8U\xc7@\x88/\x0ed҈Ȇ1\xf5\xa6\xa6\xf6m\x15\x1a\xe5\xf47\xef0\xadF\xe9\xdf\xc8\xd8Q\x83I\x93)zىo\xa4\xa7F\x93ZS\xbb\x99\x1b\xdbWޠv\xab^P\x95:K\x87fJ\xb0Ob\xee\xc1\x90\x1bH.\xb7\xbe^\t\xcc[\xe56\xb5w\xdc\xc8;n\xa8\xd4Ŷ\xf3\xfdd3\x18r\xf9L\xd7f\xdf5\xbd\x13z\xbb\xf5Fa\x8a*\xbfRR7z\xa3\xfc\x82\xfcqwI\x82\x92?,e\x9d\x1b;\x84kA%\xd4XӴ\x84\vl]\xec\x00K\xb8\\\xd9\xfe\x98\x9d\xf1\x89 \xf4\xf6\a\x0f\xd9\xcd\xc2%\x1e\x9d\xe6\xa8b73HR\xcbTc\xc5\x1d\x1f\xc5g\xc4@j\xb0\xef\x80\x03[\x9fvoV\xd33U\xa70Q\x98_\xc4\xee\x80F\xae\xa9]\x1cֵDT\xea7\xde\xdbB\x06\xb3\x8f\x13\v\xe7\xca\xd7w\xe6C\\\x18\xcf\xea1\x1b\xab\x9d\x8co\x14LI\xf4*\x93_\x96}\xafg\xdf;\x9dь\x18X\xfa~U\xd3OgR\xe3\xf62)\xf7({߫\x89\xcaC!\x9c\xd0Դ\xbb<\x0f\x18_\x8f\xebU\x03\xddG\xb1\x9a\n\xf6\x1d\xec\x18\x90Q\x16\x83\xa3EM\x88e\xc6\x12U\xfb\a\x0e\x1e\xb0\x10\xf8t&Z=\xc9\x1e\xf4\x83\x03\x01&\x82\xee\xc6L\xbc\u007fx\x1e\rq\x84\x81\xb1\xb4\xd1u\xac=d\xa3\x14\xea\xe9b_^\x84OWc\xf0\xedg\x83\x01,\x064\xc9\xfc\x82\xde٩\x8e\xab#qL\xcdqM\xe7R\xbah\xd8U\xc4,\x99\x9d\x92\xfa\xb4Q|~q'N\xc0(\xaa\x01+\x86\xb0\xb6\xf6\xe4\xf1\x8e\x96cj\xcb}CV\xefo\xb9}xlj\x96\x13\xadC\xcd\xf5\xa8R=#DZ\xe6\x9a\nFa\xf3\xba-\x88\x13P[\xa2\x883tG\xe3\xf1\x93\x95ٙ\xfa&~\x8b\xdf/n\xd9~\x8b\xdf\xcf74l\x85\x06'\x1a\x0e_)q\x96\xd7u~\x1coz-Ԋ\xb5r\x9dS$+\xa1n\x99H\xea<\xd8\x1aj\xbbDbۿڹ\xbagu\xef\xea;W\x1fX}P$\xab\x97\xd5\xfe6\xd4\xfe\x0f\xe0\xc8S\xfb8W\xfb>N$8n\x90\x9c\"H\xd5.a\x99\xdb\xe3]^#\xdbV\x80\xe4\x92kA\x92\x1d\xabpd_-\xaf\x93`\xbd\xabj\xc3/\x81\f\x9c\f\xbc\f\x82\xccI2o\x93\xc1.\x83C\x86*\x19\x9c\xb2X-\x8b.YZ&\x8bnY\xf2ȢW\x16\x97\xcbb\x8d,\xae\x90Q>q\xa5,\xd6\xc9\xe2*Y\\-\xdb\xd6\xc86\xafl[+\xc3:\x19\xd6˰A\x06E\x86\x8d2l\x92a\xb3쨗\x1d^\x19\xb6\xc8R\x83\f>\xd9\xd6$۶ʶ\x16\xd9\xd6&۶ɶ\xed\xb2\xed&\xd9q\xb3\xec\xb8Ev\xdc*;\xde%;n\x93\xe1v\x19v\xc8\xd0.\xc3N\x19v\xc9\xfcn\x19\xee\x90a\x8f,uȰW\x86N\xd9\xd9-C\xc0\xbe\x0fd\xd7!{\x10\xec\x1a\xd8O\x81,鲔\x91\xa5\xac}\x06@\xe6\x1e\xc1\xc3=\x8a\xed1\x1c?\x8e\xfd{\xb1\xbd\x0f\xc7O`\xff$\xb6\xa7\xb0=\x8d\xed\x19l\xef\xc7\xf6,\xb6\xe7\xb0=\x8f\xed\x02\xb6\x17\xc0~\x11\xc0~\t\xdbKH\x0f>\x8c\xcc^\x8358z\tG\x9f\x05\xfb\x9b\f\xfa\x166\xa6\xc6_\xc6\xf6+\xd8>\x87\xedWA\xe6?\x8f\x9c~\rۯc\xfb\r\xb0\u007f\x01\xb85\x9c\xfd5\xa6\xed/\"\xc6o\x81\xbc\xf2k\xd8\xff\x0e\xb6\xdf\x05\xfb\x97\x18\xfc\xeb`\u007f\x1b8\xfb\x97\xb1!\xeaW\xb0\xfb*\x03\xff\x1e\x9e\xeb\xf7\x91\xe1\x1fa\xffmD\xffc\xec\xff\x04\xdb\xdfb\xfb;l\u007f\x8fk\xff\x89\xf0\xff\xc2\xf6cl_\x00\xb9\xee\u007f\xb1\xfd\x1fؗ\xf1\xb2\xf3A\xce\xfe\x10'\xc80\xc3\xe1i\x04<\x8d`\u007f\x04\xe7ң\x9c,=\xc6\xc9k\xde\xcb\xc9k\x9f@6Ob{\n\xc7Oc\xff\f\xb6\xf7s\xf6\xe7ؾ\xe79\xfb\x05ֿ\x80\xb0\x0f\xe0\x9e\x0fb?*Ë\xd8]\xc4v\x89\x93\x9d\x1f\xc6>\xc7ɮ\x8fpk\x04\xbb\x87dz\x8akD<\xab(\xc3\xc7\x10\xfc2\xb6W\xb0}\x8a\x93\xeb>\xcb\xd9\xdf\xe0D{\x03\xdfZ\xfa\x03\x0e\xfb\xfb\x0e\x00g\f8\xc2\xfe8Ě\xc0\x80\"!\x1c/\xf1\xc4\x06N\xa71\x03A(oc\u007f\x02\x92\u037f\x0e\x99\x1f\x161\xce\xf8'\x99\b\xd6߉\x04\x0e]\x9fp\x00\x12Ð\x88\xc0FeR\x1c\xf0<\xe1\xccO\xe0\x90\xbb\xf1\xc1\xf36I2\t\xda\x00\x1f\x98`\xf5
x\xa9\xb2F\x04;\xfe#\xe0t\x10\"9\x9dU\x848\x9d\xcejB\\N\xe72$\xea\x06\"x\x80\x88^\x94g9\x10\xb9\x06\b\xdeRb\xaf\x05\xe2X\t\xa4\xca\xc9\xdbe\xe2q\xd41u\xac\x02\xe2]\rd\xf9\x1a 5k\x81\xacX\a\xa4v=\x90\xba\r@V)@Vo\x04\xb2\xc6\xc5\xdb\xedd3\xbf\x89\x1dy3\x90\xfaz [\xb6\xf0\xf6*BQ\xae\x06\t\xa4F\xa8\x96}\xd87C\xa3\xc4I\x14\x9a$^j\x85fI\x90\xfc\xb0U\x12eB%\xd4Q\x8b$\xcbd\x9d\xd8\xea\xe1\u05f7y\x84\r~\x8f\xa8l\xf3H\x1b\xb7{\xe4M>\xe1&\x0f\xdfx\xb3Gh\xba\xc5#6\xdfꑶ\nN\xb0\v@ւ\x13\xcf\xd9\x00.\x81p-\xb0E h\\\x0elv{\xde\u007f\xb2\x816\xc6\x1a\xf61c\x82\xdd\xe1\xc8\xfb\xf3=$\x1f\\F\xf61\xcb\"dm\xde\x1fz\x97\xd7F\x10\xe8&n\xd4Q>t[\xf4\xf6|\xd4\x1d\xdc\xc1\xedc6\xe0\x1c\x0e[\xa8\xbd\xd0pY݉s\xa1\x8as8\xdf\xe2\xf3\xfe\xbb\x9b\xaf\xf85P\xce\xf1c\xc0:aL(o\xdc\xc5凜\xbdN\xa2Vi\x90\x0fx\t\xc3\t\xed\x8e\xde\x11ڭA\x02\xa2{\x82\x1d\x1c.D\xab\x02k\xc8\xcc\x18\x0e\r\xe8ޙ1>O\x0fӻr8\xe5r\xb4/G\xfbst G\as\xf4H\x8eޝ\xa3Gs\xf4\x1ecp,G\x8f\xe7\xe8\x89\x1c\x1d\xcaѓ9:\x9c\xa3\xa1\x1cUst$G\xc39\x1aɩ\x0e\xc6w91\x84\x1ar\x19\xe4;{]\xa0V3\xa6k\x89Ǎ\xa7\xa4Q:Jc\x83\x10\\\xc1\xb9\xbf\x8bs\\Y7o%n\xae|\x8d\x10c{ׅf\x0f\xbazS\x04\xc7\r8v\xe1\xd8\\0 \x97/x\xb7\x95v\x9e\xa6\xa7̕\xf3\xcd\x1et\xd4&\xe5\b\x97\xbd\xcb\t\xc1\xf1\xcc\xd5Ж\xd9\xc0-\xe0\xc5\xc8S\x98U\xf7\x16\xa3{ʈ{LD'\xae\xe0\x84>\x04\x81\xfd\xa0\xee)F;\xe9\xc3p\xb9\xd9#\x19H\x9d\r\x97\x8d\xbd\rjg1\xda\xc5v\xac\x96\x8c\r]j\x17\x13Z\x169\xbb#ȮT\xa8'ګމ\xfd\x81\xe8A\xf5\x10\xf6\xc1\xe8a\xf5\xae!\xa1W@\xbf\xbcR\x88\xf6\xb5@\xb0\x1f\xb0\xaf'͡wE\a\xb0\r\x06\x8f\b\x856P\xefF\xf2G\v>ug\xbe\x10\xbc\a\x18Y\x1b\xd3\xc5\x1eC\x15s\xec\x8cW\xf3\xf4\x03hT\xc8\xd3\x0fB`\x05\xaan.\x1f\xad.\x06\xea\xc1Xz\x11\xe8E\x98\x8d\x1e\xa3\x1f\x82\"\xbd\x84\xa3\xe3\x86\xc7\xe1\xed\xb5\xf3HgW\xde_TjP]\x8c\xd2\\\xb1\xa0\x9e\b\r\xb1}\x86\xb9\xbd\x1eþ\xf9\xa8\xa3\x18P8\x04\xbb\x1de@p#7\x8b\xc2`!aw\xbca\x1a\xe6\xaa2\x13\x16\f:\x05\xefs\x84\xd0\x1c\xb0ߏ\x00\xfd(Џ\x01\xfd8\xd0O\x18\xbf/\x03\xfd$\xd0W\x8c\xdfO\x19\xbf\x9f\x06\xfa*\xd0\xcb@?\x03\x83v$TO\xc2\xe2\xec\xf9\xb0\xe4nC1G\xa4\x11q=R.\x8c\b\x81\x93`\x99\b'\xd1a\xe5\xd5\v^\f\xe1\xc5Y61 \xea\xf0vI\xf4|\xfd\xda5\x9bd\x13\x8b\xf4u\xd4i(\xa0\x92\x9cz\xa2H\xdf\x00u$_\x8c\x9e(\x9aǯ\xe2\xd1:w\xe5\xfd\x85\x90\x18\r磵\x18\xe2\xd80R\x19j\x95a\xb42\x1c\xad\fc\xf9hMeh@Q%NLl\xb6\xcdy\xbfFB\xbc?\x14\xf7\x87N\xf9C\xa7\xfd\xa1\x84?$\xe0\xefQ\xb2\xce\xf8\x89\xd9Q\x86j\xccrB\v\xc6e\x1fm\x8e\xf9N6R\x1ak<\xd9D[cM'\x9b\xa9?\xd6|r\xeb\x1eWl\xebI\xbagY\x8c\x9el\xd9㎵\xe0&\x97(\xf3\xfc\x9bPO\f}\x17\fOm\xf6\xb2\x80T\x88\x8eՓ\u05fd\x18B\x8a\x91B\a\x9c\xbf\xe2~\x14\xfd\xf1y\xfa\x9b\x8b\x10\xea\t\xc1\xddn\xb4\xae\xbd0;\xb4\xb50\x1bM\x16\x03[95\xf96?\x8b(+~p\xed\x9a\xfbPe'\xbbL\x05\xa6\xeb\x1dl_X,0\xcbl^d\x99\x14x1^\xe2\b\xe9\xa1%,\x82\xcc\x1as\xa65\x98j\x96\xf1\x1c\xcf\xdb\x11#4\x8e\xcb\bp\x97\x01\xf7\x9a\x00O\x15\b\"*/O\xbf\x04\n}\x1b|\xf4\xcbؾ\x82\xed\xab\xe0\x1b\x14cuF\xc6Z\xc52\x96\x97\xe7E\xc7\vP\xca>>\xcc+i\x16lU=\x1f\xad\v\xa5\xa3\x99r`T\xb3&d\xa2\xe1\xf2\xf9R8\xab\x8bf/\\8\xafN\x86\xd2\r\xd6\x06\xfa\r\xc0x\x84\xa9m\xca]\x8bn\xee/\xf8\x8f\x91\xe6\xb9f\xff\xd61\f\xa4\xd3>uj\x9d\x8d\x9bǁ\x91\x98<_\x8a\x87u\xd1)\xa4v\x1f\x83\aV\x13\xf5\xfe}\xd0\xd5\u007f\xb7\xed\f\x9c\xc5R\x84,\xafFI\xd3\xf3\x04\xd5PT\xfaM\b5R\xa0\u007f\x00\x8609\x9aǨX\x00Z\x04:\v\xa1\xa6\x1c\xfdC\x9c_\x81P\xb39\x9a\x03z\x15h\xe4H\x15\xfd\x16\x04\xdemJ:\x06\xee\x15\x8b$5ȣ\xa0L\xcc\xfdP5p\x14ex\x0f\x93\xa1\x06P\xb16T,c\x86\x8a^\xc1\xe1|\x859\x9f\x9c0\xdd\xc38\xc6\x04.ֲ\xc5\x1a\\\xc4 0o\xed~\xb6\xb6\x12\xd5.\xae\x19j)\x04Z\xe0\xdc9\xb8\x12z\x00\xf2\x85@\aw~n\x88\x16\x03\x14\x10\xa5\xaeF\x10\xe5\xcf\x19\x96\xb9j\xd4\x05\xf2\x18\x8f\xdd̘\xa0A\x81\xc9Xd\x99>\xc1)563YAp\x030^\xdes,\x0f\xeeYin\b\xf9\xd8R\x0e\xb7\x19j\x17X\xee3r\xd97\x17i\xedO\x81~\xc7(\x1c\xcc韱\xb1`\x8e\xff\x1cP\xc5\xdf\x05\xfa=\xa0\u007f\x01\xf4/\x81~\x1f\xe8_\x01\xfd\x01\xd0\x1f\x02\xd3\xe9_\x03\xfd\x1b\xa6\xd6\xe5\xa6Z\x83\n`n<\x0fXE\x92\a\xb0,\x94Ƀ@x\x99<\x84\xe5\xa1DVU\xf3\x82x\x8f\x91\x1e\ri\xefļ\xe5+\xe4f\xe6B\xe9\xa2rc\xc9\n9\xfa\x0f8\x06\xfa\x8f@\xff\t\xe8?/`\xec\x9cǘ\xacv\b\x82\x98Ō1t\xfej\x01\x15\xcf\xf2\x8ca\x03\xef\tBL\xf5\xa2\xca\xe7\x96b\xf3#\xa0\xff\x02\xf4_\x81\xfe\x1b\xe3\xf7\xef\b\xfc\x0f\x83O\xe4\x88\xc3\xe40s\x05o\x80\x12J\x17\x8e@1\x80\x0f2f\xb2\xabC-\xb3h\xc6\xf3WY(_#\x8a\x82\xf8\xac\x91\xfdY\x00\x16\nއ\xd0:\xec\x9c\xcbY\xd4W\xf2\xa5\x9dX\xb2\xb9\xe3\fT\x17\xbd\xcf\x13\xc2@\x0f\x06\xbe\xbb\x01C\xc2l\xe8a(\xb2\xfb\x1fx\x04\xd0tWG\x84z\xc8\x15\xa3\x8f\x82\x13\xcf2K\xff\x1brW\xdf\x16F\x04\x06Y\x91\xbfvm\xe81\x18z\x1c\xe85&\xf39.7Dg\xf1\x889\xfa\x00\x97\xeb}\x1c\x80\x9e炏\x01\v\xd6k1\xa6\xf2\xee\xbc\u007f\xe8\xbd\xc0\x82*\u007f\x14\xd6Ŝ\b_\x87`\x01\vP\x1c\xaeG\xf1푒ϕ\xdc,\xf4>\xb3\xa2|\x02\x82O\x02\x1brѧ\xa0A}\x02ܷ\xb2\x9b3\xcbnNX\xb0\xae\x8e\xb1\xe8\xc3Ec\xf84\x84\\\x1a\x97\x00\xfa\x10G\x1f\xe6\x02\xdb\xf9\xe03\x80WK\xd8\a\xee\xa6\x16\xdb\x19\xee\xfd\xc0J\xa8g\xd1Kx\xb2\x811\xff\x12_\xf1\xf8\xe7\x80ypY\x8a\xe7!z\x01\x82/\x00\xb1\x84\xb1\x82\xb6\xbdT9>\x01\x13\xde\xe3F\r\xc8D0\xd1C\x1f\x80\xe8\aK\xd2\a^\x04\xeeg\x96\xfa\xd9yR\x1bt.^\xc7\xf8\xe2\r\x18\u007f\b\xace\x83\xf1\xc5\nc\xb8\x8e\xf1\xc5E\x8c\x9f[\x82\xf1\xa5\xeb\x18_B\xc6O2\xc6C\xcfA\xefs@,\x8d%xk5\xf8\x92a.\x1eo\x81U\x12\xf3\xe83,{\xad_B\xdc\x0f\x1b\xb8\x86\xac\x97*\xb2r\xd7\xc9zi\x91\xac\x17\x16ʺ\x8fߣj\xb63\x9f\x87o\xc3w\xc0v\xe6M\xeea\xfeq\xdev\x86\x9fo\xea\x1c\x06\x04\x94W\xe18^\x18\xc6\xd8k%I\x96iؕ\xed1\xd2l\xd9\u00925\x9dh\xf6\xac0\x86\x17\x17\xae\\\xac\xac\\Z\xb8\x82\n\xc2K\xb9\x91\x13x!\x9e\xf7\xfb\xe6|W\x17\xb2\xf2\x060\xdd.\xc1hb\xeegc2qu\xf6\x82I\xb3\xc8\x18nr\"\xc3my?\x1d-D\xb1t{\x91+D\xb1|\xbb\x88\x1d\x96p\x1f\xe2\n\x81\x8f\x03\xa9<@^\xe2\x8a\xd4=;(\xe1\xc6\xcd\x02'\x88\xf5\x983B\x9f\x80\xe8\xcbh\xa9z1\xf0I\xe0\xb0\xfa\xa2\x1f\xe5._\x88mb\x99\xbb\x10\xdc\xcc\xe2\\=\x8f\xb8^\xc4\xcdG7M\x98\xc4\n\x13\xea&\\\xd9\xc2˂\xf8\xb2\x19\x84|V5Y\x1c$\xeaSPd.VDc\xcf\xfa\xd4W`^\xfd\x11r\x15\x02~\xf0\"\x0f6\xda\x06\x13a\x01\xb9\xe3\x8b\vK\xf8\xa6\x11a\x82\x91\xc0\x95b\xb0\x953\xa5\xf2\x9a\xf0ғ\xe0)v\r/\x94\xb1ڸ\"\x1e\xba\xa1\x14\x97>e\xc5%n]̅,|\x95\xb8\xd4(J\xbc\xf0\n\x9e\xa8\x9e\xb0W\x8bQ\xaf\xadv\xb2\x17O!p3\xab\xd1\x1e\xabTZ6\xc3(\x9f6ܼ\x81\x15[sn/+Ҋ\x88\\\x8c\xbe\xca^F\xea\xab\xf06WdH+\xbe\x8feځ%ʴی2M@5\x89\xec5h\x1f\x11G\x04T\x13\xaa\xe72\x80w\x19{\xed \xbd\xd92\xbd\xed\xa2\xe0\xf9\x16*I\xb4\t\xacHk\x12г\xfd\xe8\x01\x0f\x82\xe9*\x96\xbf\xd5\xe1\xc6\xd0g\xb0\x8e\xe7\xe8'\xb8\xbd\x1c\xf6\x81׀\x9bqs,\x03\xe0\xbefv#|\xf3\xf61\xc5\x16.\xa0s!\xcb&\xb6\xf3\x93\xdc^(\x04^\aó\xb7\n2/<\xcc\xe5\xfd\x8d\xf3\xdf\r?B&\xf8\x0e\f|\x16 {u\xb6\xfe\xda*\x17\x13\x17s\b\xfa\x12X\xbcf\xae\x14觹2\xcae\xe6˅\x197\x9a\xa9POf\x99\xd3\xcd \nc\xf8\xaa%*\x18\x92\x9a\xb0\xcb\x16\xec3\xdc<\xe0k\x16\xf0\xf5\x12Ћ\tn\xe8\r(\xf4\xbe\x01\xecE\xc5ܮ\xc8\xdcn\u07fc\xb2\xb7Xz\x90\xb0\x00Œޫ\x10:\ao͟\xa3\x99&\x8c\xe7\xe6\x88`\x02\x02o\x02\tI\x8f0\xad\xa3k\xbei=T\xf6\xb3ca\xc9%\x19\xdf\xc8 \x8f\x96\x92_\xbde\xf9\x15\xbf.\xb6\x85ռ\xcb\xd9w\\\v\xff[\xf6\x1e\x84\xfc?\v\xc4\xca\"")
+
+func scripts_zeroclipboard_swf() ([]byte, error) {
+ return _scripts_zeroclipboard_swf, nil
+}
+
var _scripts_oldieshim_js = []byte(`!function(a, b) {
"function" == typeof define && define.amd ? define(b) :"object" == typeof exports ? module.exports = b() :a.returnExports = b();
}(this, function() {
@@ -14160,7 +14173,7 @@ var e = d.imageChangeParams.from.name, f = b.parameters.output.to.name;
if (e !== f) continue;
var g = d.imageChangeParams.from.namespace || a.metadata.namespace, h = b.parameters.output.to.namespace || b.metadata.namespace;
if (g !== h) continue;
-var i = d.imageChangeParams.tag, j = b.parameters.output.tag;
+var i = d.imageChangeParams.tag, j = b.parameters.output.tag || "latest";
if (i !== j) continue;
d.builds = d.builds || {}, d.builds[b.metadata.name] = b;
}
@@ -14622,6 +14635,34 @@ c && c.is("a") || $("a.tile-target", b).trigger("click");
});
}
};
+}).directive("clickToReveal", function() {
+return {
+restrict:"A",
+transclude:!0,
+scope:{
+linkText:"@"
+},
+templateUrl:"views/directives/_click-to-reveal.html",
+link:function(a, b) {
+$(".reveal-contents-link", b).click(function() {
+$(this).hide(), $(".reveal-contents", b).show();
+});
+}
+};
+}).directive("copyToClipboardButton", function() {
+return {
+restrict:"E",
+scope:{
+clipboardText:"="
+},
+templateUrl:"views/directives/_copy-to-clipboard.html",
+link:function(a, b) {
+ZeroClipboard.isFlashUnusable() ? $(b).hide() :(new ZeroClipboard($("button", b)), $("#global-zeroclipboard-html-bridge").tooltip({
+title:"Copy to clipboard",
+placement:"bottom"
+}));
+}
+};
}), angular.module("openshiftConsole").directive("labels", function() {
return {
restrict:"E",
@@ -32600,7 +32641,878 @@ return b.keyCode === p && "" === this.$control_input.val() && !this.$activeItems
};
}();
}), L;
-});`)
+}), function(a, b) {
+"use strict";
+var c, d, e, f = a, g = f.document, h = f.navigator, i = f.setTimeout, j = f.clearTimeout, k = f.setInterval, l = f.clearInterval, m = f.getComputedStyle, n = f.encodeURIComponent, o = f.ActiveXObject, p = f.Error, q = f.Number.parseInt || f.parseInt, r = f.Number.parseFloat || f.parseFloat, s = f.Number.isNaN || f.isNaN, t = f.Date.now, u = f.Object.keys, v = f.Object.defineProperty, w = f.Object.prototype.hasOwnProperty, x = f.Array.prototype.slice, y = function() {
+var a = function(a) {
+return a;
+};
+if ("function" == typeof f.wrap && "function" == typeof f.unwrap) try {
+var b = g.createElement("div"), c = f.unwrap(b);
+1 === b.nodeType && c && 1 === c.nodeType && (a = f.unwrap);
+} catch (d) {}
+return a;
+}(), z = function(a) {
+return x.call(a, 0);
+}, A = function() {
+var a, c, d, e, f, g, h = z(arguments), i = h[0] || {};
+for (a = 1, c = h.length; c > a; a++) if (null != (d = h[a])) for (e in d) w.call(d, e) && (f = i[e], g = d[e], i !== g && g !== b && (i[e] = g));
+return i;
+}, B = function(a) {
+var b, c, d, e;
+if ("object" != typeof a || null == a || "number" == typeof a.nodeType) b = a; else if ("number" == typeof a.length) for (b = [], c = 0, d = a.length; d > c; c++) w.call(a, c) && (b[c] = B(a[c])); else {
+b = {};
+for (e in a) w.call(a, e) && (b[e] = B(a[e]));
+}
+return b;
+}, C = function(a, b) {
+for (var c = {}, d = 0, e = b.length; e > d; d++) b[d] in a && (c[b[d]] = a[b[d]]);
+return c;
+}, D = function(a, b) {
+var c = {};
+for (var d in a) -1 === b.indexOf(d) && (c[d] = a[d]);
+return c;
+}, E = function(a) {
+if (a) for (var b in a) w.call(a, b) && delete a[b];
+return a;
+}, F = function(a, b) {
+if (a && 1 === a.nodeType && a.ownerDocument && b && (1 === b.nodeType && b.ownerDocument && b.ownerDocument === a.ownerDocument || 9 === b.nodeType && !b.ownerDocument && b === a.ownerDocument)) do {
+if (a === b) return !0;
+a = a.parentNode;
+} while (a);
+return !1;
+}, G = function(a) {
+var b;
+return "string" == typeof a && a && (b = a.split("#")[0].split("?")[0], b = a.slice(0, a.lastIndexOf("/") + 1)), b;
+}, H = function(a) {
+var b, c;
+return "string" == typeof a && a && (c = a.match(/^(?:|[^:@]*@|.+\)@(?=http[s]?|file)|.+?\s+(?: at |@)(?:[^:\(]+ )*[\(]?)((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/), c && c[1] ? b = c[1] :(c = a.match(/\)@((?:http[s]?|file):\/\/[\/]?.+?\/[^:\)]*?)(?::\d+)(?::\d+)?/), c && c[1] && (b = c[1]))), b;
+}, I = function() {
+var a, b;
+try {
+throw new p();
+} catch (c) {
+b = c;
+}
+return b && (a = b.sourceURL || b.fileName || H(b.stack)), a;
+}, J = function() {
+var a, c, d;
+if (g.currentScript && (a = g.currentScript.src)) return a;
+if (c = g.getElementsByTagName("script"), 1 === c.length) return c[0].src || b;
+if ("readyState" in c[0]) for (d = c.length; d--; ) if ("interactive" === c[d].readyState && (a = c[d].src)) return a;
+return "loading" === g.readyState && (a = c[c.length - 1].src) ? a :(a = I()) ? a :b;
+}, K = function() {
+var a, c, d, e = g.getElementsByTagName("script");
+for (a = e.length; a--; ) {
+if (!(d = e[a].src)) {
+c = null;
+break;
+}
+if (d = G(d), null == c) c = d; else if (c !== d) {
+c = null;
+break;
+}
+}
+return c || b;
+}, L = function() {
+var a = G(J()) || K() || "";
+return a + "ZeroClipboard.swf";
+}, M = function() {
+return null == a.opener && (!!a.top && a != a.top || !!a.parent && a != a.parent);
+}(), N = {
+bridge:null,
+version:"0.0.0",
+pluginType:"unknown",
+disabled:null,
+outdated:null,
+sandboxed:null,
+unavailable:null,
+degraded:null,
+deactivated:null,
+overdue:null,
+ready:null
+}, O = "11.0.0", P = {}, Q = {}, R = null, S = 0, T = 0, U = {
+ready:"Flash communication is established",
+error:{
+"flash-disabled":"Flash is disabled or not installed. May also be attempting to run Flash in a sandboxed iframe, which is impossible.",
+"flash-outdated":"Flash is too outdated to support ZeroClipboard",
+"flash-sandboxed":"Attempting to run Flash in a sandboxed iframe, which is impossible",
+"flash-unavailable":"Flash is unable to communicate bidirectionally with JavaScript",
+"flash-degraded":"Flash is unable to preserve data fidelity when communicating with JavaScript",
+"flash-deactivated":"Flash is too outdated for your browser and/or is configured as click-to-activate.\nThis may also mean that the ZeroClipboard SWF object could not be loaded, so please check your `+"`"+`swfPath`+"`"+` configuration and/or network connectivity.\nMay also be attempting to run Flash in a sandboxed iframe, which is impossible.",
+"flash-overdue":"Flash communication was established but NOT within the acceptable time limit",
+"version-mismatch":"ZeroClipboard JS version number does not match ZeroClipboard SWF version number",
+"clipboard-error":"At least one error was thrown while ZeroClipboard was attempting to inject your data into the clipboard",
+"config-mismatch":"ZeroClipboard configuration does not match Flash's reality",
+"swf-not-found":"The ZeroClipboard SWF object could not be loaded, so please check your `+"`"+`swfPath`+"`"+` configuration and/or network connectivity"
+}
+}, V = [ "flash-unavailable", "flash-degraded", "flash-overdue", "version-mismatch", "config-mismatch", "clipboard-error" ], W = [ "flash-disabled", "flash-outdated", "flash-sandboxed", "flash-unavailable", "flash-degraded", "flash-deactivated", "flash-overdue" ], X = new RegExp("^flash-(" + W.map(function(a) {
+return a.replace(/^flash-/, "");
+}).join("|") + ")$"), Y = new RegExp("^flash-(" + W.slice(1).map(function(a) {
+return a.replace(/^flash-/, "");
+}).join("|") + ")$"), Z = {
+swfPath:L(),
+trustedDomains:a.location.host ? [ a.location.host ] :[],
+cacheBust:!0,
+forceEnhancedClipboard:!1,
+flashLoadTimeout:3e4,
+autoActivate:!0,
+bubbleEvents:!0,
+containerId:"global-zeroclipboard-html-bridge",
+containerClass:"global-zeroclipboard-container",
+swfObjectId:"global-zeroclipboard-flash-bridge",
+hoverClass:"zeroclipboard-is-hover",
+activeClass:"zeroclipboard-is-active",
+forceHandCursor:!1,
+title:null,
+zIndex:999999999
+}, $ = function(a) {
+if ("object" == typeof a && null !== a) for (var b in a) if (w.call(a, b)) if (/^(?:forceHandCursor|title|zIndex|bubbleEvents)$/.test(b)) Z[b] = a[b]; else if (null == N.bridge) if ("containerId" === b || "swfObjectId" === b) {
+if (!na(a[b])) throw new Error("The specified `+"`"+`" + b + "`+"`"+` value is not valid as an HTML4 Element ID");
+Z[b] = a[b];
+} else Z[b] = a[b];
+{
+if ("string" != typeof a || !a) return B(Z);
+if (w.call(Z, a)) return Z[a];
+}
+}, _ = function() {
+return Ta(), {
+browser:C(h, [ "userAgent", "platform", "appName" ]),
+flash:D(N, [ "bridge" ]),
+zeroclipboard:{
+version:Va.version,
+config:Va.config()
+}
+};
+}, aa = function() {
+return !!(N.disabled || N.outdated || N.sandboxed || N.unavailable || N.degraded || N.deactivated);
+}, ba = function(a, d) {
+var e, f, g, h = {};
+if ("string" == typeof a && a) g = a.toLowerCase().split(/\s+/); else if ("object" == typeof a && a && "undefined" == typeof d) for (e in a) w.call(a, e) && "string" == typeof e && e && "function" == typeof a[e] && Va.on(e, a[e]);
+if (g && g.length) {
+for (e = 0, f = g.length; f > e; e++) a = g[e].replace(/^on/, ""), h[a] = !0, P[a] || (P[a] = []), P[a].push(d);
+if (h.ready && N.ready && Va.emit({
+type:"ready"
+}), h.error) {
+for (e = 0, f = W.length; f > e; e++) if (N[W[e].replace(/^flash-/, "")] === !0) {
+Va.emit({
+type:"error",
+name:W[e]
+});
+break;
+}
+c !== b && Va.version !== c && Va.emit({
+type:"error",
+name:"version-mismatch",
+jsVersion:Va.version,
+swfVersion:c
+});
+}
+}
+return Va;
+}, ca = function(a, b) {
+var c, d, e, f, g;
+if (0 === arguments.length) f = u(P); else if ("string" == typeof a && a) f = a.split(/\s+/); else if ("object" == typeof a && a && "undefined" == typeof b) for (c in a) w.call(a, c) && "string" == typeof c && c && "function" == typeof a[c] && Va.off(c, a[c]);
+if (f && f.length) for (c = 0, d = f.length; d > c; c++) if (a = f[c].toLowerCase().replace(/^on/, ""), g = P[a], g && g.length) if (b) for (e = g.indexOf(b); -1 !== e; ) g.splice(e, 1), e = g.indexOf(b, e); else g.length = 0;
+return Va;
+}, da = function(a) {
+var b;
+return b = "string" == typeof a && a ? B(P[a]) || null :B(P);
+}, ea = function(a) {
+var b, c, d;
+return a = oa(a), a && !va(a) ? "ready" === a.type && N.overdue === !0 ? Va.emit({
+type:"error",
+name:"flash-overdue"
+}) :(b = A({}, a), ta.call(this, b), "copy" === a.type && (d = Da(Q), c = d.data, R = d.formatMap), c) :void 0;
+}, fa = function() {
+var a = N.sandboxed;
+if (Ta(), "boolean" != typeof N.ready && (N.ready = !1), N.sandboxed !== a && N.sandboxed === !0) N.ready = !1, Va.emit({
+type:"error",
+name:"flash-sandboxed"
+}); else if (!Va.isFlashUnusable() && null === N.bridge) {
+var b = Z.flashLoadTimeout;
+"number" == typeof b && b >= 0 && (S = i(function() {
+"boolean" != typeof N.deactivated && (N.deactivated = !0), N.deactivated === !0 && Va.emit({
+type:"error",
+name:"flash-deactivated"
+});
+}, b)), N.overdue = !1, Ba();
+}
+}, ga = function() {
+Va.clearData(), Va.blur(), Va.emit("destroy"), Ca(), Va.off();
+}, ha = function(a, b) {
+var c;
+if ("object" == typeof a && a && "undefined" == typeof b) c = a, Va.clearData(); else {
+if ("string" != typeof a || !a) return;
+c = {}, c[a] = b;
+}
+for (var d in c) "string" == typeof d && d && w.call(c, d) && "string" == typeof c[d] && c[d] && (Q[d] = c[d]);
+}, ia = function(a) {
+"undefined" == typeof a ? (E(Q), R = null) :"string" == typeof a && w.call(Q, a) && delete Q[a];
+}, ja = function(a) {
+return "undefined" == typeof a ? B(Q) :"string" == typeof a && w.call(Q, a) ? Q[a] :void 0;
+}, ka = function(a) {
+if (a && 1 === a.nodeType) {
+d && (La(d, Z.activeClass), d !== a && La(d, Z.hoverClass)), d = a, Ka(a, Z.hoverClass);
+var b = a.getAttribute("title") || Z.title;
+if ("string" == typeof b && b) {
+var c = Aa(N.bridge);
+c && c.setAttribute("title", b);
+}
+var e = Z.forceHandCursor === !0 || "pointer" === Ma(a, "cursor");
+Ra(e), Qa();
+}
+}, la = function() {
+var a = Aa(N.bridge);
+a && (a.removeAttribute("title"), a.style.left = "0px", a.style.top = "-9999px", a.style.width = "1px", a.style.height = "1px"), d && (La(d, Z.hoverClass), La(d, Z.activeClass), d = null);
+}, ma = function() {
+return d || null;
+}, na = function(a) {
+return "string" == typeof a && a && /^[A-Za-z][A-Za-z0-9_:\-\.]*$/.test(a);
+}, oa = function(a) {
+var b;
+if ("string" == typeof a && a ? (b = a, a = {}) :"object" == typeof a && a && "string" == typeof a.type && a.type && (b = a.type), b) {
+b = b.toLowerCase(), !a.target && (/^(copy|aftercopy|_click)$/.test(b) || "error" === b && "clipboard-error" === a.name) && (a.target = e), A(a, {
+type:b,
+target:a.target || d || null,
+relatedTarget:a.relatedTarget || null,
+currentTarget:N && N.bridge || null,
+timeStamp:a.timeStamp || t() || null
+});
+var c = U[a.type];
+return "error" === a.type && a.name && c && (c = c[a.name]), c && (a.message = c), "ready" === a.type && A(a, {
+target:null,
+version:N.version
+}), "error" === a.type && (X.test(a.name) && A(a, {
+target:null,
+minimumVersion:O
+}), Y.test(a.name) && A(a, {
+version:N.version
+})), "copy" === a.type && (a.clipboardData = {
+setData:Va.setData,
+clearData:Va.clearData
+}), "aftercopy" === a.type && (a = Ea(a, R)), a.target && !a.relatedTarget && (a.relatedTarget = pa(a.target)), qa(a);
+}
+}, pa = function(a) {
+var b = a && a.getAttribute && a.getAttribute("data-clipboard-target");
+return b ? g.getElementById(b) :null;
+}, qa = function(a) {
+if (a && /^_(?:click|mouse(?:over|out|down|up|move))$/.test(a.type)) {
+var c = a.target, d = "_mouseover" === a.type && a.relatedTarget ? a.relatedTarget :b, e = "_mouseout" === a.type && a.relatedTarget ? a.relatedTarget :b, h = Na(c), i = f.screenLeft || f.screenX || 0, j = f.screenTop || f.screenY || 0, k = g.body.scrollLeft + g.documentElement.scrollLeft, l = g.body.scrollTop + g.documentElement.scrollTop, m = h.left + ("number" == typeof a._stageX ? a._stageX :0), n = h.top + ("number" == typeof a._stageY ? a._stageY :0), o = m - k, p = n - l, q = i + o, r = j + p, s = "number" == typeof a.movementX ? a.movementX :0, t = "number" == typeof a.movementY ? a.movementY :0;
+delete a._stageX, delete a._stageY, A(a, {
+srcElement:c,
+fromElement:d,
+toElement:e,
+screenX:q,
+screenY:r,
+pageX:m,
+pageY:n,
+clientX:o,
+clientY:p,
+x:o,
+y:p,
+movementX:s,
+movementY:t,
+offsetX:0,
+offsetY:0,
+layerX:0,
+layerY:0
+});
+}
+return a;
+}, ra = function(a) {
+var b = a && "string" == typeof a.type && a.type || "";
+return !/^(?:(?:before)?copy|destroy)$/.test(b);
+}, sa = function(a, b, c, d) {
+d ? i(function() {
+a.apply(b, c);
+}, 0) :a.apply(b, c);
+}, ta = function(a) {
+if ("object" == typeof a && a && a.type) {
+var b = ra(a), c = P["*"] || [], d = P[a.type] || [], e = c.concat(d);
+if (e && e.length) {
+var g, h, i, j, k, l = this;
+for (g = 0, h = e.length; h > g; g++) i = e[g], j = l, "string" == typeof i && "function" == typeof f[i] && (i = f[i]), "object" == typeof i && i && "function" == typeof i.handleEvent && (j = i, i = i.handleEvent), "function" == typeof i && (k = A({}, a), sa(i, j, [ k ], b));
+}
+return this;
+}
+}, ua = function(a) {
+var b = null;
+return (M === !1 || a && "error" === a.type && a.name && -1 !== V.indexOf(a.name)) && (b = !1), b;
+}, va = function(a) {
+var b = a.target || d || null, f = "swf" === a._source;
+switch (delete a._source, a.type) {
+case "error":
+var g = "flash-sandboxed" === a.name || ua(a);
+"boolean" == typeof g && (N.sandboxed = g), -1 !== W.indexOf(a.name) ? A(N, {
+disabled:"flash-disabled" === a.name,
+outdated:"flash-outdated" === a.name,
+unavailable:"flash-unavailable" === a.name,
+degraded:"flash-degraded" === a.name,
+deactivated:"flash-deactivated" === a.name,
+overdue:"flash-overdue" === a.name,
+ready:!1
+}) :"version-mismatch" === a.name && (c = a.swfVersion, A(N, {
+disabled:!1,
+outdated:!1,
+unavailable:!1,
+degraded:!1,
+deactivated:!1,
+overdue:!1,
+ready:!1
+})), Pa();
+break;
+
+case "ready":
+c = a.swfVersion;
+var h = N.deactivated === !0;
+A(N, {
+disabled:!1,
+outdated:!1,
+sandboxed:!1,
+unavailable:!1,
+degraded:!1,
+deactivated:!1,
+overdue:h,
+ready:!h
+}), Pa();
+break;
+
+case "beforecopy":
+e = b;
+break;
+
+case "copy":
+var i, j, k = a.relatedTarget;
+!Q["text/html"] && !Q["text/plain"] && k && (j = k.value || k.outerHTML || k.innerHTML) && (i = k.value || k.textContent || k.innerText) ? (a.clipboardData.clearData(), a.clipboardData.setData("text/plain", i), j !== i && a.clipboardData.setData("text/html", j)) :!Q["text/plain"] && a.target && (i = a.target.getAttribute("data-clipboard-text")) && (a.clipboardData.clearData(), a.clipboardData.setData("text/plain", i));
+break;
+
+case "aftercopy":
+wa(a), Va.clearData(), b && b !== Ja() && b.focus && b.focus();
+break;
+
+case "_mouseover":
+Va.focus(b), Z.bubbleEvents === !0 && f && (b && b !== a.relatedTarget && !F(a.relatedTarget, b) && xa(A({}, a, {
+type:"mouseenter",
+bubbles:!1,
+cancelable:!1
+})), xa(A({}, a, {
+type:"mouseover"
+})));
+break;
+
+case "_mouseout":
+Va.blur(), Z.bubbleEvents === !0 && f && (b && b !== a.relatedTarget && !F(a.relatedTarget, b) && xa(A({}, a, {
+type:"mouseleave",
+bubbles:!1,
+cancelable:!1
+})), xa(A({}, a, {
+type:"mouseout"
+})));
+break;
+
+case "_mousedown":
+Ka(b, Z.activeClass), Z.bubbleEvents === !0 && f && xa(A({}, a, {
+type:a.type.slice(1)
+}));
+break;
+
+case "_mouseup":
+La(b, Z.activeClass), Z.bubbleEvents === !0 && f && xa(A({}, a, {
+type:a.type.slice(1)
+}));
+break;
+
+case "_click":
+e = null, Z.bubbleEvents === !0 && f && xa(A({}, a, {
+type:a.type.slice(1)
+}));
+break;
+
+case "_mousemove":
+Z.bubbleEvents === !0 && f && xa(A({}, a, {
+type:a.type.slice(1)
+}));
+}
+return /^_(?:click|mouse(?:over|out|down|up|move))$/.test(a.type) ? !0 :void 0;
+}, wa = function(a) {
+if (a.errors && a.errors.length > 0) {
+var b = B(a);
+A(b, {
+type:"error",
+name:"clipboard-error"
+}), delete b.success, i(function() {
+Va.emit(b);
+}, 0);
+}
+}, xa = function(a) {
+if (a && "string" == typeof a.type && a) {
+var b, c = a.target || null, d = c && c.ownerDocument || g, e = {
+view:d.defaultView || f,
+canBubble:!0,
+cancelable:!0,
+detail:"click" === a.type ? 1 :0,
+button:"number" == typeof a.which ? a.which - 1 :"number" == typeof a.button ? a.button :d.createEvent ? 0 :1
+}, h = A(e, a);
+c && d.createEvent && c.dispatchEvent && (h = [ h.type, h.canBubble, h.cancelable, h.view, h.detail, h.screenX, h.screenY, h.clientX, h.clientY, h.ctrlKey, h.altKey, h.shiftKey, h.metaKey, h.button, h.relatedTarget ], b = d.createEvent("MouseEvents"), b.initMouseEvent && (b.initMouseEvent.apply(b, h), b._source = "js", c.dispatchEvent(b)));
+}
+}, ya = function() {
+var a = Z.flashLoadTimeout;
+if ("number" == typeof a && a >= 0) {
+var b = Math.min(1e3, a / 10), c = Z.swfObjectId + "_fallbackContent";
+T = k(function() {
+var a = g.getElementById(c);
+Oa(a) && (Pa(), N.deactivated = null, Va.emit({
+type:"error",
+name:"swf-not-found"
+}));
+}, b);
+}
+}, za = function() {
+var a = g.createElement("div");
+return a.id = Z.containerId, a.className = Z.containerClass, a.style.position = "absolute", a.style.left = "0px", a.style.top = "-9999px", a.style.width = "1px", a.style.height = "1px", a.style.zIndex = "" + Sa(Z.zIndex), a;
+}, Aa = function(a) {
+for (var b = a && a.parentNode; b && "OBJECT" === b.nodeName && b.parentNode; ) b = b.parentNode;
+return b || null;
+}, Ba = function() {
+var a, b = N.bridge, c = Aa(b);
+if (!b) {
+var d = Ia(f.location.host, Z), e = "never" === d ? "none" :"all", h = Ga(A({
+jsVersion:Va.version
+}, Z)), i = Z.swfPath + Fa(Z.swfPath, Z);
+c = za();
+var j = g.createElement("div");
+c.appendChild(j), g.body.appendChild(c);
+var k = g.createElement("div"), l = "activex" === N.pluginType;
+k.innerHTML = '', b = k.firstChild, k = null, y(b).ZeroClipboard = Va, c.replaceChild(b, j), ya();
+}
+return b || (b = g[Z.swfObjectId], b && (a = b.length) && (b = b[a - 1]), !b && c && (b = c.firstChild)), N.bridge = b || null, b;
+}, Ca = function() {
+var a = N.bridge;
+if (a) {
+var d = Aa(a);
+d && ("activex" === N.pluginType && "readyState" in a ? (a.style.display = "none", function e() {
+if (4 === a.readyState) {
+for (var b in a) "function" == typeof a[b] && (a[b] = null);
+a.parentNode && a.parentNode.removeChild(a), d.parentNode && d.parentNode.removeChild(d);
+} else i(e, 10);
+}()) :(a.parentNode && a.parentNode.removeChild(a), d.parentNode && d.parentNode.removeChild(d))), Pa(), N.ready = null, N.bridge = null, N.deactivated = null, c = b;
+}
+}, Da = function(a) {
+var b = {}, c = {};
+if ("object" == typeof a && a) {
+for (var d in a) if (d && w.call(a, d) && "string" == typeof a[d] && a[d]) switch (d.toLowerCase()) {
+case "text/plain":
+case "text":
+case "air:text":
+case "flash:text":
+b.text = a[d], c.text = d;
+break;
+
+case "text/html":
+case "html":
+case "air:html":
+case "flash:html":
+b.html = a[d], c.html = d;
+break;
+
+case "application/rtf":
+case "text/rtf":
+case "rtf":
+case "richtext":
+case "air:rtf":
+case "flash:rtf":
+b.rtf = a[d], c.rtf = d;
+}
+return {
+data:b,
+formatMap:c
+};
+}
+}, Ea = function(a, b) {
+if ("object" != typeof a || !a || "object" != typeof b || !b) return a;
+var c = {};
+for (var d in a) if (w.call(a, d)) if ("errors" === d) {
+c[d] = a[d] ? a[d].slice() :[];
+for (var e = 0, f = c[d].length; f > e; e++) c[d][e].format = b[c[d][e].format];
+} else if ("success" !== d && "data" !== d) c[d] = a[d]; else {
+c[d] = {};
+var g = a[d];
+for (var h in g) h && w.call(g, h) && w.call(b, h) && (c[d][b[h]] = g[h]);
+}
+return c;
+}, Fa = function(a, b) {
+var c = null == b || b && b.cacheBust === !0;
+return c ? (-1 === a.indexOf("?") ? "?" :"&") + "noCache=" + t() :"";
+}, Ga = function(a) {
+var b, c, d, e, g = "", h = [];
+if (a.trustedDomains && ("string" == typeof a.trustedDomains ? e = [ a.trustedDomains ] :"object" == typeof a.trustedDomains && "length" in a.trustedDomains && (e = a.trustedDomains)), e && e.length) for (b = 0, c = e.length; c > b; b++) if (w.call(e, b) && e[b] && "string" == typeof e[b]) {
+if (d = Ha(e[b]), !d) continue;
+if ("*" === d) {
+h.length = 0, h.push(d);
+break;
+}
+h.push.apply(h, [ d, "//" + d, f.location.protocol + "//" + d ]);
+}
+return h.length && (g += "trustedOrigins=" + n(h.join(","))), a.forceEnhancedClipboard === !0 && (g += (g ? "&" :"") + "forceEnhancedClipboard=true"), "string" == typeof a.swfObjectId && a.swfObjectId && (g += (g ? "&" :"") + "swfObjectId=" + n(a.swfObjectId)), "string" == typeof a.jsVersion && a.jsVersion && (g += (g ? "&" :"") + "jsVersion=" + n(a.jsVersion)), g;
+}, Ha = function(a) {
+if (null == a || "" === a) return null;
+if (a = a.replace(/^\s+|\s+$/g, ""), "" === a) return null;
+var b = a.indexOf("//");
+a = -1 === b ? a :a.slice(b + 2);
+var c = a.indexOf("/");
+return a = -1 === c ? a :-1 === b || 0 === c ? null :a.slice(0, c), a && ".swf" === a.slice(-4).toLowerCase() ? null :a || null;
+}, Ia = function() {
+var a = function(a) {
+var b, c, d, e = [];
+if ("string" == typeof a && (a = [ a ]), "object" != typeof a || !a || "number" != typeof a.length) return e;
+for (b = 0, c = a.length; c > b; b++) if (w.call(a, b) && (d = Ha(a[b]))) {
+if ("*" === d) {
+e.length = 0, e.push("*");
+break;
+}
+-1 === e.indexOf(d) && e.push(d);
+}
+return e;
+};
+return function(b, c) {
+var d = Ha(c.swfPath);
+null === d && (d = b);
+var e = a(c.trustedDomains), f = e.length;
+if (f > 0) {
+if (1 === f && "*" === e[0]) return "always";
+if (-1 !== e.indexOf(b)) return 1 === f && b === d ? "sameDomain" :"always";
+}
+return "never";
+};
+}(), Ja = function() {
+try {
+return g.activeElement;
+} catch (a) {
+return null;
+}
+}, Ka = function(a, b) {
+var c, d, e, f = [];
+if ("string" == typeof b && b && (f = b.split(/\s+/)), a && 1 === a.nodeType && f.length > 0) if (a.classList) for (c = 0, d = f.length; d > c; c++) a.classList.add(f[c]); else if (a.hasOwnProperty("className")) {
+for (e = " " + a.className + " ", c = 0, d = f.length; d > c; c++) -1 === e.indexOf(" " + f[c] + " ") && (e += f[c] + " ");
+a.className = e.replace(/^\s+|\s+$/g, "");
+}
+return a;
+}, La = function(a, b) {
+var c, d, e, f = [];
+if ("string" == typeof b && b && (f = b.split(/\s+/)), a && 1 === a.nodeType && f.length > 0) if (a.classList && a.classList.length > 0) for (c = 0, d = f.length; d > c; c++) a.classList.remove(f[c]); else if (a.className) {
+for (e = (" " + a.className + " ").replace(/[\r\n\t]/g, " "), c = 0, d = f.length; d > c; c++) e = e.replace(" " + f[c] + " ", " ");
+a.className = e.replace(/^\s+|\s+$/g, "");
+}
+return a;
+}, Ma = function(a, b) {
+var c = m(a, null).getPropertyValue(b);
+return "cursor" !== b || c && "auto" !== c || "A" !== a.nodeName ? c :"pointer";
+}, Na = function(a) {
+var b = {
+left:0,
+top:0,
+width:0,
+height:0
+};
+if (a.getBoundingClientRect) {
+var c = a.getBoundingClientRect(), d = f.pageXOffset, e = f.pageYOffset, h = g.documentElement.clientLeft || 0, i = g.documentElement.clientTop || 0, j = 0, k = 0;
+if ("relative" === Ma(g.body, "position")) {
+var l = g.body.getBoundingClientRect(), m = g.documentElement.getBoundingClientRect();
+j = l.left - m.left || 0, k = l.top - m.top || 0;
+}
+b.left = c.left + d - h - j, b.top = c.top + e - i - k, b.width = "width" in c ? c.width :c.right - c.left, b.height = "height" in c ? c.height :c.bottom - c.top;
+}
+return b;
+}, Oa = function(a) {
+if (!a) return !1;
+var b = m(a, null), c = r(b.height) > 0, d = r(b.width) > 0, e = r(b.top) >= 0, f = r(b.left) >= 0, g = c && d && e && f, h = g ? null :Na(a), i = "none" !== b.display && "collapse" !== b.visibility && (g || !!h && (c || h.height > 0) && (d || h.width > 0) && (e || h.top >= 0) && (f || h.left >= 0));
+return i;
+}, Pa = function() {
+j(S), S = 0, l(T), T = 0;
+}, Qa = function() {
+var a;
+if (d && (a = Aa(N.bridge))) {
+var b = Na(d);
+A(a.style, {
+width:b.width + "px",
+height:b.height + "px",
+top:b.top + "px",
+left:b.left + "px",
+zIndex:"" + Sa(Z.zIndex)
+});
+}
+}, Ra = function(a) {
+N.ready === !0 && (N.bridge && "function" == typeof N.bridge.setHandCursor ? N.bridge.setHandCursor(a) :N.ready = !1);
+}, Sa = function(a) {
+if (/^(?:auto|inherit)$/.test(a)) return a;
+var b;
+return "number" != typeof a || s(a) ? "string" == typeof a && (b = Sa(q(a, 10))) :b = a, "number" == typeof b ? b :"auto";
+}, Ta = function(b) {
+var c, d, e, f = N.sandboxed, g = null;
+if (b = b === !0, M === !1) g = !1; else {
+try {
+d = a.frameElement || null;
+} catch (h) {
+e = {
+name:h.name,
+message:h.message
+};
+}
+if (d && 1 === d.nodeType && "IFRAME" === d.nodeName) try {
+g = d.hasAttribute("sandbox");
+} catch (h) {
+g = null;
+} else {
+try {
+c = document.domain || null;
+} catch (h) {
+c = null;
+}
+(null === c || e && "SecurityError" === e.name && /(^|[\s\(\[@])sandbox(es|ed|ing|[\s\.,!\)\]@]|$)/.test(e.message.toLowerCase())) && (g = !0);
+}
+}
+return N.sandboxed = g, f === g || b || Ua(o), g;
+}, Ua = function(a) {
+function b(a) {
+var b = a.match(/[\d]+/g);
+return b.length = 3, b.join(".");
+}
+function c(a) {
+return !!a && (a = a.toLowerCase()) && (/^(pepflashplayer\.dll|libpepflashplayer\.so|pepperflashplayer\.plugin)$/.test(a) || "chrome.plugin" === a.slice(-13));
+}
+function d(a) {
+a && (i = !0, a.version && (l = b(a.version)), !l && a.description && (l = b(a.description)), a.filename && (k = c(a.filename)));
+}
+var e, f, g, i = !1, j = !1, k = !1, l = "";
+if (h.plugins && h.plugins.length) e = h.plugins["Shockwave Flash"], d(e), h.plugins["Shockwave Flash 2.0"] && (i = !0, l = "2.0.0.11"); else if (h.mimeTypes && h.mimeTypes.length) g = h.mimeTypes["application/x-shockwave-flash"], e = g && g.enabledPlugin, d(e); else if ("undefined" != typeof a) {
+j = !0;
+try {
+f = new a("ShockwaveFlash.ShockwaveFlash.7"), i = !0, l = b(f.GetVariable("$version"));
+} catch (m) {
+try {
+f = new a("ShockwaveFlash.ShockwaveFlash.6"), i = !0, l = "6.0.21";
+} catch (n) {
+try {
+f = new a("ShockwaveFlash.ShockwaveFlash"), i = !0, l = b(f.GetVariable("$version"));
+} catch (o) {
+j = !1;
+}
+}
+}
+}
+N.disabled = i !== !0, N.outdated = l && r(l) < r(O), N.version = l || "0.0.0", N.pluginType = k ? "pepper" :j ? "activex" :i ? "netscape" :"unknown";
+};
+Ua(o), Ta(!0);
+var Va = function() {
+return this instanceof Va ? void ("function" == typeof Va._createClient && Va._createClient.apply(this, z(arguments))) :new Va();
+};
+v(Va, "version", {
+value:"2.2.0",
+writable:!1,
+configurable:!0,
+enumerable:!0
+}), Va.config = function() {
+return $.apply(this, z(arguments));
+}, Va.state = function() {
+return _.apply(this, z(arguments));
+}, Va.isFlashUnusable = function() {
+return aa.apply(this, z(arguments));
+}, Va.on = function() {
+return ba.apply(this, z(arguments));
+}, Va.off = function() {
+return ca.apply(this, z(arguments));
+}, Va.handlers = function() {
+return da.apply(this, z(arguments));
+}, Va.emit = function() {
+return ea.apply(this, z(arguments));
+}, Va.create = function() {
+return fa.apply(this, z(arguments));
+}, Va.destroy = function() {
+return ga.apply(this, z(arguments));
+}, Va.setData = function() {
+return ha.apply(this, z(arguments));
+}, Va.clearData = function() {
+return ia.apply(this, z(arguments));
+}, Va.getData = function() {
+return ja.apply(this, z(arguments));
+}, Va.focus = Va.activate = function() {
+return ka.apply(this, z(arguments));
+}, Va.blur = Va.deactivate = function() {
+return la.apply(this, z(arguments));
+}, Va.activeElement = function() {
+return ma.apply(this, z(arguments));
+};
+var Wa = 0, Xa = {}, Ya = 0, Za = {}, $a = {};
+A(Z, {
+autoActivate:!0
+});
+var _a = function(a) {
+var b = this;
+b.id = "" + Wa++, Xa[b.id] = {
+instance:b,
+elements:[],
+handlers:{}
+}, a && b.clip(a), Va.on("*", function(a) {
+return b.emit(a);
+}), Va.on("destroy", function() {
+b.destroy();
+}), Va.create();
+}, ab = function(a, d) {
+var e, f, g, h = {}, i = Xa[this.id], j = i && i.handlers;
+if (!i) throw new Error("Attempted to add new listener(s) to a destroyed ZeroClipboard client instance");
+if ("string" == typeof a && a) g = a.toLowerCase().split(/\s+/); else if ("object" == typeof a && a && "undefined" == typeof d) for (e in a) w.call(a, e) && "string" == typeof e && e && "function" == typeof a[e] && this.on(e, a[e]);
+if (g && g.length) {
+for (e = 0, f = g.length; f > e; e++) a = g[e].replace(/^on/, ""), h[a] = !0, j[a] || (j[a] = []), j[a].push(d);
+if (h.ready && N.ready && this.emit({
+type:"ready",
+client:this
+}), h.error) {
+for (e = 0, f = W.length; f > e; e++) if (N[W[e].replace(/^flash-/, "")]) {
+this.emit({
+type:"error",
+name:W[e],
+client:this
+});
+break;
+}
+c !== b && Va.version !== c && this.emit({
+type:"error",
+name:"version-mismatch",
+jsVersion:Va.version,
+swfVersion:c
+});
+}
+}
+return this;
+}, bb = function(a, b) {
+var c, d, e, f, g, h = Xa[this.id], i = h && h.handlers;
+if (!i) return this;
+if (0 === arguments.length) f = u(i); else if ("string" == typeof a && a) f = a.split(/\s+/); else if ("object" == typeof a && a && "undefined" == typeof b) for (c in a) w.call(a, c) && "string" == typeof c && c && "function" == typeof a[c] && this.off(c, a[c]);
+if (f && f.length) for (c = 0, d = f.length; d > c; c++) if (a = f[c].toLowerCase().replace(/^on/, ""), g = i[a], g && g.length) if (b) for (e = g.indexOf(b); -1 !== e; ) g.splice(e, 1), e = g.indexOf(b, e); else g.length = 0;
+return this;
+}, cb = function(a) {
+var b = null, c = Xa[this.id] && Xa[this.id].handlers;
+return c && (b = "string" == typeof a && a ? c[a] ? c[a].slice(0) :[] :B(c)), b;
+}, db = function(a) {
+if (ib.call(this, a)) {
+"object" == typeof a && a && "string" == typeof a.type && a.type && (a = A({}, a));
+var b = A({}, oa(a), {
+client:this
+});
+jb.call(this, b);
+}
+return this;
+}, eb = function(a) {
+if (!Xa[this.id]) throw new Error("Attempted to clip element(s) to a destroyed ZeroClipboard client instance");
+a = kb(a);
+for (var b = 0; b < a.length; b++) if (w.call(a, b) && a[b] && 1 === a[b].nodeType) {
+a[b].zcClippingId ? -1 === Za[a[b].zcClippingId].indexOf(this.id) && Za[a[b].zcClippingId].push(this.id) :(a[b].zcClippingId = "zcClippingId_" + Ya++, Za[a[b].zcClippingId] = [ this.id ], Z.autoActivate === !0 && lb(a[b]));
+var c = Xa[this.id] && Xa[this.id].elements;
+-1 === c.indexOf(a[b]) && c.push(a[b]);
+}
+return this;
+}, fb = function(a) {
+var b = Xa[this.id];
+if (!b) return this;
+var c, d = b.elements;
+a = "undefined" == typeof a ? d.slice(0) :kb(a);
+for (var e = a.length; e--; ) if (w.call(a, e) && a[e] && 1 === a[e].nodeType) {
+for (c = 0; -1 !== (c = d.indexOf(a[e], c)); ) d.splice(c, 1);
+var f = Za[a[e].zcClippingId];
+if (f) {
+for (c = 0; -1 !== (c = f.indexOf(this.id, c)); ) f.splice(c, 1);
+0 === f.length && (Z.autoActivate === !0 && mb(a[e]), delete a[e].zcClippingId);
+}
+}
+return this;
+}, gb = function() {
+var a = Xa[this.id];
+return a && a.elements ? a.elements.slice(0) :[];
+}, hb = function() {
+Xa[this.id] && (this.unclip(), this.off(), delete Xa[this.id]);
+}, ib = function(a) {
+if (!a || !a.type) return !1;
+if (a.client && a.client !== this) return !1;
+var b = Xa[this.id], c = b && b.elements, d = !!c && c.length > 0, e = !a.target || d && -1 !== c.indexOf(a.target), f = a.relatedTarget && d && -1 !== c.indexOf(a.relatedTarget), g = a.client && a.client === this;
+return b && (e || f || g) ? !0 :!1;
+}, jb = function(a) {
+var b = Xa[this.id];
+if ("object" == typeof a && a && a.type && b) {
+var c = ra(a), d = b && b.handlers["*"] || [], e = b && b.handlers[a.type] || [], g = d.concat(e);
+if (g && g.length) {
+var h, i, j, k, l, m = this;
+for (h = 0, i = g.length; i > h; h++) j = g[h], k = m, "string" == typeof j && "function" == typeof f[j] && (j = f[j]), "object" == typeof j && j && "function" == typeof j.handleEvent && (k = j, j = j.handleEvent), "function" == typeof j && (l = A({}, a), sa(j, k, [ l ], c));
+}
+}
+}, kb = function(a) {
+return "string" == typeof a && (a = []), "number" != typeof a.length ? [ a ] :a;
+}, lb = function(a) {
+if (a && 1 === a.nodeType) {
+var b = function(a) {
+(a || (a = f.event)) && ("js" !== a._source && (a.stopImmediatePropagation(), a.preventDefault()), delete a._source);
+}, c = function(c) {
+(c || (c = f.event)) && (b(c), Va.focus(a));
+};
+a.addEventListener("mouseover", c, !1), a.addEventListener("mouseout", b, !1), a.addEventListener("mouseenter", b, !1), a.addEventListener("mouseleave", b, !1), a.addEventListener("mousemove", b, !1), $a[a.zcClippingId] = {
+mouseover:c,
+mouseout:b,
+mouseenter:b,
+mouseleave:b,
+mousemove:b
+};
+}
+}, mb = function(a) {
+if (a && 1 === a.nodeType) {
+var b = $a[a.zcClippingId];
+if ("object" == typeof b && b) {
+for (var c, d, e = [ "move", "leave", "enter", "out", "over" ], f = 0, g = e.length; g > f; f++) c = "mouse" + e[f], d = b[c], "function" == typeof d && a.removeEventListener(c, d, !1);
+delete $a[a.zcClippingId];
+}
+}
+};
+Va._createClient = function() {
+_a.apply(this, z(arguments));
+}, Va.prototype.on = function() {
+return ab.apply(this, z(arguments));
+}, Va.prototype.off = function() {
+return bb.apply(this, z(arguments));
+}, Va.prototype.handlers = function() {
+return cb.apply(this, z(arguments));
+}, Va.prototype.emit = function() {
+return db.apply(this, z(arguments));
+}, Va.prototype.clip = function() {
+return eb.apply(this, z(arguments));
+}, Va.prototype.unclip = function() {
+return fb.apply(this, z(arguments));
+}, Va.prototype.elements = function() {
+return gb.apply(this, z(arguments));
+}, Va.prototype.destroy = function() {
+return hb.apply(this, z(arguments));
+}, Va.prototype.setText = function(a) {
+if (!Xa[this.id]) throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.setData("text/plain", a), this;
+}, Va.prototype.setHtml = function(a) {
+if (!Xa[this.id]) throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.setData("text/html", a), this;
+}, Va.prototype.setRichText = function(a) {
+if (!Xa[this.id]) throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.setData("application/rtf", a), this;
+}, Va.prototype.setData = function() {
+if (!Xa[this.id]) throw new Error("Attempted to set pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.setData.apply(this, z(arguments)), this;
+}, Va.prototype.clearData = function() {
+if (!Xa[this.id]) throw new Error("Attempted to clear pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.clearData.apply(this, z(arguments)), this;
+}, Va.prototype.getData = function() {
+if (!Xa[this.id]) throw new Error("Attempted to get pending clipboard data from a destroyed ZeroClipboard client instance");
+return Va.getData.apply(this, z(arguments));
+}, "function" == typeof define && define.amd ? define(function() {
+return Va;
+}) :"object" == typeof module && module && "object" == typeof module.exports && module.exports ? module.exports = Va :a.ZeroClipboard = Va;
+}(function() {
+return this || window;
+}());`)
func scripts_vendor_js() ([]byte, error) {
return _scripts_vendor_js, nil
@@ -57698,7 +58610,8 @@ body,html{height:100%}
.gutter-top{padding-top:15px}
.gutter-bottom{padding-bottom:15px}
select:invalid{box-shadow:none}
-.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`)
+.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
+.well h1:first-child,.well h2:first-child,.well h3:first-child,.well h4:first-child,.well h5:first-child{margin-top:0}`)
func styles_main_css() ([]byte, error) {
return _styles_main_css, nil
@@ -58084,7 +58997,8 @@ var _views_builds_html = []byte(`
+
+
{{buildConfigName}}
Build strategy: {{buildConfig.parameters.strategy.type}}
-
+
+
{{build.metadata.name}}
Created:
@@ -58150,15 +59073,15 @@ Image change on image repository {{trigger.imageChange.from.name}}:{{trigger.ima
Build strategy: {{build.parameters.strategy.type}}
-
+
Builder image: {{build.parameters.strategy.stiStrategy.image}}
-
+
Builder image: {{build.parameters.strategy.dockerStrategy.image}}
-
+
Builder image: {{build.parameters.strategy.customStrategy.image}}
@@ -58185,7 +59108,7 @@ Output image: {{build.parameters.output.dockerImageReference}}
-
+
{{buildConfigName}}
@@ -58193,7 +59116,7 @@ Output image: {{build.parameters.output.dockerImageReference}}
-
+
{{build.metadata.name}}
Created:
@@ -58352,6 +59275,19 @@ func views_deployments_html() ([]byte, error) {
return _views_deployments_html, nil
}
+var _views_directives_click_to_reveal_html = []byte(`
{{linkText || "Show..."}}
+
`)
+
+func views_directives_click_to_reveal_html() ([]byte, error) {
+ return _views_directives_click_to_reveal_html, nil
+}
+
+var _views_directives_copy_to_clipboard_html = []byte(`
`)
+
+func views_directives_copy_to_clipboard_html() ([]byte, error) {
+ return _views_directives_copy_to_clipboard_html, nil
+}
+
var _views_images_html = []byte(`
@@ -58867,6 +59803,7 @@ var _bindata = map[string]func() ([]byte, error){
"images/touch-icon-precomposed.png": images_touch_icon_precomposed_png,
"index.html": index_html,
"robots.txt": robots_txt,
+ "scripts/ZeroClipboard.swf": scripts_zeroclipboard_swf,
"scripts/oldieshim.js": scripts_oldieshim_js,
"scripts/scripts.js": scripts_scripts_js,
"scripts/vendor.js": scripts_vendor_js,
@@ -58947,6 +59884,8 @@ var _bindata = map[string]func() ([]byte, error){
"views/catalog/_template.html": views_catalog_template_html,
"views/catalog.html": views_catalog_html,
"views/deployments.html": views_deployments_html,
+ "views/directives/_click-to-reveal.html": views_directives_click_to_reveal_html,
+ "views/directives/_copy-to-clipboard.html": views_directives_copy_to_clipboard_html,
"views/images.html": views_images_html,
"views/newfromtemplate.html": views_newfromtemplate_html,
"views/pods.html": views_pods_html2,
@@ -59029,6 +59968,8 @@ var _bintree = &_bintree_t{nil, map[string]*_bintree_t{
"robots.txt": &_bintree_t{robots_txt, map[string]*_bintree_t{
}},
"scripts": &_bintree_t{nil, map[string]*_bintree_t{
+ "ZeroClipboard.swf": &_bintree_t{scripts_zeroclipboard_swf, map[string]*_bintree_t{
+ }},
"oldieshim.js": &_bintree_t{scripts_oldieshim_js, map[string]*_bintree_t{
}},
"scripts.js": &_bintree_t{scripts_scripts_js, map[string]*_bintree_t{
@@ -59197,6 +60138,12 @@ var _bintree = &_bintree_t{nil, map[string]*_bintree_t{
}},
"deployments.html": &_bintree_t{views_deployments_html, map[string]*_bintree_t{
}},
+ "directives": &_bintree_t{nil, map[string]*_bintree_t{
+ "_click-to-reveal.html": &_bintree_t{views_directives_click_to_reveal_html, map[string]*_bintree_t{
+ }},
+ "_copy-to-clipboard.html": &_bintree_t{views_directives_copy_to_clipboard_html, map[string]*_bintree_t{
+ }},
+ }},
"images.html": &_bintree_t{views_images_html, map[string]*_bintree_t{
}},
"newfromtemplate.html": &_bintree_t{views_newfromtemplate_html, map[string]*_bintree_t{
diff --git a/pkg/assets/mime.go b/pkg/assets/mime.go
index 15e2bdc4ee5e..68ea6f6ef93b 100644
--- a/pkg/assets/mime.go
+++ b/pkg/assets/mime.go
@@ -27,6 +27,9 @@ func RegisterMimeTypes() {
// http://www.iana.org/assignments/media-types/application/font-sfnt
registerIfNeeded(".ttf", "application/font-sfnt")
registerIfNeeded(".otf", "application/font-sfnt")
+
+ // Flash
+ registerIfNeeded(".swf", "application/x-shockwave-flash")
}
func registerIfNeeded(extension, mimeType string) {