From 1b037ce130e8fced49a8f7715eeed2f9ddd8285b Mon Sep 17 00:00:00 2001 From: Dan Sparacio Date: Thu, 8 Sep 2016 11:03:17 -0700 Subject: [PATCH 1/2] Fix for #1435 --- src/core/events/CoreEvents.js | 9 ++-- src/streaming/MediaPlayerEvents.js | 48 +++++++++++++------- src/streaming/protection/ProtectionEvents.js | 2 +- 3 files changed, 37 insertions(+), 22 deletions(-) diff --git a/src/core/events/CoreEvents.js b/src/core/events/CoreEvents.js index dbf6ffe0e3..7eba54aba8 100644 --- a/src/core/events/CoreEvents.js +++ b/src/core/events/CoreEvents.js @@ -31,6 +31,9 @@ import EventsBase from './EventsBase'; /** + * These are internal events that should not be needed at the player level. + * If you find and event in here that you would like access to from MediaPlayer level + * please add an issue at https://github.com/Dash-Industry-Forum/dash.js/issues/new * @class * @ignore */ @@ -43,12 +46,9 @@ class CoreEvents extends EventsBase { this.BYTES_APPENDED = 'bytesAppended'; this.CHECK_FOR_EXISTENCE_COMPLETED = 'checkForExistenceCompleted'; this.CHUNK_APPENDED = 'chunkAppended'; - this.CURRENT_TRACK_CHANGED = 'currenttrackchanged'; + this.CURRENT_TRACK_CHANGED = 'currentTrackChanged'; this.DATA_UPDATE_COMPLETED = 'dataUpdateCompleted'; this.DATA_UPDATE_STARTED = 'dataUpdateStarted'; - this.FRAGMENT_LOADING_COMPLETED = 'fragmentLoadingCompleted'; - this.FRAGMENT_LOADING_STARTED = 'fragmentLoadingStarted'; - this.FRAGMENT_LOADING_ABANDONED = 'fragmentLoadingAbandoned'; this.INITIALIZATION_LOADED = 'initializationLoaded'; this.INIT_FRAGMENT_LOADED = 'initFragmentLoaded'; this.INIT_REQUESTED = 'initRequested'; @@ -67,7 +67,6 @@ class CoreEvents extends EventsBase { this.STREAMS_COMPOSED = 'streamsComposed'; this.STREAM_BUFFERING_COMPLETED = 'streamBufferingCompleted'; this.STREAM_COMPLETED = 'streamCompleted'; - this.STREAM_INITIALIZED = 'streaminitialized'; this.STREAM_TEARDOWN_COMPLETE = 'streamTeardownComplete'; this.TIMED_TEXT_REQUESTED = 'timedTextRequested'; this.TIME_SYNCHRONIZATION_COMPLETED = 'timeSynchronizationComplete'; diff --git a/src/streaming/MediaPlayerEvents.js b/src/streaming/MediaPlayerEvents.js index a317a64e40..5c4d56ffdf 100644 --- a/src/streaming/MediaPlayerEvents.js +++ b/src/streaming/MediaPlayerEvents.js @@ -45,19 +45,19 @@ class MediaPlayerEvents extends EventsBase { * as the MPD's availabilityStartTime is in the future. * Check delay property in payload to determine time before playback will start. */ - this.AST_IN_FUTURE = 'astinfuture'; + this.AST_IN_FUTURE = 'astInFuture'; /** * Triggered when the video element's buffer state changes to stalled. * Check mediaType in payload to determine type (Video, Audio, FragmentedText). * @event MediaPlayerEvents#BUFFER_EMPTY */ - this.BUFFER_EMPTY = 'bufferstalled'; + this.BUFFER_EMPTY = 'bufferStalled'; /** * Triggered when the video element's buffer state changes to loaded. * Check mediaType in payload to determine type (Video, Audio, FragmentedText). * @event MediaPlayerEvents#BUFFER_LOADED */ - this.BUFFER_LOADED = 'bufferloaded'; + this.BUFFER_LOADED = 'bufferLoaded'; /** * Triggered when the video element's buffer state changes, either stalled or loaded. Check payload for state. @@ -66,10 +66,26 @@ class MediaPlayerEvents extends EventsBase { this.BUFFER_LEVEL_STATE_CHANGED = 'bufferStateChanged'; /** - * Triggered when - * @event MediaPlayerEvents#ERROR - */ + * Triggered when there is an error from the element or MSE source buffer. + * @event MediaPlayerEvents#ERROR + */ this.ERROR = 'error'; + + /** + * Triggered when a fragment download has completed. + * @event MediaPlayerEvents#FRAGMENT_LOADING_COMPLETED + */ + this.FRAGMENT_LOADING_COMPLETED = 'fragmentLoadingCompleted'; + /** + * Triggered when a fragment download has started. + * @event MediaPlayerEvents#FRAGMENT_LOADING_STARTED + */ + this.FRAGMENT_LOADING_STARTED = 'fragmentLoadingStarted'; + /** + * Triggered when a fragment download is abandoned due to detection of slow download base on the ABR abandon rule.. + * @event MediaPlayerEvents#FRAGMENT_LOADING_ABANDONED + */ + this.FRAGMENT_LOADING_ABANDONED = 'fragmentLoadingAbandoned'; /** * Triggered when {@link module:Debug} log method is called. * @event MediaPlayerEvents#LOG @@ -80,37 +96,37 @@ class MediaPlayerEvents extends EventsBase { * Triggered when the manifest load is complete * @event MediaPlayerEvents#MANIFEST_LOADED */ - this.MANIFEST_LOADED = 'manifestloaded'; + this.MANIFEST_LOADED = 'manifestLoaded'; /** * Triggered anytime there is a change to the overall metrics. * @event MediaPlayerEvents#METRICS_CHANGED */ - this.METRICS_CHANGED = 'metricschanged'; + this.METRICS_CHANGED = 'metricsChanged'; /** * Triggered when an individual metric is added, updated or cleared. * @event MediaPlayerEvents#METRIC_CHANGED */ - this.METRIC_CHANGED = 'metricchanged'; + this.METRIC_CHANGED = 'metricChanged'; /** * Triggered every time a new metric is added. * @event MediaPlayerEvents#METRIC_ADDED */ - this.METRIC_ADDED = 'metricadded'; + this.METRIC_ADDED = 'metricAdded'; /** * Triggered every time a metric is updated. * @event MediaPlayerEvents#METRIC_UPDATED */ - this.METRIC_UPDATED = 'metricupdated'; + this.METRIC_UPDATED = 'metricUpdated'; /** * Triggered at the stream end of a period. * @event MediaPlayerEvents#PERIOD_SWITCH_COMPLETED */ - this.PERIOD_SWITCH_COMPLETED = 'streamswitchcompleted'; + this.PERIOD_SWITCH_COMPLETED = 'periodSwitchCompleted'; /** * Triggered when a new period starts. * @event MediaPlayerEvents#PERIOD_SWITCH_STARTED */ - this.PERIOD_SWITCH_STARTED = 'streamswitchstarted'; + this.PERIOD_SWITCH_STARTED = 'periodSwitchStarted'; /** * Triggered when an ABR up /down switch is initialed; either by user in manual mode or auto mode via ABR rules. @@ -128,17 +144,17 @@ class MediaPlayerEvents extends EventsBase { * Triggered when the stream is setup and ready. * @event MediaPlayerEvents#STREAM_INITIALIZED */ - this.STREAM_INITIALIZED = 'streaminitialized'; + this.STREAM_INITIALIZED = 'streamInitialized'; /** * Triggered once all text tracks detected in the MPD are added to the video element. * @event MediaPlayerEvents#TEXT_TRACKS_ADDED */ - this.TEXT_TRACKS_ADDED = 'alltexttracksadded'; + this.TEXT_TRACKS_ADDED = 'allTextTracksAdded'; /** * Triggered when a text track is added to the video element's TextTrackList * @event MediaPlayerEvents#TEXT_TRACK_ADDED */ - this.TEXT_TRACK_ADDED = 'texttrackadded'; + this.TEXT_TRACK_ADDED = 'textTrackAdded'; /** * Sent when enough data is available that the media can be played, diff --git a/src/streaming/protection/ProtectionEvents.js b/src/streaming/protection/ProtectionEvents.js index ae74a8c21a..01fac31664 100644 --- a/src/streaming/protection/ProtectionEvents.js +++ b/src/streaming/protection/ProtectionEvents.js @@ -37,7 +37,7 @@ class ProtectionEvents extends EventsBase { /** * @description Public facing external events to be used when including protection package. * All public events will be aggregated into the MediaPlayerEvents Class and can be accessed - * via MediaPlayer.events + * via MediaPlayer.events. public_ is the prefix that we use to move event names to MediaPlayerEvents. */ constructor () { super(); From d4a61524ff0c5af8240c5c5d8b0d4fd4240bb280 Mon Sep 17 00:00:00 2001 From: Dan Sparacio Date: Thu, 8 Sep 2016 14:07:12 -0700 Subject: [PATCH 2/2] change akamai logo in player and updated angular to latest stable for v1. Reordered source to keep smoke test streams like audio only up at top of menu. --- .../app/contributors.json | 2 +- .../app/img/akamai.png | Bin 0 -> 11661 bytes .../app/img/akamai_ff.png | Bin 57832 -> 0 bytes .../app/lib/angular/angular.min.js | 475 ++++-- .../dash-if-reference-player/app/sources.json | 1382 ++++++++--------- 5 files changed, 1006 insertions(+), 853 deletions(-) create mode 100644 samples/dash-if-reference-player/app/img/akamai.png delete mode 100644 samples/dash-if-reference-player/app/img/akamai_ff.png diff --git a/samples/dash-if-reference-player/app/contributors.json b/samples/dash-if-reference-player/app/contributors.json index 570fea6267..3a02d889c5 100644 --- a/samples/dash-if-reference-player/app/contributors.json +++ b/samples/dash-if-reference-player/app/contributors.json @@ -7,7 +7,7 @@ }, { "name": "Akamai", - "logo": "app/img/akamai_ff.png", + "logo": "app/img/akamai.png", "link": "http://www.akamai.com" }, { diff --git a/samples/dash-if-reference-player/app/img/akamai.png b/samples/dash-if-reference-player/app/img/akamai.png new file mode 100644 index 0000000000000000000000000000000000000000..f5be5e93c703be931aa8e5bbd21352e2240d8395 GIT binary patch literal 11661 zcmb8VWmr`26EM68(jXzQq?B~W0@6x|q@U%-l0`W;RkoO_2bX3KswX5GcKu(*yvXfl$vY*qErh`4!>@ z^+V|<|H)0u(bCP+)WrfI`_<9Rf?mnq)XGBB!t|?`^QeUc0KmYSHGoUA4@{fL7BsSI_B@ z8qKwbQe+W%Om(%Qt~>g_E^G|@#C^ri^P0-a%0iSN|CcKe?Iw(IdawOU07OW-{JRfO2gmK^0&fgKRl0+sLj*D~8^X?L!=@U*{~tHj=Mx6w<0R|lHd3C?+jCKCM4&OVA&mW8vV%^+ zFnMH~^}u*i2}<38wKFe;6b8m2Q`U(d*NJB%D?)j;9fBwfY-)R1bGdOtVqtdKY1BKt zT@o%;!%j%}e?~HG_+4oE+4pMphZ?x$o0MK`ewp=${~t+^R8~;cmy;CVcMUr$iUs3; zOvr_X1YJM+e)j$lsc$1dmxaK8X787!3ez#=p6skX7!OpzA)iM{mnT>#4 z@3MM%{wH6u-W;$d>}+-?qF5~MayBA^-%7oc{T%$&jQ_+o&bO6;kLo|ASj$gzj5KVI z+O13Jf#(+(Z9K@B{*HTi#08^>gv1u+k7jc7%Eb~Jv8YlZD0BQzWf>N%q{@N?ix-7SPbhCODGi+f%Eu1O zW>~!`Yy;ONxpbAXp=eO7Gul*63EBGl%FSVzVr;gT;PbMhP9j*hkEQ5m+c}Z2Gc&N^FrwD?Lt`T%;s@Ug;95yE%R&sKZ0WcId}`00EE1(DUTmSHPC7G_`Iy|V z)v(0$Q7e+|#@K&8Yq{*T#;*i{j0o%x48G%+6PoM%t1ke6M#=&6Wd1O?&KH)I#Hg%P zY|3rFvas=8PPqBl5O!Yrxz@V`Z!2FEQD9E(Xe;_*$H~9K#K^2)w;9>Ip61eNGG;|F zJ^Y_@ic;KB{>W!wn#}*{ri(vgSe)L*Lt*?PrHELpCYp~oTc4wHKMDY-)k0|_fzNC+ zmAl#!qtKGu@`{7ACZ*zRBilRW_`_jEiTE>s43}7NIIjRsBxyLUh$9w>aP*dIQctJQ zmge7GT8gb4!Dm)$$fnCgvT!#=03hOZ^ss`*ip1Aeos-eoq^&1Lb4qISfZx8=dE4Yx zV#E)9vKvH>=m5Yr1*l%)tl)hfuf-y8NKbMqi4%I36$(7E%4-;u-Kb@L4gk#Th;kkl zjwECJUFogeebeyMMoK#KcswF&3fRlI-2O%B)=q%^+k>tyUr?^~b0IHq zsF5^f+cq%~Vv8;L8*=vBDk0;$gkl~_XaE_$vfyx6@cWpI)ZERb{|Rf*B9$`s0d< zlEF3mE!)U>CjT98H1A@7a2eb@B!09=i=fV}`E~w1tC>AYIH5k4J+yQ}w0`#Vd=6q^ z&OsMJv`IuvS2EhtfaV&4e=jNPDBFkiWSo#4W!u!+#q6NcKC1Y{8!_*eG@pn}FQk`N z%n6Yi6D+3HEAQP-BYFqqK5+r%2w@Z;%1+_biJQp8e+e66+Rs8P5N*VQisG}n^Nf3z zdhr3Mxb(m(e|oB)XoUkW-@A4sl~6QBMJQZ>BgVT)x#<+~dENQkVlO0}&e@{5&P*su zUX`ETb_zRHnPhjFaj_X<_>ra7I9b2VGFmgWfd!u5d(Z%Zb@|72l+i5;;?*qg=Z@;~ z^|h$b*y*xe(|)4xzs*U2e2%L474Ai4=EkFipr+<5$~>=7qVNbwf{-c-|4R0*v(~c4 zJU!!fCiuTwk~>LnpM4sgk~Zuc3%9PIBiz~J(((~lV+gz?PbSX1HV&eG&-cgIr!oG;g-fOg5LfVb!25cv?W0G?rr0z9e!(B zzZv9W!PXAZeeDBDE@J^plh;rfs#Ave(hqf<7Ixy`}O%;7&G;S}cV`YO#sHkMqBvK)-Slqu{q z9)IfBx0vlnxY$}$I{iHMt6#W@ySYQkf{qVb+-8<_yjHZ4CPu8JF=x9@D$f9bqmWvD zvn~5DE6L`GJIEg276<6_fOr1x(1Yb*I+zZb)9yF5S4i(tx%CpITKqm1I771S-S@EA zIzI}pc*HK<9^Hv#;x+1gDa|pusHps2(b8aaK!IlWDezan{@}(oaC4DMLOAbXG7x*V zHBKag3JuKb3jWdyXmOt8MQ*b(c63gXg%Wt32SeF~NfVwNzSsgrk|3VYfQ z`OmCSIXBlP8k))Mg9>~joOV$XYgGN_-}ioANxnOci-4r=un5p)8$8~={XUBd_Vu_B z{(*%Q`A@zCX#LwHqN!g~yOQp*wNQyG!4S3s+cmx(SP040(bhUHdMTPdxCbwLU5vsj z=m6H$>a&2usLOrlwuU0qLRbL+jP2vPMDBSp@Zs%4eC|Spw*U~ejUHE0kUX8^1S`WV z@_rWSt*4FBJF4o@)d-nQmzYvC`EwM4vc3$=ZrdUb%k>lJe34k*j^KYV1{xun%l?!J zh_A9bC{pxx&50HjEn9*st}G}Y0Q8ka)6h|?GMwky{4Xv3i;X$>oAcWNfnO!$VECkOPtoPE z8ID|I2yC8gd9IH9EECrQekcK$A>fomQqzvI1Xb7(39yQK&Y9sAjS9)?OaDGpwicU|7LD;W`1L1GON@w#&R9frezcO@9*#9+- zjdta^CHoXo*~dar+`m32&e#*SWfs5Atx(IY-;D*de`4O|ldv^Kibn;AKi$_nz2O+D zBehA|ST$RZUZj^XD7jFFy*3prQCKKD6q{)Ww_~9jmD`et;wLz0l8K-FWRs5=L{zdd z0lV%mTWF>(i%?9o*XM&QKL1dS5fQ>5M2~r?uW%QZ6v%+1A2qf~a3DPH(gU~2-=h{Z zs1xRZXKZ{5Ws4_Z^+ree258h2XcTKIJdKPck#~$G7LFcwKREYKes8KZ14lzue@d3; zABGZqvAz_+tJ&53FSsEDg+iZp%5M zlFeS|3B}_be2?RIn&ZM^TVz8f>p9U8?$R2Ss&Tx> zl=v@XtJ6TeSxDZNlLA_~?H`<4bP+5da}@B0eB>`4Hsm7iM+8lv#RX_CV_Z=LFM}TR=eD%Fj7!!#p4WOZ03Py>RRs2OX(S~IL5NnHB8e4^*fUN zZE(UdvX9KF+uCZ1)c5`r6>gThY5ck6ZoFOP?Rj4jZ})^Y;pmz?)CY?X(-bN7Tkwr% zmcld*DDPFSY$yD5J|^V%y07JWIoF zv^c5nlg(A83jmGZ)eg_xYHK4gl7ME&9DSPzgtCQePMPfF&ypILyrb$7vc#x+frzTQ zx37WLX3FAiK^Ek9Vrrgc^J(vTal{K61y~>lFJpH=x@iLE1P?3DC;#~)6T6A56Q(sW zU2N?%Tiby@*{Uzto~JVtN|-brh-Foy4d1Ycfy)=ktHwoS5?g# zS20Q!QI9x$DYc`2*w$aRaxS2|sX4~#W~yV|Iec_ueoUfat;2NO%z`(k%7ZYqUJaAW z+Qh6BNA$vE^dWU`@;Mb$HR7Vcj zKgpa94y!2p+uj}q^=qcp1$S!I)|yd+PMr5O9Z9s@NWG+&{VZ_~z1T^MIkrQ}{JOI- zK_G`|8fmAk`hVe6XdsCLa-lUVqWgyvc8CYA@I;*M9PyjeR$T%+6~9L>slaNG_-Y+?C_1T?hm z^i5o*{&uyg9$UI)_4fsySj5Mo%5-v5AXE7Xy4f}h`TOacQHoE_;Je-i7tZna0h3$cy~BBcBW9l1XGwWl2F zEqNvy)UIjsw8xlY1g@FBvVneODB+Hg->6=`{Q7F`IT2{N6-sY6UwX}xtM!~=Vgdu%Gh`V}Sd1M6GIrgevp zA|uKg-k3gB;s(~?Qg8C~BmHq1{drOaNgO8cg9s+hKtlv|BveRYXEsu3#x zaZAiS?^%ed5X;YNRF})}R{vq%P z!iPkQ$hKK{`3MbLH>c#V(Am0e5fzu+p*F^Zed6wEf7<}bYktdj**GbpQeSI*qQZBJ zR6c8Rt*(zrnmr#8*c?EQCt%)||8D!4oyvlmWoGFtcRsqLWtU%IA2}Q}W&$#~t-!>y z60Na{jdX60c?l}B+-E>*dWUhwaw!*K#XWojo>{3-W0TVK`VJUkwPQA2*Gcqm+yC|| zUZ04#(0YzH%9(35HP?cV*(NBKQa;wSzK*%rdOR$m3|5hm8&ha${H1Pj=@lsswHyI6 zd|7Uxljoc!zcs!NbWbI%?fvg~8mb{k;GC*IR~adsUG^;8b@&&)i#k-T35r6V(2qL* z4ZDgz2+bh{xg5#H9S>TD&#h(u%jq#}sEA>3x)G}9iB0fn54OnbGuOiUI|h+ob4|U? z1u@jRl9DTLxE}%KH~5ZnYl)rBJ3#JXp5WyO$Y}1|@aL1Oa~R_rOlME#E#_8Z@&ng5 z)(!3yGcvLri=DzalEf|IFyo34(sUzht2sSm<%Uquw;CYgpv_yQbIv31^C}*>cxp#|+y0b+a?w<>8~OHnrnM zv7)is%fHr`Pv-HN$8EE55bem@w;>Zm*V!lywat*1;C}y&O{M4D$@jM7_EzHuUPs(< zUXhq0-c|aX@<)Ws7LBsz?-T!rV;4mPnq%x*Wt$|u?bkjjvbwFY#6ILJ%vOZ3+C()8 zuwk0=PH0b(^fi6V<;p6AIZ=x4-R&|gmbw{UXk7@xtQGH57>Lc3UEd?Zj&05StNHwW z*z}^HwIk0k$3V)U9(w(FJ_1!Qfum9v60h;}?>Jtb|Fv6{7aExV9O@GWoO($Y_bHK@ zLst(6>KO6*ZQvOW_2!R}2IWJKVGpHFKZRraCG+VqMu$L@4bVKYzq24o!lv zL@0cy_dCd$*j(EzB!GjTPj2IsXphKx-8I74*j6)lUvkul7qCqRVsudHmzr|obbY_; zi#7JtHaLF~DSC;fZ`nz;HT3$k*?aRVh4v#MjNgD#+ZxO_@*TPkcptaFFq(>fy~hNW zqCC>ocqg*OOMDj$u{x|e@LAV}vY(LUuEH}yVRsVPcFKx_{yF=`EZ@-muID~Ki@gN+ zy@HYRFs%V#64C;<0RzJy_+RVT;UNmeNNf}>5D$560v+EO0VZo8N5IPz6iyzLln65QozT79b^c}~)yM@NRE|I@;cS8Ze zlZGKDczLomW%w|oKp2r$vE~>4<6}m1!}somo;rZ9TgwcNJiP;A7{k6?qxT-uhRL=X zAF^J(v+SU17;3ZX>oTSf9cH;u$!BOLRrF$f^H=}G>|HGv1wq~ME0gOGlq~Wr&aV7P zIhs?8hUS8dV)G{_DQg9sYv0(+o1?heU$T1pL~o*yS&g2p4mO)q2tEr(GbN>WZ~-1H zGYrOJT&I3WH~cE`T14^GJtoLmxDc<{N|JV_(oJW;Yi>yB-Fm4Hq3H~aoMQ-q z1g|O6)~@EvX^h&+$oZg}w`~em@vD}U39ex~jWm2AO#+oSBv-31rrjMFW7YJ0Cy45J z?%kqph{O!58JGK#Esn;#Jt%rUV^b50u=;R0#Iz`If|yEM6d*3p?m=AYyv$$oE^~wA zo7z_7BB?7iDkg4Wu$-5F2#4IFTC@4`8scqYAk4eyA*yekT|3pc6f7l5#{?Tzei+4# zfwU-si_Un8nTM8lP=g0ItC;D!?`$f>q8<47TeN+g2`)GnqFU=hq_lz#L*P6+sC?NH zum?$mIvp|2Bg7in$}2~~Eef_ySsc{q39BM_#hzlTjM?K2G%UGQUqr6GUTPjpeRwQ@wc7u=JE@fbXv8c68)%{HJZ2p_TB3oYlNcP+A zX~VcB@A2=zMmY-mMFWh%DqQR(|Og=Lgr+Atbcq&8wFnbAQn zzU4iCUlBh>^joX&rACONMIC)uQ{hN59~P%2}4m9)A6%Ame8jGDob6 z>gbvL^KC%z(iirF9X0b>?d0Zg)~HcrLR4*>lLc#G5fGm&)X)gk<7(>3B)c_pRD+SD z-UDk#8Ju{crxyLSc-1p^Z1uR*QPR-cX+~2s*{p%`ytWJ}Kf3nMJN=IoVUQMi9&+sm zxv2ZuqEAD<{{LXFlr~TkyXVTU%A&9gmi47D*}wvO_~oRIMU@IC~Y%S|LkWY2}$ zW*u*O+L5A$Lo%=(A~Dnyl6}_4`7munU-SHb=yQz2VCT;id7WYrH2>jFtVLvJM$jMy z;V!AfVtZUV|6}PAnH`Cp9USs@59o~Qsu4}%MfDIY{_^|MsP>W~K8{#adQ2S|so%xH zZjIWb(}k zzk8f-jZRkl44XRef%<4-v%Ic%doMQe)0?%E`Wu?YuGse7H_;>4`m7a3CxFJmNNzZ? z>sH&g?zd5Y%J6c?;NyWLTz}o#sJ3lwQ$g&etKYm`B@6KfXDLgeEz3&W(+&%{1;vc4 z_Apudjh%fx;eI06@!R~qtJ%e&+CKLwR@v`5q75(haoMQC&VR+@-`!C0Kh28(Loxf_ zi!;{SlQF9#(vJ%|F%c|aU{9VGao+ZbyNMI!*Wgf9*9XD2F2sFh@XnsVNLB2hiqvR` zD&mpqdQtaLF?S)?KBbsFp3|ZxOrdR_aA;wVrc?9LW6igPoauzgsU#8Jk>b*I@^b-p z{>!O#NN&?$822H74ED4RPW$~4;WzHe{e#dZ{3LYlQrrPB^k7Xsi4QSYmw(AsO{%n0O zut3Kr#;!Sr@h1am$T^oOov%+kO-rAk=*{i|Tl<%-?rhQ10x>x&eneC1W505h^Sl#& z$-)54GE4!92$H$X{)Z2gGJakfz@C$K%Rgh425&W#Ww=TIRBcw4B^U9xh!8iQFoquM zVUE08`Id?_x{F|;h+3$ZTuy!W)a{nh3Rbt1qyIM7);6?E*IOXWGcNaDtcf;+An+Ac z*yX5m^WK{gZ%SNBKI5*2#)#TKZ-!)Yn^ZpSLNU#hjmmg{@;q zExyt^d>v}25P-ZM61>4RMbB5%WA(2g6XFPd>Ubw%53%UJ@O_N5VDXyeM~GmWno2>| z2qMXT(pcsjJ`YoDTg2>?-|@I88{DpgF+PrqQ=(t?nz<<}s)suoR=o3I8Wp@g-WObu zT+~fFcT6V{y)*GT!6Oc?bBFO*L4fz=+#jZ`-}`lZq+wl?1KV2CKKRb?^ZeVtwZo$G zJNuk_ps@6-=^riP*IMh;!;mOH?@?}RS>$ouF{U{?ZjZXt0NB*1t!ez5t-ARpvSp8l zf)BkRJ_3Q$>aPvHGGG{1TQK>eKW2Ko_JUW z0^(IHn{L^oT__`~v1pCnf6^QDc#(ZFJ3HROJLa;>=zgDC2iKGkX!iJKT=EVE*dIUC z35k7ea%zD80X1v!#&@50;rwT`Ummu0MtNV|Nt53x`TX+~`HIgvyb6!cjTFjE-(x?Hg`xiJ?Cb!1FU$JnPl4s zt1a@AT2FmSM?=?zocLH~i9sjyfZ!=1$uY^fqB)9+q^->IK*VAP_K-;~hQzKpUS{kR{Hd%<**#lUY8tWVIuw6D^5}ESZ`oLrw1HZ zi>8qwE6rit&1rI40$05iH0iNHmL5OSJySB@)%CIDQ-up>${XF!ojX7=?71&Kp&O3( z>EyRmpTA`MjREgi(xmG;nRP#g^aZe&BMf*l-5kZos*I((6|bJs(_AXK9~{jNSatfY z+H3z+%fSEx6NmN<6UBX(6Zy__ru4kDF_DNE`$h8@I+7jCOb#$zBSGhoNr2(Npe9Vi z&?C87#{dJyxP#_1FdY;h*!ZV_Ys$@Ufi=Q=cJm;^GX>f?RSja_tKK_8&bwLc3r{&8 zYdrnd_Nz;!Gch9$toE}xSR6VGlk6U}B$B;l70IM93Z6Z{2j+_nIvqyQbE? z@S+swzbYlKGr8+)v&wY9Eod`qbMvxIlk7Xz%0t{-wwXV9u2PD*9!E3YsnEjWjP%_) zmQ|cdK9S|N#S?)5&gkFmomO_11ejJ?gvuut8~Mj+m-YS962?t#CpZ06OVp9$dc;A4 z2FmXRqlsKqXLY?kx2Kr1E?pmT?y1Yh;|9TUrgm<+7UJx$rOaPtaik%~G$)l`yn~Vb z-qPXWCf+!l`Q~bQ@N`Z6(2aZiB$>w$Y&%R4(AikH@?}!X|BlXm=A8+jn@0&fLkhB1AEJ4Blav>RP2eSxUaS z!+E-!yY*xBsm1#p*F!*sq74&z!_|%*yZyr`0}H2@0e*DPJq8^$pe3jxrenNW_=pJ_ z7?8B|9!h^x?i9`X35#4kWo*JKP}%GB+qjA2+VKqj#h6%Nq56dbB~ca4+pZ~n&UsVz z+<05=k4$D>%Yxj`{?5F%x$6*aehi?SPAkQ^Pb>=-AC_@#Y6KSWd!s6nE&K{wt5pe~ zQF1<*NUKNNlAl(EW67wY`56XN+aRKcUN4 z+i-=P;;oVXo1rLSSF>NJzcumL7jot=*@_rWE!yfyt|Jbg7M32mt@KLq5IG;EMgJYE zmb<2QLJ9l7=_^>vAz{^A;t+PdT=o;_7yABoI0AUj6qF z9w#6*ZSxK18LyV9c!kyS=&AAB+v-1Q^YDMu3=WowQxXSWR|zZcjKf+40s3;A`rjX= z@orXa-f`(|bv{ggw8E17uF9QQ(n!7hqaNu!00V^Jg}t=88lX}ja4t#=9|UFS;#$<0 z?)wGPI6lLVnis4}NpJriT<`PUq6H@;v$PJuu{XQD4}fUodIHBn_nLOeYoe>3I#gj# z?PJ4Y;R%fm_dTP@sxr4c@}2HvQ`ppifC9dmjG&RrxD4@%&gtf;K2WjQ~4>6`R^02B-Czk#v!fCubwr{<^VPnlRo6Zld9|_ z+}jTb68!dMp`6=f8l#-f=d&XVdLT4r0>7_+7_Mz-*qnZypW+h_4Qlu zKLWx^ah478Jd5JRp-qmj&$h}-c_zK(Vs9Un6b*5?_w1F4wU_|tNX%QBt)JdixsQ$m z(@N!!Uts7?h+L2elIW}#HR+I|2=%)ib^2S65nGEkvdv#h8JfTiHO}#=x7c{vVNY6B z^9&tK<-{EKAWuY4zM=ZAVILl<*m*Vhmx~)N6+2$}rU96rff0xo-C~lXbJwvw5}E1S zGNmp4J0f`xt#Xi?m>E|XQKK_!y7xX_#Ne>#8O#upbdO3bEIK{ z264C~+(T`OZjwhPPd%R-*qd)xzAK)_UGOAkV9Ipw$gXhsR!(h|1ufu)V^e)?)w{iGDTGXTcLxUJSi>s_u7cp{*kNRe>DcHC<%fYCl|3DSzax zx2y4U(IqxVCo=hDY_%(i7OeJ`p=YESYlaCr?jTA1WoqPp{%ML9%M?;uCb6c@`T6Jh z&*f4nS!@0*tjMKhEjzS~ZS1H=z~Uvzj<-^e{9FdenetRkNA7-p>9!?CNppXzD)BME z^x%o#n(VOa{6K#)mh4RGK`KREIlC)Tlo$k9{g&-zh6n73G&0-2a}aO3vn{R{JsUxu z3Fs1Wyhu@}9%8Yq^(0IA%qEc>-73cZ&+`ekv{r{*qHSiM*=o#uJwNiJq~dc8<9)#K z^pjOkpT(+Pj$FrVSH(P35HbNqQpL1PM|N$DtBr|}K1eX-VY zGlIr*8GWzun{;BhR3!Ls%9$Kwi)Bc;^-ADzjv}VIHs$^$*ghSx5H+l&O}j>gjB$lN z)CgWYO&aIK6^`i`*<9*r#VyQsslDCKi>O086#-QT^)I3IR|_^q5&*Gt#kuE2I0#hP=hQi9a$A0dV>^X2Cb@9%v4j&~AM2W0T@H+65hX%=M>m$68~+ zRQP;chzr!j9)IwIty55rH7VkXuUPW`d_Mm_+?h9@o&y1R{wtwRtAT0%Au7qM$yL8K H`TqX_Li3PY literal 0 HcmV?d00001 diff --git a/samples/dash-if-reference-player/app/img/akamai_ff.png b/samples/dash-if-reference-player/app/img/akamai_ff.png deleted file mode 100644 index 246e7d1f8be65e91c4b164090187ffa2eb781c5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57832 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 ~ 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 XRopt#^VVBN00000NkvXXu0mjf04=+= diff --git a/samples/dash-if-reference-player/app/lib/angular/angular.min.js b/samples/dash-if-reference-player/app/lib/angular/angular.min.js index 2b220688df..bf50a2884e 100644 --- a/samples/dash-if-reference-player/app/lib/angular/angular.min.js +++ b/samples/dash-if-reference-player/app/lib/angular/angular.min.js @@ -1,163 +1,318 @@ /* - AngularJS v1.0.7 - (c) 2010-2012 Google, Inc. http://angularjs.org + AngularJS v1.5.8 + (c) 2010-2016 Google, Inc. http://angularjs.org License: MIT */ -(function(P,T,q){'use strict';function m(b,a,c){var d;if(b)if(H(b))for(d in b)d!="prototype"&&d!="length"&&d!="name"&&b.hasOwnProperty(d)&&a.call(c,b[d],d);else if(b.forEach&&b.forEach!==m)b.forEach(a,c);else if(!b||typeof b.length!=="number"?0:typeof b.hasOwnProperty!="function"&&typeof b.constructor!="function"||b instanceof K||ca&&b instanceof ca||wa.call(b)!=="[object Object]"||typeof b.callee==="function")for(d=0;d=0&&b.splice(c,1);return a}function U(b,a){if(oa(b)||b&&b.$evalAsync&&b.$watch)throw Error("Can't copy Window or Scope");if(a){if(b===a)throw Error("Can't copy equivalent objects or arrays");if(E(b))for(var c=a.length=0;c2?ha.call(arguments,2):[];return H(a)&&!(a instanceof RegExp)?c.length?function(){return arguments.length?a.apply(b,c.concat(ha.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}:a}function ic(b,a){var c=a;/^\$+/.test(b)?c=q:oa(a)?c="$WINDOW":a&&T===a?c="$DOCUMENT":a&&a.$evalAsync&&a.$watch&&(c="$SCOPE");return c}function da(b,a){return JSON.stringify(b, -ic,a?" ":null)}function pb(b){return B(b)?JSON.parse(b):b}function Ua(b){b&&b.length!==0?(b=z(""+b),b=!(b=="f"||b=="0"||b=="false"||b=="no"||b=="n"||b=="[]")):b=!1;return b}function pa(b){b=u(b).clone();try{b.html("")}catch(a){}var c=u("
").append(b).html();try{return b[0].nodeType===3?z(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+z(b)})}catch(d){return z(c)}}function Va(b){var a={},c,d;m((b||"").split("&"),function(b){b&&(c=b.split("="),d=decodeURIComponent(c[0]), -a[d]=y(c[1])?decodeURIComponent(c[1]):!0)});return a}function qb(b){var a=[];m(b,function(b,d){a.push(Wa(d,!0)+(b===!0?"":"="+Wa(b,!0)))});return a.length?a.join("&"):""}function Xa(b){return Wa(b,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Wa(b,a){return encodeURIComponent(b).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,a?"%20":"+")}function jc(b,a){function c(a){a&&d.push(a)}var d=[b],e,g,h=["ng:app","ng-app","x-ng-app", -"data-ng-app"],f=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/;m(h,function(a){h[a]=!0;c(T.getElementById(a));a=a.replace(":","\\:");b.querySelectorAll&&(m(b.querySelectorAll("."+a),c),m(b.querySelectorAll("."+a+"\\:"),c),m(b.querySelectorAll("["+a+"]"),c))});m(d,function(a){if(!e){var b=f.exec(" "+a.className+" ");b?(e=a,g=(b[2]||"").replace(/\s+/g,",")):m(a.attributes,function(b){if(!e&&h[b.name])e=a,g=b.value})}});e&&a(e,g?[g]:[])}function rb(b,a){var c=function(){b=u(b);a=a||[];a.unshift(["$provide",function(a){a.value("$rootElement", -b)}]);a.unshift("ng");var c=sb(a);c.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},d=/^NG_DEFER_BOOTSTRAP!/;if(P&&!d.test(P.name))return c();P.name=P.name.replace(d,"");Ya.resumeBootstrap=function(b){m(b,function(b){a.push(b)});c()}}function Za(b,a){a=a||"_";return b.replace(kc,function(b,d){return(d?a:"")+b.toLowerCase()})}function $a(b,a,c){if(!b)throw Error("Argument '"+(a||"?")+"' is "+(c||"required")); -return b}function qa(b,a,c){c&&E(b)&&(b=b[b.length-1]);$a(H(b),a,"not a function, got "+(b&&typeof b=="object"?b.constructor.name||"Object":typeof b));return b}function lc(b){function a(a,b,e){return a[b]||(a[b]=e())}return a(a(b,"angular",Object),"module",function(){var b={};return function(d,e,g){e&&b.hasOwnProperty(d)&&(b[d]=null);return a(b,d,function(){function a(c,d,e){return function(){b[e||"push"]([c,d,arguments]);return k}}if(!e)throw Error("No module: "+d);var b=[],c=[],j=a("$injector", -"invoke"),k={_invokeQueue:b,_runBlocks:c,requires:e,name:d,provider:a("$provide","provider"),factory:a("$provide","factory"),service:a("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),filter:a("$filterProvider","register"),controller:a("$controllerProvider","register"),directive:a("$compileProvider","directive"),config:j,run:function(a){c.push(a);return this}};g&&j(g);return k})}})}function tb(b){return b.replace(mc,function(a,b,d,e){return e?d.toUpperCase(): -d}).replace(nc,"Moz$1")}function ab(b,a){function c(){var e;for(var b=[this],c=a,h,f,i,j,k,l;b.length;){h=b.shift();f=0;for(i=h.length;f 
"+b;a.removeChild(a.firstChild);bb(this,a.childNodes);this.remove()}else bb(this,b)}function cb(b){return b.cloneNode(!0)}function ra(b){ub(b);for(var a=0,b=b.childNodes||[];a-1}function xb(b,a){a&&m(a.split(" "),function(a){b.className=Q((" "+b.className+" ").replace(/[\n\t]/g," ").replace(" "+Q(a)+" "," "))})} -function yb(b,a){a&&m(a.split(" "),function(a){if(!Ca(b,a))b.className=Q(b.className+" "+Q(a))})}function bb(b,a){if(a)for(var a=!a.nodeName&&y(a.length)&&!oa(a)?a:[a],c=0;c4096&&c.warn("Cookie '"+a+"' possibly not set or overflowed because it was too large ("+d+" > 4096 bytes)!")}else{if(i.cookie!==$){$=i.cookie;d=$.split("; ");r={};for(f=0;f0&&(a=unescape(e.substring(0,j)),r[a]===q&&(r[a]=unescape(e.substring(j+1))))}return r}};f.defer=function(a,b){var c; -p++;c=l(function(){delete o[c];e(a)},b||0);o[c]=!0;return c};f.defer.cancel=function(a){return o[a]?(delete o[a],n(a),e(C),!0):!1}}function wc(){this.$get=["$window","$log","$sniffer","$document",function(b,a,c,d){return new vc(b,d,a,c)}]}function xc(){this.$get=function(){function b(b,d){function e(a){if(a!=l){if(n){if(n==a)n=a.n}else n=a;g(a.n,a.p);g(a,l);l=a;l.n=null}}function g(a,b){if(a!=b){if(a)a.p=b;if(b)b.n=a}}if(b in a)throw Error("cacheId "+b+" taken");var h=0,f=v({},d,{id:b}),i={},j=d&& -d.capacity||Number.MAX_VALUE,k={},l=null,n=null;return a[b]={put:function(a,b){var c=k[a]||(k[a]={key:a});e(c);w(b)||(a in i||h++,i[a]=b,h>j&&this.remove(n.key))},get:function(a){var b=k[a];if(b)return e(b),i[a]},remove:function(a){var b=k[a];if(b){if(b==l)l=b.p;if(b==n)n=b.n;g(b.n,b.p);delete k[a];delete i[a];h--}},removeAll:function(){i={};h=0;k={};l=n=null},destroy:function(){k=f=i=null;delete a[b]},info:function(){return v({},f,{size:h})}}}var a={};b.info=function(){var b={};m(a,function(a,e){b[e]= -a.info()});return b};b.get=function(b){return a[b]};return b}}function yc(){this.$get=["$cacheFactory",function(b){return b("templates")}]}function Db(b){var a={},c="Directive",d=/^\s*directive\:\s*([\d\w\-_]+)\s+(.*)$/,e=/(([\d\w\-_]+)(?:\:([^;]+))?;?)/,g="Template must have exactly one root element. was: ",h=/^\s*(https?|ftp|mailto|file):/;this.directive=function i(d,e){B(d)?($a(e,"directive"),a.hasOwnProperty(d)||(a[d]=[],b.factory(d+c,["$injector","$exceptionHandler",function(b,c){var e=[];m(a[d], -function(a){try{var g=b.invoke(a);if(H(g))g={compile:I(g)};else if(!g.compile&&g.link)g.compile=I(g.link);g.priority=g.priority||0;g.name=g.name||d;g.require=g.require||g.controller&&g.name;g.restrict=g.restrict||"A";e.push(g)}catch(h){c(h)}});return e}])),a[d].push(e)):m(d,nb(i));return this};this.urlSanitizationWhitelist=function(a){return y(a)?(h=a,this):h};this.$get=["$injector","$interpolate","$exceptionHandler","$http","$templateCache","$parse","$controller","$rootScope","$document",function(b, -j,k,l,n,o,p,s,t){function x(a,b,c){a instanceof u||(a=u(a));m(a,function(b,c){b.nodeType==3&&b.nodeValue.match(/\S+/)&&(a[c]=u(b).wrap("").parent()[0])});var d=A(a,b,a,c);return function(b,c){$a(b,"scope");for(var e=c?ua.clone.call(a):a,j=0,g=e.length;jr.priority)break;if(Y=r.scope)ta("isolated scope",J,r,D),L(Y)&&(M(D,"ng-isolate-scope"),J=r),M(D,"ng-scope"),s=s||r;F=r.name;if(Y=r.controller)y=y||{},ta("'"+F+"' controller",y[F],r,D),y[F]=r;if(Y=r.transclude)ta("transclusion",ja,r,D),ja=r,l=r.priority,Y=="element"?(W=u(b),D=c.$$element=u(T.createComment(" "+ -F+": "+c[F]+" ")),b=D[0],C(e,u(W[0]),b),V=x(W,d,l)):(W=u(cb(b)).contents(),D.html(""),V=x(W,d));if(Y=r.template)if(ta("template",A,r,D),A=r,Y=Fb(Y),r.replace){W=u("
"+Q(Y)+"
").contents();b=W[0];if(W.length!=1||b.nodeType!==1)throw Error(g+Y);C(e,D,b);F={$attr:{}};a=a.concat(N(b,a.splice(v+1,a.length-(v+1)),F));$(c,F);z=a.length}else D.html(Y);if(r.templateUrl)ta("template",A,r,D),A=r,i=R(a.splice(v,a.length-v),i,D,c,e,r.replace,V),z=a.length;else if(r.compile)try{w=r.compile(D,c,V),H(w)? -j(null,w):w&&j(w.pre,w.post)}catch(G){k(G,pa(D))}if(r.terminal)i.terminal=!0,l=Math.max(l,r.priority)}i.scope=s&&s.scope;i.transclude=ja&&V;return i}function r(d,e,g,j){var h=!1;if(a.hasOwnProperty(e))for(var o,e=b.get(e+c),l=0,p=e.length;lo.priority)&&o.restrict.indexOf(g)!=-1)d.push(o),h=!0}catch(n){k(n)}return h}function $(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;m(a,function(d,e){e.charAt(0)!="$"&&(b[e]&&(d+=(e==="style"?";":" ")+b[e]),a.$set(e,d,!0,c[e]))});m(b, -function(b,g){g=="class"?(M(e,b),a["class"]=(a["class"]?a["class"]+" ":"")+b):g=="style"?e.attr("style",e.attr("style")+";"+b):g.charAt(0)!="$"&&!a.hasOwnProperty(g)&&(a[g]=b,d[g]=c[g])})}function R(a,b,c,d,e,j,h){var i=[],k,o,p=c[0],t=a.shift(),s=v({},t,{controller:null,templateUrl:null,transclude:null,scope:null});c.html("");l.get(t.templateUrl,{cache:n}).success(function(l){var n,t,l=Fb(l);if(j){t=u("
"+Q(l)+"
").contents();n=t[0];if(t.length!=1||n.nodeType!==1)throw Error(g+l);l={$attr:{}}; -C(e,c,n);N(n,a,l);$(d,l)}else n=p,c.html(l);a.unshift(s);k=J(a,n,d,h);for(o=A(c[0].childNodes,h);i.length;){var r=i.pop(),l=i.pop();t=i.pop();var ia=i.pop(),D=n;t!==p&&(D=cb(n),C(l,u(t),D));k(function(){b(o,ia,D,e,r)},ia,D,e,r)}i=null}).error(function(a,b,c,d){throw Error("Failed to load template: "+d.url);});return function(a,c,d,e,g){i?(i.push(c),i.push(d),i.push(e),i.push(g)):k(function(){b(o,c,d,e,g)},c,d,e,g)}}function F(a,b){return b.priority-a.priority}function ta(a,b,c,d){if(b)throw Error("Multiple directives ["+ -b.name+", "+c.name+"] asking for "+a+" on: "+pa(d));}function y(a,b){var c=j(b,!0);c&&a.push({priority:0,compile:I(function(a,b){var d=b.parent(),e=d.data("$binding")||[];e.push(c);M(d.data("$binding",e),"ng-binding");a.$watch(c,function(a){b[0].nodeValue=a})})})}function V(a,b,c,d){var e=j(c,!0);e&&b.push({priority:100,compile:I(function(a,b,c){b=c.$$observers||(c.$$observers={});d==="class"&&(e=j(c[d],!0));c[d]=q;(b[d]||(b[d]=[])).$$inter=!0;(c.$$observers&&c.$$observers[d].$$scope||a).$watch(e, -function(a){c.$set(d,a)})})})}function C(a,b,c){var d=b[0],e=d.parentNode,g,j;if(a){g=0;for(j=a.length;g -0){var e=R[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function f(b,c,d,f){return(b=h(b,c,d,f))?(a&&!b.json&&e("is not valid json",b),R.shift(),b):!1}function i(a){f(a)||e("is unexpected, expecting ["+a+"]",h())}function j(a,b){return function(c,d){return a(c,d,b)}}function k(a,b,c){return function(d,e){return b(d,e,a,c)}}function l(){for(var a=[];;)if(R.length>0&&!h("}",")",";","]")&&a.push(w()),!f(";"))return a.length==1?a[0]:function(b,c){for(var d,e=0;e","<=",">="))a=k(a,b.fn,t());return a}function x(){for(var a=m(),b;b=f("*","/","%");)a=k(a,b.fn,m());return a}function m(){var a;return f("+")?A():(a=f("-"))?k(r,a.fn,m()):(a=f("!"))?j(a.fn,m()):A()}function A(){var a;if(f("("))a=w(),i(")");else if(f("["))a=N();else if(f("{"))a=J();else{var b=f();(a=b.fn)||e("not a primary expression",b)}for(var c;b=f("(","[",".");)b.text==="("?(a=y(a,c),c=null):b.text==="["?(c=a,a=V(a)):b.text==="."?(c=a,a=u(a)):e("IMPOSSIBLE");return a}function N(){var a= -[];if(g().text!="]"){do a.push(F());while(f(","))}i("]");return function(b,c){for(var d=[],e=0;e1;d++){var e=a.shift(),g=b[e];g||(g={},b[e]=g);b=g}return b[a.shift()]= -c}function gb(b,a,c){if(!a)return b;for(var a=a.split("."),d,e=b,g=a.length,h=0;h7),hasEvent:function(c){if(c=="input"&&Z==9)return!1;if(w(a[c])){var e=b.document.createElement("div");a[c]="on"+c in e}return a[c]},csp:!1}}]}function Vc(){this.$get=I(P)}function Ob(b){var a={},c,d,e;if(!b)return a;m(b.split("\n"),function(b){e=b.indexOf(":");c=z(Q(b.substr(0, -e)));d=Q(b.substr(e+1));c&&(a[c]?a[c]+=", "+d:a[c]=d)});return a}function Pb(b){var a=L(b)?b:q;return function(c){a||(a=Ob(b));return c?a[z(c)]||null:a}}function Qb(b,a,c){if(H(c))return c(b,a);m(c,function(c){b=c(b,a)});return b}function Wc(){var b=/^\s*(\[|\{[^\{])/,a=/[\}\]]\s*$/,c=/^\)\]\}',?\n/,d=this.defaults={transformResponse:[function(d){B(d)&&(d=d.replace(c,""),b.test(d)&&a.test(d)&&(d=pb(d,!0)));return d}],transformRequest:[function(a){return L(a)&&wa.apply(a)!=="[object File]"?da(a):a}], -headers:{common:{Accept:"application/json, text/plain, */*","X-Requested-With":"XMLHttpRequest"},post:{"Content-Type":"application/json;charset=utf-8"},put:{"Content-Type":"application/json;charset=utf-8"}}},e=this.responseInterceptors=[];this.$get=["$httpBackend","$browser","$cacheFactory","$rootScope","$q","$injector",function(a,b,c,i,j,k){function l(a){function c(a){var b=v({},a,{data:Qb(a.data,a.headers,f)});return 200<=a.status&&a.status<300?b:j.reject(b)}a.method=la(a.method);var e=a.transformRequest|| -d.transformRequest,f=a.transformResponse||d.transformResponse,g=d.headers,g=v({"X-XSRF-TOKEN":b.cookies()["XSRF-TOKEN"]},g.common,g[z(a.method)],a.headers),e=Qb(a.data,Pb(g),e),i;w(a.data)&&delete g["Content-Type"];i=n(a,e,g);i=i.then(c,c);m(s,function(a){i=a(i)});i.success=function(b){i.then(function(c){b(c.data,c.status,c.headers,a)});return i};i.error=function(b){i.then(null,function(c){b(c.data,c.status,c.headers,a)});return i};return i}function n(b,c,d){function e(a,b,c){m&&(200<=a&&a<300?m.put(q, -[a,b,Ob(c)]):m.remove(q));f(b,a,c);i.$apply()}function f(a,c,d){c=Math.max(c,0);(200<=c&&c<300?k.resolve:k.reject)({data:a,status:c,headers:Pb(d),config:b})}function h(){var a=za(l.pendingRequests,b);a!==-1&&l.pendingRequests.splice(a,1)}var k=j.defer(),n=k.promise,m,s,q=o(b.url,b.params);l.pendingRequests.push(b);n.then(h,h);b.cache&&b.method=="GET"&&(m=L(b.cache)?b.cache:p);if(m)if(s=m.get(q))if(s.then)return s.then(h,h),s;else E(s)?f(s[1],s[0],U(s[2])):f(s,200,{});else m.put(q,n);s||a(b.method, -q,c,e,d,b.timeout,b.withCredentials);return n}function o(a,b){if(!b)return a;var c=[];fc(b,function(a,b){a==null||a==q||(L(a)&&(a=da(a)),c.push(encodeURIComponent(b)+"="+encodeURIComponent(a)))});return a+(a.indexOf("?")==-1?"?":"&")+c.join("&")}var p=c("$http"),s=[];m(e,function(a){s.push(B(a)?k.get(a):k.invoke(a))});l.pendingRequests=[];(function(a){m(arguments,function(a){l[a]=function(b,c){return l(v(c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){m(arguments,function(a){l[a]= -function(b,c,d){return l(v(d||{},{method:a,url:b,data:c}))}})})("post","put");l.defaults=d;return l}]}function Xc(){this.$get=["$browser","$window","$document",function(b,a,c){return Yc(b,Zc,b.defer,a.angular.callbacks,c[0],a.location.protocol.replace(":",""))}]}function Yc(b,a,c,d,e,g){function h(a,b){var c=e.createElement("script"),d=function(){e.body.removeChild(c);b&&b()};c.type="text/javascript";c.src=a;Z?c.onreadystatechange=function(){/loaded|complete/.test(c.readyState)&&d()}:c.onload=c.onerror= -d;e.body.appendChild(c)}return function(e,i,j,k,l,n,o){function p(a,c,d,e){c=(i.match(Hb)||["",g])[1]=="file"?d?200:404:c;a(c==1223?204:c,d,e);b.$$completeOutstandingRequest(C)}b.$$incOutstandingRequestCount();i=i||b.url();if(z(e)=="jsonp"){var s="_"+(d.counter++).toString(36);d[s]=function(a){d[s].data=a};h(i.replace("JSON_CALLBACK","angular.callbacks."+s),function(){d[s].data?p(k,200,d[s].data):p(k,-2);delete d[s]})}else{var t=new a;t.open(e,i,!0);m(l,function(a,b){a&&t.setRequestHeader(b,a)}); -var q;t.onreadystatechange=function(){if(t.readyState==4){var a=t.getAllResponseHeaders(),b=["Cache-Control","Content-Language","Content-Type","Expires","Last-Modified","Pragma"];a||(a="",m(b,function(b){var c=t.getResponseHeader(b);c&&(a+=b+": "+c+"\n")}));p(k,q||t.status,t.responseText,a)}};if(o)t.withCredentials=!0;t.send(j||"");n>0&&c(function(){q=-1;t.abort()},n)}}}function $c(){this.$get=function(){return{id:"en-us",NUMBER_FORMATS:{DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{minInt:1,minFrac:0, -maxFrac:3,posPre:"",posSuf:"",negPre:"-",negSuf:"",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:"\u00a4",posSuf:"",negPre:"(\u00a4",negSuf:")",gSize:3,lgSize:3}],CURRENCY_SYM:"$"},DATETIME_FORMATS:{MONTH:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),SHORTMONTH:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),DAY:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),SHORTDAY:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","), -AMPMS:["AM","PM"],medium:"MMM d, y h:mm:ss a","short":"M/d/yy h:mm a",fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",mediumDate:"MMM d, y",shortDate:"M/d/yy",mediumTime:"h:mm:ss a",shortTime:"h:mm a"},pluralCat:function(b){return b===1?"one":"other"}}}}function ad(){this.$get=["$rootScope","$browser","$q","$exceptionHandler",function(b,a,c,d){function e(e,f,i){var j=c.defer(),k=j.promise,l=y(i)&&!i,f=a.defer(function(){try{j.resolve(e())}catch(a){j.reject(a),d(a)}l||b.$apply()},f),i=function(){delete g[k.$$timeoutId]}; -k.$$timeoutId=f;g[f]=j;k.then(i,i);return k}var g={};e.cancel=function(b){return b&&b.$$timeoutId in g?(g[b.$$timeoutId].reject("canceled"),a.defer.cancel(b.$$timeoutId)):!1};return e}]}function Rb(b){function a(a,e){return b.factory(a+c,e)}var c="Filter";this.register=a;this.$get=["$injector",function(a){return function(b){return a.get(b+c)}}];a("currency",Sb);a("date",Tb);a("filter",bd);a("json",cd);a("limitTo",dd);a("lowercase",ed);a("number",Ub);a("orderBy",Vb);a("uppercase",fd)}function bd(){return function(b, -a){if(!E(b))return b;var c=[];c.check=function(a){for(var b=0;b-1;case "object":for(var c in a)if(c.charAt(0)!=="$"&&d(a[c],b))return!0;return!1;case "array":for(c=0;ce+1?h="0":(f=h,j=!0)}if(!j){h=(h.split(Xb)[1]||"").length;w(e)&&(e=Math.min(Math.max(a.minFrac,h),a.maxFrac));var h=Math.pow(10,e),b=Math.round(b*h)/h,b=(""+b).split(Xb),h=b[0],b=b[1]||"",j=0,k=a.lgSize, -l=a.gSize;if(h.length>=k+l)for(var j=h.length-k,n=0;n0||e> --c)e+=c;e===0&&c==-12&&(e=12);return jb(e,a,d)}}function Ja(b,a){return function(c,d){var e=c["get"+b](),g=la(a?"SHORT"+b:b);return d[g][e]}}function Tb(b){function a(a){var b;if(b=a.match(c)){var a=new Date(0),g=0,h=0;b[9]&&(g=G(b[9]+b[10]),h=G(b[9]+b[11]));a.setUTCFullYear(G(b[1]),G(b[2])-1,G(b[3]));a.setUTCHours(G(b[4]||0)-g,G(b[5]||0)-h,G(b[6]||0),G(b[7]||0))}return a}var c=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c, -e){var g="",h=[],f,i,e=e||"mediumDate",e=b.DATETIME_FORMATS[e]||e;B(c)&&(c=gd.test(c)?G(c):a(c));Qa(c)&&(c=new Date(c));if(!na(c))return c;for(;e;)(i=hd.exec(e))?(h=h.concat(ha.call(i,1)),e=h.pop()):(h.push(e),e=null);m(h,function(a){f=id[a];g+=f?f(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function cd(){return function(b){return da(b,!0)}}function dd(){return function(b,a){if(!(b instanceof Array))return b;var a=G(a),c=[],d,e;if(!b||!(b instanceof Array))return c; -a>b.length?a=b.length:a<-b.length&&(a=-b.length);a>0?(d=0,e=a):(d=b.length+a,e=b.length);for(;dn?(d.$setValidity("maxlength",!1),q):(d.$setValidity("maxlength",!0),a)};d.$parsers.push(c);d.$formatters.push(c)}}function kb(b,a){b="ngClass"+b;return S(function(c,d,e){function g(b){if(a===!0||c.$index%2===a)i&&!fa(b,i)&&h(i),f(b);i=U(b)}function h(a){L(a)&& -!E(a)&&(a=Ra(a,function(a,b){if(a)return b}));d.removeClass(E(a)?a.join(" "):a)}function f(a){L(a)&&!E(a)&&(a=Ra(a,function(a,b){if(a)return b}));a&&d.addClass(E(a)?a.join(" "):a)}var i=q;c.$watch(e[b],g,!0);e.$observe("class",function(){var a=c.$eval(e[b]);g(a,a)});b!=="ngClass"&&c.$watch("$index",function(d,g){var i=d&1;i!==g&1&&(i===a?f(c.$eval(e[b])):h(c.$eval(e[b])))})})}var z=function(b){return B(b)?b.toLowerCase():b},la=function(b){return B(b)?b.toUpperCase():b},Z=G((/msie (\d+)/.exec(z(navigator.userAgent))|| -[])[1]),u,ca,ha=[].slice,Pa=[].push,wa=Object.prototype.toString,Ya=P.angular||(P.angular={}),sa,fb,aa=["0","0","0"];C.$inject=[];ma.$inject=[];fb=Z<9?function(b){b=b.nodeName?b:b[0];return b.scopeName&&b.scopeName!="HTML"?la(b.scopeName+":"+b.nodeName):b.nodeName}:function(b){return b.nodeName?b.nodeName:b[0].nodeName};var kc=/[A-Z]/g,jd={full:"1.0.7",major:1,minor:0,dot:7,codeName:"monochromatic-rainbow"},Ba=K.cache={},Aa=K.expando="ng-"+(new Date).getTime(),oc=1,$b=P.document.addEventListener? -function(b,a,c){b.addEventListener(a,c,!1)}:function(b,a,c){b.attachEvent("on"+a,c)},db=P.document.removeEventListener?function(b,a,c){b.removeEventListener(a,c,!1)}:function(b,a,c){b.detachEvent("on"+a,c)},mc=/([\:\-\_]+(.))/g,nc=/^moz([A-Z])/,ua=K.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;this.bind("DOMContentLoaded",a);K(P).bind("load",a)},toString:function(){var b=[];m(this,function(a){b.push(""+a)});return"["+b.join(", ")+"]"},eq:function(b){return b>=0?u(this[b]):u(this[this.length+ -b])},length:0,push:Pa,sort:[].sort,splice:[].splice},Ea={};m("multiple,selected,checked,disabled,readOnly,required".split(","),function(b){Ea[z(b)]=b});var Bb={};m("input,select,option,textarea,button,form".split(","),function(b){Bb[la(b)]=!0});m({data:wb,inheritedData:Da,scope:function(b){return Da(b,"$scope")},controller:zb,injector:function(b){return Da(b,"$injector")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:Ca,css:function(b,a,c){a=tb(a);if(y(c))b.style[a]=c;else{var d;Z<=8&&(d= -b.currentStyle&&b.currentStyle[a],d===""&&(d="auto"));d=d||b.style[a];Z<=8&&(d=d===""?q:d);return d}},attr:function(b,a,c){var d=z(a);if(Ea[d])if(y(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||C).specified?d:q;else if(y(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),b===null?q:b},prop:function(b,a,c){if(y(c))b[a]=c;else return b[a]},text:v(Z<9?function(b,a){if(b.nodeType==1){if(w(a))return b.innerText; -b.innerText=a}else{if(w(a))return b.nodeValue;b.nodeValue=a}}:function(b,a){if(w(a))return b.textContent;b.textContent=a},{$dv:""}),val:function(b,a){if(w(a))return b.value;b.value=a},html:function(b,a){if(w(a))return b.innerHTML;for(var c=0,d=b.childNodes;c":function(a,c,d,e){return d(a,c)>e(a,c)},"<=":function(a,c,d,e){return d(a,c)<=e(a,c)},">=":function(a,c,d,e){return d(a,c)>=e(a,c)},"&&":function(a,c,d,e){return d(a,c)&&e(a,c)},"||":function(a,c,d,e){return d(a,c)||e(a,c)},"&":function(a,c,d,e){return d(a,c)&e(a,c)},"|":function(a,c,d,e){return e(a,c)(a,c,d(a,c))},"!":function(a,c,d){return!d(a,c)}},Mc={n:"\n",f:"\u000c",r:"\r",t:"\t",v:"\u000b","'":"'",'"':'"'},ib={},Zc=P.XMLHttpRequest||function(){try{return new ActiveXObject("Msxml2.XMLHTTP.6.0")}catch(a){}try{return new ActiveXObject("Msxml2.XMLHTTP.3.0")}catch(c){}try{return new ActiveXObject("Msxml2.XMLHTTP")}catch(d){}throw Error("This browser does not support XMLHttpRequest."); -};Rb.$inject=["$provide"];Sb.$inject=["$locale"];Ub.$inject=["$locale"];var Xb=".",id={yyyy:O("FullYear",4),yy:O("FullYear",2,0,!0),y:O("FullYear",1),MMMM:Ja("Month"),MMM:Ja("Month",!0),MM:O("Month",2,1),M:O("Month",1,1),dd:O("Date",2),d:O("Date",1),HH:O("Hours",2),H:O("Hours",1),hh:O("Hours",2,-12),h:O("Hours",1,-12),mm:O("Minutes",2),m:O("Minutes",1),ss:O("Seconds",2),s:O("Seconds",1),EEEE:Ja("Day"),EEE:Ja("Day",!0),a:function(a,c){return a.getHours()<12?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){var a= --1*a.getTimezoneOffset(),c=a>=0?"+":"";c+=jb(Math[a>0?"floor":"ceil"](a/60),2)+jb(Math.abs(a%60),2);return c}},hd=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,gd=/^\d+$/;Tb.$inject=["$locale"];var ed=I(z),fd=I(la);Vb.$inject=["$parse"];var kd=I({restrict:"E",compile:function(a,c){Z<=8&&(!c.href&&!c.name&&c.$set("href",""),a.append(T.createComment("IE fix")));return function(a,c){c.bind("click",function(a){c.attr("href")||a.preventDefault()})}}}),lb={};m(Ea,function(a, -c){var d=ea("ng-"+c);lb[d]=function(){return{priority:100,compile:function(){return function(a,g,h){a.$watch(h[d],function(a){h.$set(c,!!a)})}}}}});m(["src","href"],function(a){var c=ea("ng-"+a);lb[c]=function(){return{priority:99,link:function(d,e,g){g.$observe(c,function(c){c&&(g.$set(a,c),Z&&e.prop(a,g[a]))})}}}});var Ma={$addControl:C,$removeControl:C,$setValidity:C,$setDirty:C};Yb.$inject=["$element","$attrs","$scope"];var Pa=function(a){return["$timeout",function(c){var d={name:"form",restrict:"E", -controller:Yb,compile:function(){return{pre:function(a,d,h,f){if(!h.action){var i=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1};$b(d[0],"submit",i);d.bind("$destroy",function(){c(function(){db(d[0],"submit",i)},0,!1)})}var j=d.parent().controller("form"),k=h.name||h.ngForm;k&&(a[k]=f);j&&d.bind("$destroy",function(){j.$removeControl(f);k&&(a[k]=q);v(f,Ma)})}}}};return a?v(U(d),{restrict:"EAC"}):d}]},ld=Pa(),md=Pa(!0),nd=/^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/, -od=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/,pd=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))\s*$/,bc={text:Oa,number:function(a,c,d,e,g,h){Oa(a,c,d,e,g,h);e.$parsers.push(function(a){var c=X(a);return c||pd.test(a)?(e.$setValidity("number",!0),a===""?null:c?a:parseFloat(a)):(e.$setValidity("number",!1),q)});e.$formatters.push(function(a){return X(a)?"":""+a});if(d.min){var f=parseFloat(d.min),a=function(a){return!X(a)&&ai?(e.$setValidity("max",!1),q):(e.$setValidity("max",!0),a)};e.$parsers.push(d);e.$formatters.push(d)}e.$formatters.push(function(a){return X(a)||Qa(a)?(e.$setValidity("number",!0),a):(e.$setValidity("number",!1),q)})},url:function(a,c,d,e,g,h){Oa(a,c,d,e,g,h);a=function(a){return X(a)||nd.test(a)?(e.$setValidity("url",!0),a):(e.$setValidity("url",!1),q)};e.$formatters.push(a);e.$parsers.push(a)},email:function(a, -c,d,e,g,h){Oa(a,c,d,e,g,h);a=function(a){return X(a)||od.test(a)?(e.$setValidity("email",!0),a):(e.$setValidity("email",!1),q)};e.$formatters.push(a);e.$parsers.push(a)},radio:function(a,c,d,e){w(d.name)&&c.attr("name",xa());c.bind("click",function(){c[0].checked&&a.$apply(function(){e.$setViewValue(d.value)})});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe("value",e.$render)},checkbox:function(a,c,d,e){var g=d.ngTrueValue,h=d.ngFalseValue;B(g)||(g=!0);B(h)||(h=!1);c.bind("click", -function(){a.$apply(function(){e.$setViewValue(c[0].checked)})});e.$render=function(){c[0].checked=e.$viewValue};e.$formatters.push(function(a){return a===g});e.$parsers.push(function(a){return a?g:h})},hidden:C,button:C,submit:C,reset:C},cc=["$browser","$sniffer",function(a,c){return{restrict:"E",require:"?ngModel",link:function(d,e,g,h){h&&(bc[z(g.type)]||bc.text)(d,e,g,h,c,a)}}}],La="ng-valid",Ka="ng-invalid",Na="ng-pristine",Zb="ng-dirty",qd=["$scope","$exceptionHandler","$attrs","$element","$parse", -function(a,c,d,e,g){function h(a,c){c=c?"-"+Za(c,"-"):"";e.removeClass((a?Ka:La)+c).addClass((a?La:Ka)+c)}this.$modelValue=this.$viewValue=Number.NaN;this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$name=d.name;var f=g(d.ngModel),i=f.assign;if(!i)throw Error(Eb+d.ngModel+" ("+pa(e)+")");this.$render=C;var j=e.inheritedData("$formController")||Ma,k=0,l=this.$error={};e.addClass(Na);h(!0);this.$setValidity=function(a, -c){if(l[a]!==!c){if(c){if(l[a]&&k--,!k)h(!0),this.$valid=!0,this.$invalid=!1}else h(!1),this.$invalid=!0,this.$valid=!1,k++;l[a]=!c;h(c,a);j.$setValidity(a,c,this)}};this.$setViewValue=function(d){this.$viewValue=d;if(this.$pristine)this.$dirty=!0,this.$pristine=!1,e.removeClass(Na).addClass(Zb),j.$setDirty();m(this.$parsers,function(a){d=a(d)});if(this.$modelValue!==d)this.$modelValue=d,i(a,d),m(this.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}})};var n=this;a.$watch(function(){var c= -f(a);if(n.$modelValue!==c){var d=n.$formatters,e=d.length;for(n.$modelValue=c;e--;)c=d[e](c);if(n.$viewValue!==c)n.$viewValue=c,n.$render()}})}],rd=function(){return{require:["ngModel","^?form"],controller:qd,link:function(a,c,d,e){var g=e[0],h=e[1]||Ma;h.$addControl(g);c.bind("$destroy",function(){h.$removeControl(g)})}}},sd=I({require:"ngModel",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),dc=function(){return{require:"?ngModel",link:function(a,c,d,e){if(e){d.required= -!0;var g=function(a){if(d.required&&(X(a)||a===!1))e.$setValidity("required",!1);else return e.$setValidity("required",!0),a};e.$formatters.push(g);e.$parsers.unshift(g);d.$observe("required",function(){g(e.$viewValue)})}}}},td=function(){return{require:"ngModel",link:function(a,c,d,e){var g=(a=/\/(.*)\//.exec(d.ngList))&&RegExp(a[1])||d.ngList||",";e.$parsers.push(function(a){var c=[];a&&m(a.split(g),function(a){a&&c.push(Q(a))});return c});e.$formatters.push(function(a){return E(a)?a.join(", "): -q})}}},ud=/^(true|false|\d+)$/,vd=function(){return{priority:100,compile:function(a,c){return ud.test(c.ngValue)?function(a,c,g){g.$set("value",a.$eval(g.ngValue))}:function(a,c,g){a.$watch(g.ngValue,function(a){g.$set("value",a,!1)})}}}},wd=S(function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBind);a.$watch(d.ngBind,function(a){c.text(a==q?"":a)})}),xd=["$interpolate",function(a){return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate));d.addClass("ng-binding").data("$binding",c);e.$observe("ngBindTemplate", -function(a){d.text(a)})}}],yd=[function(){return function(a,c,d){c.addClass("ng-binding").data("$binding",d.ngBindHtmlUnsafe);a.$watch(d.ngBindHtmlUnsafe,function(a){c.html(a||"")})}}],zd=kb("",!0),Ad=kb("Odd",0),Bd=kb("Even",1),Cd=S({compile:function(a,c){c.$set("ngCloak",q);a.removeClass("ng-cloak")}}),Dd=[function(){return{scope:!0,controller:"@"}}],Ed=["$sniffer",function(a){return{priority:1E3,compile:function(){a.csp=!0}}}],ec={};m("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave".split(" "), -function(a){var c=ea("ng-"+a);ec[c]=["$parse",function(d){return function(e,g,h){var f=d(h[c]);g.bind(z(a),function(a){e.$apply(function(){f(e,{$event:a})})})}}]});var Fd=S(function(a,c,d){c.bind("submit",function(){a.$apply(d.ngSubmit)})}),Gd=["$http","$templateCache","$anchorScroll","$compile",function(a,c,d,e){return{restrict:"ECA",terminal:!0,compile:function(g,h){var f=h.ngInclude||h.src,i=h.onload||"",j=h.autoscroll;return function(g,h){var n=0,o,p=function(){o&&(o.$destroy(),o=null);h.html("")}; -g.$watch(f,function(f){var m=++n;f?a.get(f,{cache:c}).success(function(a){m===n&&(o&&o.$destroy(),o=g.$new(),h.html(a),e(h.contents())(o),y(j)&&(!j||g.$eval(j))&&d(),o.$emit("$includeContentLoaded"),g.$eval(i))}).error(function(){m===n&&p()}):p()})}}}}],Hd=S({compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),Id=S({terminal:!0,priority:1E3}),Jd=["$locale","$interpolate",function(a,c){var d=/{}/g;return{restrict:"EA",link:function(e,g,h){var f=h.count,i=g.attr(h.$attr.when),j=h.offset|| -0,k=e.$eval(i),l={},n=c.startSymbol(),o=c.endSymbol();m(k,function(a,e){l[e]=c(a.replace(d,n+f+"-"+j+o))});e.$watch(function(){var c=parseFloat(e.$eval(f));return isNaN(c)?"":(c in k||(c=a.pluralCat(c-j)),l[c](e,g,!0))},function(a){g.text(a)})}}}],Kd=S({transclude:"element",priority:1E3,terminal:!0,compile:function(a,c,d){return function(a,c,h){var f=h.ngRepeat,h=f.match(/^\s*(.+)\s+in\s+(.*)\s*$/),i,j,k;if(!h)throw Error("Expected ngRepeat in form of '_item_ in _collection_' but got '"+f+"'.");f= -h[1];i=h[2];h=f.match(/^(?:([\$\w]+)|\(([\$\w]+)\s*,\s*([\$\w]+)\))$/);if(!h)throw Error("'item' in 'item in collection' should be identifier or (key, value) but got '"+f+"'.");j=h[3]||h[1];k=h[2];var l=new eb;a.$watch(function(a){var e,f,h=a.$eval(i),m=c,q=new eb,y,A,u,w,r,v;if(E(h))r=h||[];else{r=[];for(u in h)h.hasOwnProperty(u)&&u.charAt(0)!="$"&&r.push(u);r.sort()}y=r.length-1;e=0;for(f=r.length;ez;)u.pop().element.remove()}for(;r.length> -x;)r.pop()[0].element.remove()}var i;if(!(i=s.match(d)))throw Error("Expected ngOptions in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '"+s+"'.");var j=c(i[2]||i[1]),k=i[4]||i[6],l=i[5],m=c(i[3]||""),n=c(i[2]?i[1]:k),o=c(i[7]),r=[[{element:f,label:""}]];t&&(a(t)(e),t.removeClass("ng-scope"),t.remove());f.html("");f.bind("change",function(){e.$apply(function(){var a,c=o(e)||[],d={},h,i,j,m,s,t;if(p){i=[];m=0;for(t=r.length;m@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak{display:none;}ng\\:form{display:block;}'); +(function(C){'use strict';function N(a){return function(){var b=arguments[0],d;d="["+(a?a+":":"")+b+"] http://errors.angularjs.org/1.5.8/"+(a?a+"/":"")+b;for(b=1;b").append(a).html();try{return a[0].nodeType===Ma?Q(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w\-]+)/,function(a,b){return"<"+Q(b)})}catch(c){return Q(d)}}function zc(a){try{return decodeURIComponent(a)}catch(b){}}function Ac(a){var b={};q((a||"").split("&"),function(a){var c,e,f;a&&(e=a=a.replace(/\+/g,"%20"), +c=a.indexOf("="),-1!==c&&(e=a.substring(0,c),f=a.substring(c+1)),e=zc(e),w(e)&&(f=w(f)?zc(f):!0,ua.call(b,e)?L(b[e])?b[e].push(f):b[e]=[b[e],f]:b[e]=f))});return b}function Tb(a){var b=[];q(a,function(a,c){L(a)?q(a,function(a){b.push(ea(c,!0)+(!0===a?"":"="+ea(a,!0)))}):b.push(ea(c,!0)+(!0===a?"":"="+ea(a,!0)))});return b.length?b.join("&"):""}function qb(a){return ea(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ea(a,b){return encodeURIComponent(a).replace(/%40/gi, +"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function ee(a,b){var d,c,e=Na.length;for(c=0;c/,">"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);b.unshift("ng");c=cb(b,d.strictDi);c.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector", +d);c(b)(a)})}]);return c},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;C&&e.test(C.name)&&(d.debugInfoEnabled=!0,C.name=C.name.replace(e,""));if(C&&!f.test(C.name))return c();C.name=C.name.replace(f,"");ca.resumeBootstrap=function(a){q(a,function(a){b.push(a)});return c()};z(ca.resumeDeferredBootstrap)&&ca.resumeDeferredBootstrap()}function ge(){C.name="NG_ENABLE_DEBUG_INFO!"+C.name;C.location.reload()}function he(a){a=ca.element(a).injector();if(!a)throw xa("test");return a.get("$$testability")} +function Cc(a,b){b=b||"_";return a.replace(ie,function(a,c){return(c?b:"")+a.toLowerCase()})}function je(){var a;if(!Dc){var b=rb();(qa=y(b)?C.jQuery:b?C[b]:void 0)&&qa.fn.on?(F=qa,S(qa.fn,{scope:Oa.scope,isolateScope:Oa.isolateScope,controller:Oa.controller,injector:Oa.injector,inheritedData:Oa.inheritedData}),a=qa.cleanData,qa.cleanData=function(b){for(var c,e=0,f;null!=(f=b[e]);e++)(c=qa._data(f,"events"))&&c.$destroy&&qa(f).triggerHandler("$destroy");a(b)}):F=O;ca.element=F;Dc=!0}}function sb(a, +b,d){if(!a)throw xa("areq",b||"?",d||"required");return a}function Pa(a,b,d){d&&L(a)&&(a=a[a.length-1]);sb(z(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Qa(a,b){if("hasOwnProperty"===a)throw xa("badname",b);}function Ec(a,b,d){if(!b)return a;b=b.split(".");for(var c,e=a,f=b.length,g=0;g")+c[2];for(c=c[0];c--;)d=d.lastChild;f=$a(f,d.childNodes);d=e.firstChild; +d.textContent=""}else f.push(b.createTextNode(a));e.textContent="";e.innerHTML="";q(f,function(a){e.appendChild(a)});return e}function Pc(a,b){var d=a.parentNode;d&&d.replaceChild(b,a);b.appendChild(a)}function O(a){if(a instanceof O)return a;var b;G(a)&&(a=W(a),b=!0);if(!(this instanceof O)){if(b&&"<"!=a.charAt(0))throw Wb("nosel");return new O(a)}if(b){b=C.document;var d;a=(d=Of.exec(a))?[b.createElement(d[1])]:(d=Oc(a,b))?d.childNodes:[]}Qc(this,a)}function Xb(a){return a.cloneNode(!0)}function wb(a, +b){b||eb(a);if(a.querySelectorAll)for(var d=a.querySelectorAll("*"),c=0,e=d.length;c=Ea?!1:"function"===typeof a&&/^(?:class\b|constructor\()/.test(Function.prototype.toString.call(a)+" ");return d?(c.unshift(null),new (Function.prototype.bind.apply(a,c))):a.apply(b,c)},instantiate:function(a,b,c){var d= +L(a)?a[a.length-1]:a;a=e(a,b,c);a.unshift(null);return new (Function.prototype.bind.apply(d,a))},get:d,annotate:cb.$$annotate,has:function(b){return n.hasOwnProperty(b+"Provider")||a.hasOwnProperty(b)}}}b=!0===b;var k={},l=[],m=new Ra([],!0),n={$provide:{provider:d(c),factory:d(f),service:d(function(a,b){return f(a,["$injector",function(a){return a.instantiate(b)}])}),value:d(function(a,b){return f(a,ha(b),!1)}),constant:d(function(a,b){Qa(a,"constant");n[a]=b;u[a]=b}),decorator:function(a,b){var c= +p.get(a+"Provider"),d=c.$get;c.$get=function(){var a=B.invoke(d,c);return B.invoke(b,null,{$delegate:a})}}}},p=n.$injector=h(n,function(a,b){ca.isString(b)&&l.push(b);throw Ha("unpr",l.join(" <- "));}),u={},R=h(u,function(a,b){var c=p.get(a+"Provider",b);return B.invoke(c.$get,c,void 0,a)}),B=R;n.$injectorProvider={$get:ha(R)};var r=g(a),B=R.get("$injector");B.strictDi=b;q(r,function(a){a&&B.invoke(a)});return B}function Xe(){var a=!0;this.disableAutoScrolling=function(){a=!1};this.$get=["$window", +"$location","$rootScope",function(b,d,c){function e(a){var b=null;Array.prototype.some.call(a,function(a){if("a"===wa(a))return b=a,!0});return b}function f(a){if(a){a.scrollIntoView();var c;c=g.yOffset;z(c)?c=c():Qb(c)?(c=c[0],c="fixed"!==b.getComputedStyle(c).position?0:c.getBoundingClientRect().bottom):T(c)||(c=0);c&&(a=a.getBoundingClientRect().top,b.scrollBy(0,a-c))}else b.scrollTo(0,0)}function g(a){a=G(a)?a:d.hash();var b;a?(b=h.getElementById(a))?f(b):(b=e(h.getElementsByName(a)))?f(b):"top"=== +a&&f(null):f(null)}var h=b.document;a&&c.$watch(function(){return d.hash()},function(a,b){a===b&&""===a||Qf(function(){c.$evalAsync(g)})});return g}]}function gb(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;L(a)&&(a=a.join(" "));L(b)&&(b=b.join(" "));return a+" "+b}function Zf(a){G(a)&&(a=a.split(" "));var b=U();q(a,function(a){a.length&&(b[a]=!0)});return b}function Ia(a){return D(a)?a:{}}function $f(a,b,d,c){function e(a){try{a.apply(null,va.call(arguments,1))}finally{if(R--,0===R)for(;B.length;)try{B.pop()()}catch(b){d.error(b)}}} +function f(){t=null;g();h()}function g(){r=K();r=y(r)?null:r;na(r,E)&&(r=E);E=r}function h(){if(v!==k.url()||J!==r)v=k.url(),J=r,q(M,function(a){a(k.url(),r)})}var k=this,l=a.location,m=a.history,n=a.setTimeout,p=a.clearTimeout,u={};k.isMock=!1;var R=0,B=[];k.$$completeOutstandingRequest=e;k.$$incOutstandingRequestCount=function(){R++};k.notifyWhenNoOutstandingRequests=function(a){0===R?a():B.push(a)};var r,J,v=l.href,fa=b.find("base"),t=null,K=c.history?function(){try{return m.state}catch(a){}}: +A;g();J=r;k.url=function(b,d,e){y(e)&&(e=null);l!==a.location&&(l=a.location);m!==a.history&&(m=a.history);if(b){var f=J===e;if(v===b&&(!c.history||f))return k;var h=v&&Ja(v)===Ja(b);v=b;J=e;!c.history||h&&f?(h||(t=b),d?l.replace(b):h?(d=l,e=b.indexOf("#"),e=-1===e?"":b.substr(e),d.hash=e):l.href=b,l.href!==b&&(t=b)):(m[d?"replaceState":"pushState"](e,"",b),g(),J=r);t&&(t=b);return k}return t||l.href.replace(/%27/g,"'")};k.state=function(){return r};var M=[],H=!1,E=null;k.onUrlChange=function(b){if(!H){if(c.history)F(a).on("popstate", +f);F(a).on("hashchange",f);H=!0}M.push(b);return b};k.$$applicationDestroyed=function(){F(a).off("hashchange popstate",f)};k.$$checkUrlChange=h;k.baseHref=function(){var a=fa.attr("href");return a?a.replace(/^(https?\:)?\/\/[^\/]*/,""):""};k.defer=function(a,b){var c;R++;c=n(function(){delete u[c];e(a)},b||0);u[c]=!0;return c};k.defer.cancel=function(a){return u[a]?(delete u[a],p(a),e(A),!0):!1}}function df(){this.$get=["$window","$log","$sniffer","$document",function(a,b,d,c){return new $f(a,c,b, +d)}]}function ef(){this.$get=function(){function a(a,c){function e(a){a!=n&&(p?p==a&&(p=a.n):p=a,f(a.n,a.p),f(a,n),n=a,n.n=null)}function f(a,b){a!=b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw N("$cacheFactory")("iid",a);var g=0,h=S({},c,{id:a}),k=U(),l=c&&c.capacity||Number.MAX_VALUE,m=U(),n=null,p=null;return b[a]={put:function(a,b){if(!y(b)){if(ll&&this.remove(p.key);return b}},get:function(a){if(l";b=pa.firstChild.attributes;var d=b[0];b.removeNamedItem(d.name);d.value=c;a.attributes.setNamedItem(d)}function x(a,b){try{a.addClass(b)}catch(c){}}function aa(a,b,c,d,e){a instanceof F||(a=F(a));for(var f=/\S+/,g=0,h=a.length;g< +h;g++){var k=a[g];k.nodeType===Ma&&k.nodeValue.match(f)&&Pc(k,a[g]=C.document.createElement("span"))}var l=s(a,b,a,c,d,e);aa.$$addScopeClass(a);var m=null;return function(b,c,d){sb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var f=d.parentBoundTranscludeFn,g=d.transcludeControllers;d=d.futureParentElement;f&&f.$$boundTransclude&&(f=f.$$boundTransclude);m||(m=(d=d&&d[0])?"foreignobject"!==wa(d)&&ma.call(d).match(/SVG/)?"svg":"html":"html");d="html"!==m?F(da(m,F("
").append(a).html())): +c?Oa.clone.call(a):a;if(g)for(var h in g)d.data("$"+h+"Controller",g[h].instance);aa.$$addScopeInfo(d,b);c&&c(d,b);l&&l(b,d,d,f);return d}}function s(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,m,p,r,v;if(n)for(v=Array(c.length),m=0;mx.priority)break;if(w=x.scope)x.templateUrl||(D(w)?(X("new/isolated scope",u||r,x,t),u=x):X("new/isolated scope",u,x,t)),r=r||x;I=x.name;if(!Fa&&(x.replace&&(x.templateUrl||x.template)||x.transclude&& +!x.$$tlb)){for(w=A+1;Fa=a[w++];)if(Fa.transclude&&!Fa.$$tlb||Fa.replace&&(Fa.templateUrl||Fa.template)){za=!0;break}Fa=!0}!x.templateUrl&&x.controller&&(w=x.controller,v=v||U(),X("'"+I+"' controller",v[I],x,t),v[I]=x);if(w=x.transclude)if(M=!0,x.$$tlb||(X("transclusion",E,x,t),E=x),"element"==w)fa=!0,n=x.priority,P=t,t=d.$$element=F(aa.$$createComment(I,d[I])),b=t[0],ea(f,va.call(P,0),b),P[0].$$parentNode=P[0].parentNode,K=ac(za,P,e,n,g&&g.name,{nonTlbTranscludeDirective:E});else{var oa=U();P=F(Xb(b)).contents(); +if(D(w)){P=[];var Q=U(),O=U();q(w,function(a,b){var c="?"===a.charAt(0);a=c?a.substring(1):a;Q[a]=b;oa[b]=null;O[b]=c});q(t.contents(),function(a){var b=Q[Aa(wa(a))];b?(O[b]=!0,oa[b]=oa[b]||[],oa[b].push(a)):P.push(a)});q(O,function(a,b){if(!a)throw ga("reqslot",b);});for(var V in oa)oa[V]&&(oa[V]=ac(za,oa[V],e))}t.empty();K=ac(za,P,e,void 0,void 0,{needsNewScope:x.$$isolateScope||x.$$newScope});K.$$slots=oa}if(x.template)if(B=!0,X("template",H,x,t),H=x,w=z(x.template)?x.template(t,d):x.template, +w=xa(w),x.replace){g=x;P=Vb.test(w)?$c(da(x.templateNamespace,W(w))):[];b=P[0];if(1!=P.length||1!==b.nodeType)throw ga("tplrt",I,"");ea(f,t,b);C={$attr:{}};w=$b(b,[],C);var Z=a.splice(A+1,a.length-(A+1));(u||r)&&T(w,u,r);a=a.concat(w).concat(Z);$(d,C);C=a.length}else t.html(w);if(x.templateUrl)B=!0,X("template",H,x,t),H=x,x.replace&&(g=x),p=ba(a.splice(A,a.length-A),t,d,f,M&&K,h,k,{controllerDirectives:v,newScopeDirective:r!==x&&r,newIsolateScopeDirective:u,templateDirective:H,nonTlbTranscludeDirective:E}), +C=a.length;else if(x.compile)try{s=x.compile(t,d,K);var Y=x.$$originalDirective||x;z(s)?m(null,ab(Y,s),G,hb):s&&m(ab(Y,s.pre),ab(Y,s.post),G,hb)}catch(ca){c(ca,ya(t))}x.terminal&&(p.terminal=!0,n=Math.max(n,x.priority))}p.scope=r&&!0===r.scope;p.transcludeOnThisElement=M;p.templateOnThisElement=B;p.transclude=K;l.hasElementTranscludeDirective=fa;return p}function ib(a,b,c,d){var e;if(G(b)){var f=b.match(l);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&& +e.instance;if(!e){var h="$"+b+"Controller";e=g?c.inheritedData(h):c.data(h)}if(!e&&!f)throw ga("ctreq",b,a);}else if(L(b))for(e=[],g=0,f=b.length;gp.priority)&&-1!=p.restrict.indexOf(g)){l&&(p=Rb(p,{$$start:l,$$end:m}));if(!p.$$bindings){var u=p,v=p,x=p.name,H={isolateScope:null,bindToController:null};D(v.scope)&&(!0===v.bindToController?(H.bindToController=d(v.scope,x,!0),H.isolateScope={}): +H.isolateScope=d(v.scope,x,!1));D(v.bindToController)&&(H.bindToController=d(v.bindToController,x,!0));if(D(H.bindToController)){var E=v.controller,M=v.controllerAs;if(!E)throw ga("noctrl",x);if(!Xc(E,M))throw ga("noident",x);}var t=u.$$bindings=H;D(t.isolateScope)&&(p.$$isolateBindings=t.isolateScope)}b.push(p);k=p}}catch(I){c(I)}}return k}function V(b){if(f.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,e=c.length;d"+b+"";return c.childNodes[0].childNodes;default:return b}}function ha(a,b){if("srcdoc"==b)return M.HTML;var c=wa(a);if("xlinkHref"==b||"form"==c&&"action"==b||"img"!= +c&&("src"==b||"ngSrc"==b))return M.RESOURCE_URL}function ia(a,c,d,e,f){var g=ha(a,e);f=k[e]||f;var h=b(d,!0,g,f);if(h){if("multiple"===e&&"select"===wa(a))throw ga("selmulti",ya(a));c.push({priority:100,compile:function(){return{pre:function(a,c,k){c=k.$$observers||(k.$$observers=U());if(m.test(e))throw ga("nodomevents");var l=k[e];l!==d&&(h=l&&b(l,!0,g,f),d=l);h&&(k[e]=h(a),(c[e]||(c[e]=[])).$$inter=!0,(k.$$observers&&k.$$observers[e].$$scope||a).$watch(h,function(a,b){"class"===e&&a!=b?k.$updateClass(a, +b):k.$set(e,a)}))}}}})}}function ea(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g=b)return a;for(;b--;)8===a[b].nodeType&&bg.call(a,b,1);return a}function Xc(a,b){if(b&&G(b))return b;if(G(a)){var d=cd.exec(a);if(d)return d[3]}}function ff(){var a={},b=!1;this.has=function(b){return a.hasOwnProperty(b)};this.register=function(b,c){Qa(b,"controller");D(b)?S(a,b):a[b]=c};this.allowGlobals=function(){b=!0};this.$get=["$injector", +"$window",function(d,c){function e(a,b,c,d){if(!a||!D(a.$scope))throw N("$controller")("noscp",d,b);a.$scope[b]=c}return function(f,g,h,k){var l,m,n;h=!0===h;k&&G(k)&&(n=k);if(G(f)){k=f.match(cd);if(!k)throw cg("ctrlfmt",f);m=k[1];n=n||k[3];f=a.hasOwnProperty(m)?a[m]:Ec(g.$scope,m,!0)||(b?Ec(c,m,!0):void 0);Pa(f,m,!0)}if(h)return h=(L(f)?f[f.length-1]:f).prototype,l=Object.create(h||null),n&&e(g,n,l,m||f.name),S(function(){var a=d.invoke(f,l,g,m);a!==l&&(D(a)||z(a))&&(l=a,n&&e(g,n,l,m||f.name));return l}, +{instance:l,identifier:n});l=d.instantiate(f,g,m);n&&e(g,n,l,m||f.name);return l}}]}function gf(){this.$get=["$window",function(a){return F(a.document)}]}function hf(){this.$get=["$log",function(a){return function(b,d){a.error.apply(a,arguments)}}]}function cc(a){return D(a)?da(a)?a.toISOString():bb(a):a}function nf(){this.$get=function(){return function(a){if(!a)return"";var b=[];tc(a,function(a,c){null===a||y(a)||(L(a)?q(a,function(a){b.push(ea(c)+"="+ea(cc(a)))}):b.push(ea(c)+"="+ea(cc(a))))}); +return b.join("&")}}}function of(){this.$get=function(){return function(a){function b(a,e,f){null===a||y(a)||(L(a)?q(a,function(a,c){b(a,e+"["+(D(a)?c:"")+"]")}):D(a)&&!da(a)?tc(a,function(a,c){b(a,e+(f?"":"[")+c+(f?"":"]"))}):d.push(ea(e)+"="+ea(cc(a))))}if(!a)return"";var d=[];b(a,"",!0);return d.join("&")}}}function dc(a,b){if(G(a)){var d=a.replace(dg,"").trim();if(d){var c=b("Content-Type");(c=c&&0===c.indexOf(dd))||(c=(c=d.match(eg))&&fg[c[0]].test(d));c&&(a=xc(d))}}return a}function ed(a){var b= +U(),d;G(a)?q(a.split("\n"),function(a){d=a.indexOf(":");var e=Q(W(a.substr(0,d)));a=W(a.substr(d+1));e&&(b[e]=b[e]?b[e]+", "+a:a)}):D(a)&&q(a,function(a,d){var f=Q(d),g=W(a);f&&(b[f]=b[f]?b[f]+", "+g:g)});return b}function fd(a){var b;return function(d){b||(b=ed(a));return d?(d=b[Q(d)],void 0===d&&(d=null),d):b}}function gd(a,b,d,c){if(z(c))return c(a,b,d);q(c,function(c){a=c(a,b,d)});return a}function mf(){var a=this.defaults={transformResponse:[dc],transformRequest:[function(a){return D(a)&&"[object File]"!== +ma.call(a)&&"[object Blob]"!==ma.call(a)&&"[object FormData]"!==ma.call(a)?bb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ia(ec),put:ia(ec),patch:ia(ec)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer"},b=!1;this.useApplyAsync=function(a){return w(a)?(b=!!a,this):b};var d=!0;this.useLegacyPromiseExtensions=function(a){return w(a)?(d=!!a,this):d};var c=this.interceptors=[];this.$get=["$httpBackend","$$cookieReader","$cacheFactory", +"$rootScope","$q","$injector",function(e,f,g,h,k,l){function m(b){function c(a,b){for(var d=0,e=b.length;da?b:k.reject(b)}if(!D(b))throw N("$http")("badreq",b);if(!G(b.url))throw N("$http")("badreq",b.url);var g=S({method:"get",transformRequest:a.transformRequest, +transformResponse:a.transformResponse,paramSerializer:a.paramSerializer},b);g.headers=function(b){var c=a.headers,d=S({},b.headers),f,g,h,c=S({},c.common,c[Q(b.method)]);a:for(f in c){g=Q(f);for(h in d)if(Q(h)===g)continue a;d[f]=c[f]}return e(d,ia(b))}(b);g.method=ub(g.method);g.paramSerializer=G(g.paramSerializer)?l.get(g.paramSerializer):g.paramSerializer;var h=[],m=[],p=k.when(g);q(R,function(a){(a.request||a.requestError)&&h.unshift(a.request,a.requestError);(a.response||a.responseError)&&m.push(a.response, +a.responseError)});p=c(p,h);p=p.then(function(b){var c=b.headers,d=gd(b.data,fd(c),void 0,b.transformRequest);y(d)&&q(c,function(a,b){"content-type"===Q(b)&&delete c[b]});y(b.withCredentials)&&!y(a.withCredentials)&&(b.withCredentials=a.withCredentials);return n(b,d).then(f,f)});p=c(p,m);d?(p.success=function(a){Pa(a,"fn");p.then(function(b){a(b.data,b.status,b.headers,g)});return p},p.error=function(a){Pa(a,"fn");p.then(null,function(b){a(b.data,b.status,b.headers,g)});return p}):(p.success=hd("success"), +p.error=hd("error"));return p}function n(c,d){function g(a){if(a){var c={};q(a,function(a,d){c[d]=function(c){function d(){a(c)}b?h.$applyAsync(d):h.$$phase?d():h.$apply(d)}});return c}}function l(a,c,d,e){function f(){n(c,a,d,e)}E&&(200<=a&&300>a?E.put(P,[a,c,ed(d),e]):E.remove(P));b?h.$applyAsync(f):(f(),h.$$phase||h.$apply())}function n(a,b,d,e){b=-1<=b?b:0;(200<=b&&300>b?M.resolve:M.reject)({data:a,status:b,headers:fd(d),config:c,statusText:e})}function t(a){n(a.data,a.status,ia(a.headers()), +a.statusText)}function R(){var a=m.pendingRequests.indexOf(c);-1!==a&&m.pendingRequests.splice(a,1)}var M=k.defer(),H=M.promise,E,I,Da=c.headers,P=p(c.url,c.paramSerializer(c.params));m.pendingRequests.push(c);H.then(R,R);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(E=D(c.cache)?c.cache:D(a.cache)?a.cache:u);E&&(I=E.get(P),w(I)?I&&z(I.then)?I.then(t,t):L(I)?n(I[1],I[0],ia(I[2]),I[3]):n(I,200,{},"OK"):E.put(P,H));y(I)&&((I=id(c.url)?f()[c.xsrfCookieName||a.xsrfCookieName]: +void 0)&&(Da[c.xsrfHeaderName||a.xsrfHeaderName]=I),e(c.method,P,d,l,Da,c.timeout,c.withCredentials,c.responseType,g(c.eventHandlers),g(c.uploadEventHandlers)));return H}function p(a,b){0=l&&(v.resolve(r),q(fa.$$intervalId),delete g[fa.$$intervalId]);J||a.$apply()},k);g[fa.$$intervalId]=v;return fa}var g={};f.cancel=function(a){return a&&a.$$intervalId in g?(g[a.$$intervalId].reject("canceled"),b.clearInterval(a.$$intervalId), +delete g[a.$$intervalId],!0):!1};return f}]}function fc(a){a=a.split("/");for(var b=a.length;b--;)a[b]=qb(a[b]);return a.join("/")}function jd(a,b){var d=Y(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=Z(d.port)||hg[d.protocol]||null}function kd(a,b){var d="/"!==a.charAt(0);d&&(a="/"+a);var c=Y(a);b.$$path=decodeURIComponent(d&&"/"===c.pathname.charAt(0)?c.pathname.substring(1):c.pathname);b.$$search=Ac(c.search);b.$$hash=decodeURIComponent(c.hash);b.$$path&&"/"!=b.$$path.charAt(0)&&(b.$$path= +"/"+b.$$path)}function ka(a,b){if(0===b.lastIndexOf(a,0))return b.substr(a.length)}function Ja(a){var b=a.indexOf("#");return-1==b?a:a.substr(0,b)}function jb(a){return a.replace(/(#.+)|#$/,"$1")}function gc(a,b,d){this.$$html5=!0;d=d||"";jd(a,this);this.$$parse=function(a){var d=ka(b,a);if(!G(d))throw Gb("ipthprfx",a,b);kd(d,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Tb(this.$$search),d=this.$$hash?"#"+qb(this.$$hash):"";this.$$url=fc(this.$$path)+(a?"?"+ +a:"")+d;this.$$absUrl=b+this.$$url.substr(1)};this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;w(f=ka(a,c))?(g=f,g=w(f=ka(d,f))?b+(ka("/",f)||f):a+g):w(f=ka(b,c))?g=b+f:b==c+"/"&&(g=b);g&&this.$$parse(g);return!!g}}function hc(a,b,d){jd(a,this);this.$$parse=function(c){var e=ka(a,c)||ka(b,c),f;y(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",y(e)&&(a=c,this.replace())):(f=ka(d,e),y(f)&&(f=e));kd(f,this);c=this.$$path;var e=a,g=/^\/[A-Z]:(\/.*)/;0===f.lastIndexOf(e, +0)&&(f=f.replace(e,""));g.exec(f)||(c=(f=g.exec(c))?f[1]:c);this.$$path=c;this.$$compose()};this.$$compose=function(){var b=Tb(this.$$search),e=this.$$hash?"#"+qb(this.$$hash):"";this.$$url=fc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+(this.$$url?d+this.$$url:"")};this.$$parseLinkUrl=function(b,d){return Ja(a)==Ja(b)?(this.$$parse(b),!0):!1}}function ld(a,b,d){this.$$html5=!0;hc.apply(this,arguments);this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;a==Ja(c)? +f=c:(g=ka(b,c))?f=a+d+g:b===c+"/"&&(f=b);f&&this.$$parse(f);return!!f};this.$$compose=function(){var b=Tb(this.$$search),e=this.$$hash?"#"+qb(this.$$hash):"";this.$$url=fc(this.$$path)+(b?"?"+b:"")+e;this.$$absUrl=a+d+this.$$url}}function Hb(a){return function(){return this[a]}}function md(a,b){return function(d){if(y(d))return this[a];this[a]=b(d);this.$$compose();return this}}function sf(){var a="",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return w(b)?(a=b,this): +a};this.html5Mode=function(a){return Ga(a)?(b.enabled=a,this):D(a)?(Ga(a.enabled)&&(b.enabled=a.enabled),Ga(a.requireBase)&&(b.requireBase=a.requireBase),Ga(a.rewriteLinks)&&(b.rewriteLinks=a.rewriteLinks),this):b};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(d,c,e,f,g){function h(a,b,d){var e=l.url(),f=l.$$state;try{c.url(a,b,d),l.$$state=c.state()}catch(g){throw l.url(e),l.$$state=f,g;}}function k(a,b){d.$broadcast("$locationChangeSuccess",l.absUrl(),a,l.$$state, +b)}var l,m;m=c.baseHref();var n=c.url(),p;if(b.enabled){if(!m&&b.requireBase)throw Gb("nobase");p=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(m||"/");m=e.history?gc:ld}else p=Ja(n),m=hc;var u=p.substr(0,Ja(p).lastIndexOf("/")+1);l=new m(p,u,"#"+a);l.$$parseLinkUrl(n,n);l.$$state=c.state();var R=/^\s*(javascript|mailto):/i;f.on("click",function(a){if(b.rewriteLinks&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!=a.which&&2!=a.button){for(var e=F(a.target);"a"!==wa(e[0]);)if(e[0]===f[0]||!(e=e.parent())[0])return; +var h=e.prop("href"),k=e.attr("href")||e.attr("xlink:href");D(h)&&"[object SVGAnimatedString]"===h.toString()&&(h=Y(h.animVal).href);R.test(h)||!h||e.attr("target")||a.isDefaultPrevented()||!l.$$parseLinkUrl(h,k)||(a.preventDefault(),l.absUrl()!=c.url()&&(d.$apply(),g.angular["ff-684208-preventDefault"]=!0))}});jb(l.absUrl())!=jb(n)&&c.url(l.absUrl(),!0);var q=!0;c.onUrlChange(function(a,b){y(ka(u,a))?g.location.href=a:(d.$evalAsync(function(){var c=l.absUrl(),e=l.$$state,f;a=jb(a);l.$$parse(a);l.$$state= +b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;l.absUrl()===a&&(f?(l.$$parse(c),l.$$state=e,h(c,!1,e)):(q=!1,k(c,e)))}),d.$$phase||d.$digest())});d.$watch(function(){var a=jb(c.url()),b=jb(l.absUrl()),f=c.state(),g=l.$$replace,m=a!==b||l.$$html5&&e.history&&f!==l.$$state;if(q||m)q=!1,d.$evalAsync(function(){var b=l.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,l.$$state,f).defaultPrevented;l.absUrl()===b&&(c?(l.$$parse(a),l.$$state=f):(m&&h(b,g,f===l.$$state?null:l.$$state), +k(a,f)))});l.$$replace=!1});return l}]}function tf(){var a=!0,b=this;this.debugEnabled=function(b){return w(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=d.console||{},e=b[a]||b.log||A;a=!1;try{a=!!e.apply}catch(k){}return a?function(){var a=[];q(arguments,function(b){a.push(c(b))}); +return e.apply(b,a)}:function(a,b){e(a,null==b?"":b)}}return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function Sa(a,b){if("__defineGetter__"===a||"__defineSetter__"===a||"__lookupGetter__"===a||"__lookupSetter__"===a||"__proto__"===a)throw X("isecfld",b);return a}function ig(a){return a+""}function ra(a,b){if(a){if(a.constructor===a)throw X("isecfn",b);if(a.window===a)throw X("isecwindow",b);if(a.children&& +(a.nodeName||a.prop&&a.attr&&a.find))throw X("isecdom",b);if(a===Object)throw X("isecobj",b);}return a}function nd(a,b){if(a){if(a.constructor===a)throw X("isecfn",b);if(a===jg||a===kg||a===lg)throw X("isecff",b);}}function Ib(a,b){if(a&&(a===(0).constructor||a===(!1).constructor||a==="".constructor||a==={}.constructor||a===[].constructor||a===Function.constructor))throw X("isecaf",b);}function mg(a,b){return"undefined"!==typeof a?a:b}function od(a,b){return"undefined"===typeof a?b:"undefined"=== +typeof b?a:a+b}function V(a,b){var d,c;switch(a.type){case s.Program:d=!0;q(a.body,function(a){V(a.expression,b);d=d&&a.expression.constant});a.constant=d;break;case s.Literal:a.constant=!0;a.toWatch=[];break;case s.UnaryExpression:V(a.argument,b);a.constant=a.argument.constant;a.toWatch=a.argument.toWatch;break;case s.BinaryExpression:V(a.left,b);V(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case s.LogicalExpression:V(a.left,b);V(a.right, +b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case s.ConditionalExpression:V(a.test,b);V(a.alternate,b);V(a.consequent,b);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case s.Identifier:a.constant=!1;a.toWatch=[a];break;case s.MemberExpression:V(a.object,b);a.computed&&V(a.property,b);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=[a];break;case s.CallExpression:d=a.filter?!b(a.callee.name).$stateful: +!1;c=[];q(a.arguments,function(a){V(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=a.filter&&!b(a.callee.name).$stateful?c:[a];break;case s.AssignmentExpression:V(a.left,b);V(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=[a];break;case s.ArrayExpression:d=!0;c=[];q(a.elements,function(a){V(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=c;break;case s.ObjectExpression:d=!0;c=[];q(a.properties,function(a){V(a.value, +b);d=d&&a.value.constant&&!a.computed;a.value.constant||c.push.apply(c,a.value.toWatch)});a.constant=d;a.toWatch=c;break;case s.ThisExpression:a.constant=!1;a.toWatch=[];break;case s.LocalsExpression:a.constant=!1,a.toWatch=[]}}function pd(a){if(1==a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:void 0}}function qd(a){return a.type===s.Identifier||a.type===s.MemberExpression}function rd(a){if(1===a.body.length&&qd(a.body[0].expression))return{type:s.AssignmentExpression, +left:a.body[0].expression,right:{type:s.NGValueParameter},operator:"="}}function sd(a){return 0===a.body.length||1===a.body.length&&(a.body[0].expression.type===s.Literal||a.body[0].expression.type===s.ArrayExpression||a.body[0].expression.type===s.ObjectExpression)}function td(a,b){this.astBuilder=a;this.$filter=b}function ud(a,b){this.astBuilder=a;this.$filter=b}function Jb(a){return"constructor"==a}function ic(a){return z(a.valueOf)?a.valueOf():ng.call(a)}function uf(){var a=U(),b=U(),d={"true":!0, +"false":!1,"null":null,undefined:void 0},c,e;this.addLiteral=function(a,b){d[a]=b};this.setIdentifierFns=function(a,b){c=a;e=b;return this};this.$get=["$filter",function(f){function g(c,d,e){var g,k,H;e=e||J;switch(typeof c){case "string":H=c=c.trim();var E=e?b:a;g=E[H];if(!g){":"===c.charAt(0)&&":"===c.charAt(1)&&(k=!0,c=c.substring(2));g=e?r:B;var q=new jc(g);g=(new kc(q,f,g)).parse(c);g.constant?g.$$watchDelegate=p:k?g.$$watchDelegate=g.literal?n:m:g.inputs&&(g.$$watchDelegate=l);e&&(g=h(g));E[H]= +g}return u(g,d);case "function":return u(c,d);default:return u(A,d)}}function h(a){function b(c,d,e,f){var g=J;J=!0;try{return a(c,d,e,f)}finally{J=g}}if(!a)return a;b.$$watchDelegate=a.$$watchDelegate;b.assign=h(a.assign);b.constant=a.constant;b.literal=a.literal;for(var c=0;a.inputs&&c=this.promise.$$state.status&&d&&d.length&&a(function(){for(var a,e,f=0,g=d.length;fa)for(b in l++,f)ua.call(e,b)||(u--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$stateful=!0;var d=this,e,f,h,k=1q&&(A=4-q,y[A]||(y[A]=[]),y[A].push({msg:z(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:g,oldVal:k}));else if(a===c){r=!1;break a}}catch(G){f(G)}if(!(p=t.$$watchersCount&&t.$$childHead||t!==this&&t.$$nextSibling))for(;t!==this&&!(p=t.$$nextSibling);)t=t.$parent}while(t=p);if((r||v.length)&& +!q--)throw J.$$phase=null,d("infdig",b,y);}while(r||v.length);for(J.$$phase=null;KEa)throw sa("iequirks");var c=ia(la);c.isEnabled=function(){return a};c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Xa);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var e=c.parseAs, +f=c.getTrusted,g=c.trustAs;q(la,function(a,b){var d=Q(b);c[db("parse_as_"+d)]=function(b){return e(a,b)};c[db("get_trusted_"+d)]=function(b){return f(a,b)};c[db("trust_as_"+d)]=function(b){return g(a,b)}});return c}]}function Af(){this.$get=["$window","$document",function(a,b){var d={},c=!(a.chrome&&a.chrome.app&&a.chrome.app.runtime)&&a.history&&a.history.pushState,e=Z((/android (\d+)/.exec(Q((a.navigator||{}).userAgent))||[])[1]),f=/Boxee/i.test((a.navigator||{}).userAgent),g=b[0]||{},h,k=/^(Moz|webkit|ms)(?=[A-Z])/, +l=g.body&&g.body.style,m=!1,n=!1;if(l){for(var p in l)if(m=k.exec(p)){h=m[0];h=h[0].toUpperCase()+h.substr(1);break}h||(h="WebkitOpacity"in l&&"webkit");m=!!("transition"in l||h+"Transition"in l);n=!!("animation"in l||h+"Animation"in l);!e||m&&n||(m=G(l.webkitTransition),n=G(l.webkitAnimation))}return{history:!(!c||4>e||f),hasEvent:function(a){if("input"===a&&11>=Ea)return!1;if(y(d[a])){var b=g.createElement("div");d[a]="on"+a in b}return d[a]},csp:Ba(),vendorPrefix:h,transitions:m,animations:n,android:e}}]} +function Cf(){var a;this.httpOptions=function(b){return b?(a=b,this):a};this.$get=["$templateCache","$http","$q","$sce",function(b,d,c,e){function f(g,h){f.totalPendingRequests++;if(!G(g)||y(b.get(g)))g=e.getTrustedResourceUrl(g);var k=d.defaults&&d.defaults.transformResponse;L(k)?k=k.filter(function(a){return a!==dc}):k===dc&&(k=null);return d.get(g,S({cache:b,transformResponse:k},a))["finally"](function(){f.totalPendingRequests--}).then(function(a){b.put(g,a.data);return a.data},function(a){if(!h)throw pg("tpload", +g,a.status,a.statusText);return c.reject(a)})}f.totalPendingRequests=0;return f}]}function Df(){this.$get=["$rootScope","$browser","$location",function(a,b,d){return{findBindings:function(a,b,d){a=a.getElementsByClassName("ng-binding");var g=[];q(a,function(a){var c=ca.element(a).data("$binding");c&&q(c,function(c){d?(new RegExp("(^|\\s)"+wd(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!=c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],h=0;hc&&(c=e),c+=+a.slice(e+1),a=a.substring(0,e)):0>c&&(c=a.length);for(e=0;a.charAt(e)==mc;e++); +if(e==(g=a.length))d=[0],c=1;else{for(g--;a.charAt(g)==mc;)g--;c-=e;d=[];for(f=0;e<=g;e++,f++)d[f]=+a.charAt(e)}c>Gd&&(d=d.splice(0,Gd-1),b=c-1,c=1);return{d:d,e:b,i:c}}function xg(a,b,d,c){var e=a.d,f=e.length-a.i;b=y(b)?Math.min(Math.max(d,f),c):+b;d=b+a.i;c=e[d];if(0d-1){for(c=0;c>d;c--)e.unshift(0),a.i++;e.unshift(1);a.i++}else e[d-1]++; +for(;fh;)k.unshift(0),h++;0=b.lgSize&&h.unshift(k.splice(-b.lgSize,k.length).join(""));k.length> +b.gSize;)h.unshift(k.splice(-b.gSize,k.length).join(""));k.length&&h.unshift(k.join(""));k=h.join(d);f.length&&(k+=c+f.join(""));e&&(k+="e+"+e)}return 0>a&&!g?b.negPre+k+b.negSuf:b.posPre+k+b.posSuf}function Kb(a,b,d,c){var e="";if(0>a||c&&0>=a)c?a=-a+1:(a=-a,e="-");for(a=""+a;a.length-d)f+=d;0===f&&-12==d&&(f=12);return Kb(f,b,c,e)}}function kb(a,b,d){return function(c,e){var f= +c["get"+a](),g=ub((d?"STANDALONE":"")+(b?"SHORT":"")+a);return e[g][f]}}function Hd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Id(a){return function(b){var d=Hd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-+d;b=1+Math.round(b/6048E5);return Kb(b,a)}}function nc(a,b){return 0>=a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function Bd(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var f=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear, +k=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=Z(b[9]+b[10]),g=Z(b[9]+b[11]));h.call(a,Z(b[1]),Z(b[2])-1,Z(b[3]));f=Z(b[4]||0)-f;g=Z(b[5]||0)-g;h=Z(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));k.call(a,f,g,h,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c,d,f){var g="",h=[],k,l;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;G(c)&&(c=yg.test(c)?Z(c):b(c));T(c)&&(c=new Date(c));if(!da(c)||!isFinite(c.getTime()))return c; +for(;d;)(l=zg.exec(d))?(h=$a(h,l,1),d=h.pop()):(h.push(d),d=null);var m=c.getTimezoneOffset();f&&(m=yc(f,m),c=Sb(c,f,!0));q(h,function(b){k=Ag[b];g+=k?k(c,a.DATETIME_FORMATS,m):"''"===b?"'":b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function rg(){return function(a,b){y(b)&&(b=2);return bb(a,b)}}function sg(){return function(a,b,d){b=Infinity===Math.abs(Number(b))?Number(b):Z(b);if(isNaN(b))return a;T(a)&&(a=a.toString());if(!ta(a))return a;d=!d||isNaN(d)?0:Z(d);d=0>d?Math.max(0,a.length+ +d):d;return 0<=b?oc(a,d,d+b):0===d?oc(a,b,a.length):oc(a,Math.max(0,d+b),d)}}function oc(a,b,d){return G(a)?a.slice(b,d):va.call(a,b,d)}function Dd(a){function b(b){return b.map(function(b){var c=1,d=Xa;if(z(b))d=b;else if(G(b)){if("+"==b.charAt(0)||"-"==b.charAt(0))c="-"==b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(d=a(b),d.constant))var e=d(),d=function(a){return a[e]}}return{get:d,descending:c}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}} +function c(a,b){var c=0,d=a.type,k=b.type;if(d===k){var k=a.value,l=b.value;"string"===d?(k=k.toLowerCase(),l=l.toLowerCase()):"object"===d&&(D(k)&&(k=a.index),D(l)&&(l=b.index));k!==l&&(c=kb||37<=b&&40>=b|| +m(a,this,this.value)});if(e.hasEvent("paste"))b.on("paste cut",m)}b.on("change",l);if(Ld[g]&&c.$$hasNativeValidators&&g===d.type)b.on("keydown wheel mousedown",function(a){if(!k){var b=this.validity,c=b.badInput,d=b.typeMismatch;k=f.defer(function(){k=null;b.badInput===c&&b.typeMismatch===d||l(a)})}});c.$render=function(){var a=c.$isEmpty(c.$viewValue)?"":c.$viewValue;b.val()!==a&&b.val(a)}}function Nb(a,b){return function(d,c){var e,f;if(da(d))return d;if(G(d)){'"'==d.charAt(0)&&'"'==d.charAt(d.length- +1)&&(d=d.substring(1,d.length-1));if(Bg.test(d))return new Date(d);a.lastIndex=0;if(e=a.exec(d))return e.shift(),f=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(),ss:c.getSeconds(),sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},q(e,function(a,c){c=s};g.$observe("min", +function(a){s=p(a);h.$validate()})}if(w(g.max)||g.ngMax){var r;h.$validators.max=function(a){return!n(a)||y(r)||d(a)<=r};g.$observe("max",function(a){r=p(a);h.$validate()})}}}function Md(a,b,d,c){(c.$$hasNativeValidators=D(b[0].validity))&&c.$parsers.push(function(a){var c=b.prop("validity")||{};return c.badInput||c.typeMismatch?void 0:a})}function Nd(a,b,d,c,e){if(w(c)){a=a(c);if(!a.constant)throw nb("constexpr",d,c);return a(b)}return e}function qc(a,b){a="ngClass"+a;return["$animate",function(d){function c(a, +b){var c=[],d=0;a:for(;d(?:<\/\1>|)$/,Vb=/<|&#?\w+;/,Mf=/<([\w:-]+)/,Nf=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, +ja={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ja.optgroup=ja.option;ja.tbody=ja.tfoot=ja.colgroup=ja.caption=ja.thead;ja.th=ja.td;var Uf=C.Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)},Oa=O.prototype={ready:function(a){function b(){d||(d=!0,a())}var d=!1;"complete"=== +C.document.readyState?C.setTimeout(b):(this.on("DOMContentLoaded",b),O(C).on("load",b))},toString:function(){var a=[];q(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},eq:function(a){return 0<=a?F(this[a]):F(this[this.length+a])},length:0,push:Dg,sort:[].sort,splice:[].splice},Eb={};q("multiple selected checked disabled readOnly required open".split(" "),function(a){Eb[Q(a)]=a});var Vc={};q("input select option textarea button form details".split(" "),function(a){Vc[a]=!0});var bd={ngMinlength:"minlength", +ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern"};q({data:Yb,removeData:eb,hasData:function(a){for(var b in fb[a.ng339])return!0;return!1},cleanData:function(a){for(var b=0,d=a.length;b/,Xf=/^[^\(]*\(\s*([^\)]*)\)/m,Eg=/,/,Fg=/^\s*(_?)(\S+?)\1\s*$/,Vf=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Ha=N("$injector");cb.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw G(d)&&d||(d=a.name||Yf(a)),Ha("strictdi",d); +b=Wc(a);q(b[1].split(Eg),function(a){a.replace(Fg,function(a,b,d){c.push(d)})})}a.$inject=c}}else L(a)?(b=a.length-1,Pa(a[b],"fn"),c=a.slice(0,b)):Pa(a,"fn",!0);return c};var Rd=N("$animate"),$e=function(){this.$get=A},af=function(){var a=new Ra,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function e(a,b,c){var d=!1;b&&(b=G(b)?b.split(" "):L(b)?b:[],q(b,function(b){b&&(d=!0,a[b]=c)}));return d}function f(){q(b,function(b){var c=a.get(b);if(c){var d=Zf(b.attr("class")),e="",f="";q(c, +function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});q(b,function(a){e&&Bb(a,e);f&&Ab(a,f)});a.remove(b)}});b.length=0}return{enabled:A,on:A,off:A,pin:A,push:function(g,h,k,l){l&&l();k=k||{};k.from&&g.css(k.from);k.to&&g.css(k.to);if(k.addClass||k.removeClass)if(h=k.addClass,l=k.removeClass,k=a.get(g)||{},h=e(k,h,!0),l=e(k,l,!1),h||l)a.put(g,k),b.push(g),1===b.length&&c.$$postDigest(f);g=new d;g.complete();return g}}}]},Ye=["$provide",function(a){var b=this;this.$$registeredAnimations= +Object.create(null);this.register=function(d,c){if(d&&"."!==d.charAt(0))throw Rd("notcsel",d);var e=d+"-animation";b.$$registeredAnimations[d.substr(1)]=e;a.factory(e,c)};this.classNameFilter=function(a){if(1===arguments.length&&(this.$$classNameFilter=a instanceof RegExp?a:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw Rd("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var h;a:{for(h=0;h <= >= && || ! = |".split(" "),function(a){Ob[a]=!0});var Jg={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},jc=function(a){this.options=a};jc.prototype={constructor:jc, +lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdentifierStart:function(a){return this.options.isIdentifierStart? +this.options.isIdentifierStart(a,this.codePointAt(a)):this.isValidIdentifierStart(a)},isValidIdentifierStart:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isIdentifierContinue:function(a){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(a,this.codePointAt(a)):this.isValidIdentifierContinue(a)},isValidIdentifierContinue:function(a,b){return this.isValidIdentifierStart(a,b)||this.isNumber(a)},codePointAt:function(a){return 1===a.length?a.charCodeAt(0): +(a.charCodeAt(0)<<10)+a.charCodeAt(1)-56613888},peekMultichar:function(){var a=this.text.charAt(this.index),b=this.peek();if(!b)return a;var d=a.charCodeAt(0),c=b.charCodeAt(0);return 55296<=d&&56319>=d&&56320<=c&&57343>=c?a+b:a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=w(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw X("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index< +this.text.length;){var d=Q(this.text.charAt(this.index));if("."==d||this.isNumber(d))a+=d;else{var c=this.peek();if("e"==d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&c&&this.isNumber(c)&&"e"==a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||c&&this.isNumber(c)||"e"!=a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){var a=this.index;for(this.index+=this.peekMultichar().length;this.index< +this.text.length;){var b=this.peekMultichar();if(!this.isIdentifierContinue(b))break;this.index+=b.length}this.tokens.push({index:a,text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=this.index;this.index++;for(var d="",c=a,e=!1;this.index","<=",">=");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:s.BinaryExpression,operator:b.text, +left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:s.BinaryExpression,operator:b.text,left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+","-","!"))?{type:s.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")?a=this.object(): +this.selfReferential.hasOwnProperty(this.peek().text)?a=pa(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?a={type:s.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(","[",".");)"("===b.text?(a={type:s.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")): +"["===b.text?(a={type:s.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:s.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var b={type:s.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.filterChain());while(this.expect(",")) +}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:s.Identifier,name:a.text}},constant:function(){return{type:s.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","))}this.consume("]");return{type:s.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break; +b={type:s.Property,kind:"init"};this.peek().constant?(b.key=this.constant(),b.computed=!1,this.consume(":"),b.value=this.expression()):this.peek().identifier?(b.key=this.identifier(),b.computed=!1,this.peek(":")?(this.consume(":"),b.value=this.expression()):b.value=b.key):this.peek("[")?(this.consume("["),b.key=this.expression(),this.consume("]"),b.computed=!0,this.consume(":"),b.value=this.expression()):this.throwError("invalid key",this.peek());a.push(b)}while(this.expect(","))}this.consume("}"); +return{type:s.ObjectExpression,properties:a}},throwError:function(a,b){throw X("syntax",b.text,a,b.index+1,this.text,this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw X("ueoe",this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw X("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c,e){if(this.tokens.length> +a){a=this.tokens[a];var f=a.text;if(f===b||f===d||f===c||f===e||!(b||d||c||e))return a}return!1},expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},selfReferential:{"this":{type:s.ThisExpression},$locals:{type:s.LocalsExpression}}};td.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.state={nextId:0,filters:{},expensiveChecks:b,fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};V(c,d.$filter);var e="",f;this.stage="assign"; +if(f=rd(c))this.state.computing="assign",e=this.nextId(),this.recurse(f,e),this.return_(e),e="fn.assign="+this.generateFunction("assign","s,v,l");f=pd(c.body);d.stage="inputs";q(f,function(a,b){var c="fn"+b;d.state[c]={vars:[],body:[],own:{}};d.state.computing=c;var e=d.nextId();d.recurse(a,e);d.return_(e);d.state.inputs.push(c);a.watchId=b});this.state.computing="fn";this.stage="main";this.recurse(c);e='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+ +e+this.watchFns()+"return fn;";e=(new Function("$filter","ensureSafeMemberName","ensureSafeObject","ensureSafeFunction","getStringValue","ensureSafeAssignContext","ifDefined","plus","text",e))(this.$filter,Sa,ra,nd,ig,Ib,mg,od,a);this.state=this.stage=void 0;e.literal=sd(c);e.constant=c.constant;return e},USE:"use",STRICT:"strict",watchFns:function(){var a=[],b=this.state.inputs,d=this;q(b,function(b){a.push("var "+b+"="+d.generateFunction(b,"s"))});b.length&&a.push("fn.inputs=["+b.join(",")+"];"); +return a.join("")},generateFunction:function(a,b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;q(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,d,c,e,f){var g,h,k=this,l,m,n;c=c||A;if(!f&&w(a.watchId))b= +b||this.nextId(),this.if_("i",this.lazyAssign(b,this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,e,!0));else switch(a.type){case s.Program:q(a.body,function(b,c){k.recurse(b.expression,void 0,void 0,function(a){h=a});c!==a.body.length-1?k.current().body.push(h,";"):k.return_(h)});break;case s.Literal:m=this.escape(a.value);this.assign(b,m);c(m);break;case s.UnaryExpression:this.recurse(a.argument,void 0,void 0,function(a){h=a});m=a.operator+"("+this.ifDefined(h,0)+")";this.assign(b,m); +c(m);break;case s.BinaryExpression:this.recurse(a.left,void 0,void 0,function(a){g=a});this.recurse(a.right,void 0,void 0,function(a){h=a});m="+"===a.operator?this.plus(g,h):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(h,0):"("+g+")"+a.operator+"("+h+")";this.assign(b,m);c(m);break;case s.LogicalExpression:b=b||this.nextId();k.recurse(a.left,b);k.if_("&&"===a.operator?b:k.not(b),k.lazyRecurse(a.right,b));c(b);break;case s.ConditionalExpression:b=b||this.nextId();k.recurse(a.test, +b);k.if_(b,k.lazyRecurse(a.alternate,b),k.lazyRecurse(a.consequent,b));c(b);break;case s.Identifier:b=b||this.nextId();d&&(d.context="inputs"===k.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);Sa(a.name);k.if_("inputs"===k.stage||k.not(k.getHasOwnProperty("l",a.name)),function(){k.if_("inputs"===k.stage||"s",function(){e&&1!==e&&k.if_(k.not(k.nonComputedMember("s",a.name)),k.lazyAssign(k.nonComputedMember("s",a.name),"{}"));k.assign(b,k.nonComputedMember("s", +a.name))})},b&&k.lazyAssign(b,k.nonComputedMember("l",a.name)));(k.state.expensiveChecks||Jb(a.name))&&k.addEnsureSafeObject(b);c(b);break;case s.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();k.recurse(a.object,g,void 0,function(){k.if_(k.notNull(g),function(){e&&1!==e&&k.addEnsureSafeAssignContext(g);if(a.computed)h=k.nextId(),k.recurse(a.property,h),k.getStringValue(h),k.addEnsureSafeMemberName(h),e&&1!==e&&k.if_(k.not(k.computedMember(g,h)),k.lazyAssign(k.computedMember(g, +h),"{}")),m=k.ensureSafeObject(k.computedMember(g,h)),k.assign(b,m),d&&(d.computed=!0,d.name=h);else{Sa(a.property.name);e&&1!==e&&k.if_(k.not(k.nonComputedMember(g,a.property.name)),k.lazyAssign(k.nonComputedMember(g,a.property.name),"{}"));m=k.nonComputedMember(g,a.property.name);if(k.state.expensiveChecks||Jb(a.property.name))m=k.ensureSafeObject(m);k.assign(b,m);d&&(d.computed=!1,d.name=a.property.name)}},function(){k.assign(b,"undefined")});c(b)},!!e);break;case s.CallExpression:b=b||this.nextId(); +a.filter?(h=k.filter(a.callee.name),l=[],q(a.arguments,function(a){var b=k.nextId();k.recurse(a,b);l.push(b)}),m=h+"("+l.join(",")+")",k.assign(b,m),c(b)):(h=k.nextId(),g={},l=[],k.recurse(a.callee,h,g,function(){k.if_(k.notNull(h),function(){k.addEnsureSafeFunction(h);q(a.arguments,function(a){k.recurse(a,k.nextId(),void 0,function(a){l.push(k.ensureSafeObject(a))})});g.name?(k.state.expensiveChecks||k.addEnsureSafeObject(g.context),m=k.member(g.context,g.name,g.computed)+"("+l.join(",")+")"):m= +h+"("+l.join(",")+")";m=k.ensureSafeObject(m);k.assign(b,m)},function(){k.assign(b,"undefined")});c(b)}));break;case s.AssignmentExpression:h=this.nextId();g={};if(!qd(a.left))throw X("lval");this.recurse(a.left,void 0,g,function(){k.if_(k.notNull(g.context),function(){k.recurse(a.right,h);k.addEnsureSafeObject(k.member(g.context,g.name,g.computed));k.addEnsureSafeAssignContext(g.context);m=k.member(g.context,g.name,g.computed)+a.operator+h;k.assign(b,m);c(b||m)})},1);break;case s.ArrayExpression:l= +[];q(a.elements,function(a){k.recurse(a,k.nextId(),void 0,function(a){l.push(a)})});m="["+l.join(",")+"]";this.assign(b,m);c(m);break;case s.ObjectExpression:l=[];n=!1;q(a.properties,function(a){a.computed&&(n=!0)});n?(b=b||this.nextId(),this.assign(b,"{}"),q(a.properties,function(a){a.computed?(g=k.nextId(),k.recurse(a.key,g)):g=a.key.type===s.Identifier?a.key.name:""+a.key.value;h=k.nextId();k.recurse(a.value,h);k.assign(k.member(b,g,a.computed),h)})):(q(a.properties,function(b){k.recurse(b.value, +a.constant?void 0:k.nextId(),void 0,function(a){l.push(k.escape(b.key.type===s.Identifier?b.key.name:""+b.key.value)+":"+a)})}),m="{"+l.join(",")+"}",this.assign(b,m));c(b||m);break;case s.ThisExpression:this.assign(b,"s");c("s");break;case s.LocalsExpression:this.assign(b,"l");c("l");break;case s.NGValueParameter:this.assign(b,"v"),c("v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+this.escape(b)+" in "+a+")"));return c[d]}, +assign:function(a,b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,"){");b();c.push("}");d&&(c.push("else{"), +d(),c.push("}"))}},not:function(a){return"!("+a+")"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){var d=/[^$_a-zA-Z0-9]/g;return/[$_a-zA-Z][$_a-zA-Z0-9]*/.test(b)?a+"."+b:a+'["'+b.replace(d,this.stringEscapeFn)+'"]'},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,b):this.nonComputedMember(a,b)},addEnsureSafeObject:function(a){this.current().body.push(this.ensureSafeObject(a),";")},addEnsureSafeMemberName:function(a){this.current().body.push(this.ensureSafeMemberName(a), +";")},addEnsureSafeFunction:function(a){this.current().body.push(this.ensureSafeFunction(a),";")},addEnsureSafeAssignContext:function(a){this.current().body.push(this.ensureSafeAssignContext(a),";")},ensureSafeObject:function(a){return"ensureSafeObject("+a+",text)"},ensureSafeMemberName:function(a){return"ensureSafeMemberName("+a+",text)"},ensureSafeFunction:function(a){return"ensureSafeFunction("+a+",text)"},getStringValue:function(a){this.assign(a,"getStringValue("+a+")")},ensureSafeAssignContext:function(a){return"ensureSafeAssignContext("+ +a+",text)"},lazyRecurse:function(a,b,d,c,e,f){var g=this;return function(){g.recurse(a,b,d,c,e,f)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(G(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(T(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"=== +typeof a)return"undefined";throw X("esc");},nextId:function(a,b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};ud.prototype={compile:function(a,b){var d=this,c=this.astBuilder.ast(a);this.expression=a;this.expensiveChecks=b;V(c,d.$filter);var e,f;if(e=rd(c))f=this.recurse(e);e=pd(c.body);var g;e&&(g=[],q(e,function(a,b){var c=d.recurse(a);a.input=c;g.push(c);a.watchId=b}));var h=[];q(c.body,function(a){h.push(d.recurse(a.expression))}); +e=0===c.body.length?A:1===c.body.length?h[0]:function(a,b){var c;q(h,function(d){c=d(a,b)});return c};f&&(e.assign=function(a,b,c){return f(a,c,b)});g&&(e.inputs=g);e.literal=sd(c);e.constant=c.constant;return e},recurse:function(a,b,d){var c,e,f=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case s.Literal:return this.value(a.value,b);case s.UnaryExpression:return e=this.recurse(a.argument),this["unary"+a.operator](e,b);case s.BinaryExpression:return c=this.recurse(a.left), +e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.LogicalExpression:return c=this.recurse(a.left),e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case s.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case s.Identifier:return Sa(a.name,f.expression),f.identifier(a.name,f.expensiveChecks||Jb(a.name),b,d,f.expression);case s.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(Sa(a.property.name, +f.expression),e=a.property.name),a.computed&&(e=this.recurse(a.property)),a.computed?this.computedMember(c,e,b,d,f.expression):this.nonComputedMember(c,e,f.expensiveChecks,b,d,f.expression);case s.CallExpression:return g=[],q(a.arguments,function(a){g.push(f.recurse(a))}),a.filter&&(e=this.$filter(a.callee.name)),a.filter||(e=this.recurse(a.callee,!0)),a.filter?function(a,c,d,f){for(var n=[],p=0;p":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>b(c,e,f,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<=b(c,e,f,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>=b(c,e,f,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)&&b(c,e,f,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)|| +b(c,e,f,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(e,f,g,h){e=a(e,f,g,h)?b(e,f,g,h):d(e,f,g,h);return c?{value:e}:e}},value:function(a,b){return function(){return b?{context:void 0,name:void 0,value:a}:a}},identifier:function(a,b,d,c,e){return function(f,g,h,k){f=g&&a in g?g:f;c&&1!==c&&f&&!f[a]&&(f[a]={});g=f?f[a]:void 0;b&&ra(g,e);return d?{context:f,name:a,value:g}:g}},computedMember:function(a,b,d,c,e){return function(f,g,h,k){var l=a(f,g,h,k),m,n;null!=l&&(m=b(f, +g,h,k),m+="",Sa(m,e),c&&1!==c&&(Ib(l),l&&!l[m]&&(l[m]={})),n=l[m],ra(n,e));return d?{context:l,name:m,value:n}:n}},nonComputedMember:function(a,b,d,c,e,f){return function(g,h,k,l){g=a(g,h,k,l);e&&1!==e&&(Ib(g),g&&!g[b]&&(g[b]={}));h=null!=g?g[b]:void 0;(d||Jb(b))&&ra(h,f);return c?{context:g,name:b,value:h}:h}},inputs:function(a,b){return function(d,c,e,f){return f?f[b]:a(d,c,e)}}};var kc=function(a,b,d){this.lexer=a;this.$filter=b;this.options=d;this.ast=new s(a,d);this.astCompiler=d.csp?new ud(this.ast, +b):new td(this.ast,b)};kc.prototype={constructor:kc,parse:function(a){return this.astCompiler.compile(a,this.options.expensiveChecks)}};var ng=Object.prototype.valueOf,sa=N("$sce"),la={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},pg=N("$compile"),$=C.document.createElement("a"),yd=Y(C.location.href);zd.$inject=["$document"];Mc.$inject=["$provide"];var Gd=22,Fd=".",mc="0";Ad.$inject=["$locale"];Cd.$inject=["$locale"];var Ag={yyyy:ba("FullYear",4,0,!1,!0),yy:ba("FullYear",2,0, +!0,!0),y:ba("FullYear",1,0,!1,!0),MMMM:kb("Month"),MMM:kb("Month",!0),MM:ba("Month",2,1),M:ba("Month",1,1),LLLL:kb("Month",!1,!0),dd:ba("Date",2),d:ba("Date",1),HH:ba("Hours",2),H:ba("Hours",1),hh:ba("Hours",2,-12),h:ba("Hours",1,-12),mm:ba("Minutes",2),m:ba("Minutes",1),ss:ba("Seconds",2),s:ba("Seconds",1),sss:ba("Milliseconds",3),EEEE:kb("Day"),EEE:kb("Day",!0),a:function(a,b){return 12>a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Kb(Math[0=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}},zg=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,yg=/^\-?\d+$/;Bd.$inject=["$locale"];var tg=ha(Q),ug=ha(ub);Dd.$inject=["$parse"];var oe=ha({restrict:"E",compile:function(a,b){if(!b.href&&!b.xlinkHref)return function(a,b){if("a"===b[0].nodeName.toLowerCase()){var e="[object SVGAnimatedString]"===ma.call(b.prop("href"))? +"xlink:href":"href";b.on("click",function(a){b.attr(e)||a.preventDefault()})}}}}),vb={};q(Eb,function(a,b){function d(a,d,e){a.$watch(e[c],function(a){e.$set(b,!!a)})}if("multiple"!=a){var c=Aa("ng-"+b),e=d;"checked"===a&&(e=function(a,b,e){e.ngModel!==e[c]&&d(a,b,e)});vb[c]=function(){return{restrict:"A",priority:100,link:e}}}});q(bd,function(a,b){vb[b]=function(){return{priority:100,link:function(a,c,e){if("ngPattern"===b&&"/"==e.ngPattern.charAt(0)&&(c=e.ngPattern.match(Cg))){e.$set("ngPattern", +new RegExp(c[1],c[2]));return}a.$watch(e[b],function(a){e.$set(b,a)})}}}});q(["src","srcset","href"],function(a){var b=Aa("ng-"+a);vb[b]=function(){return{priority:99,link:function(d,c,e){var f=a,g=a;"href"===a&&"[object SVGAnimatedString]"===ma.call(c.prop("href"))&&(g="xlinkHref",e.$attr[g]="xlink:href",f=null);e.$observe(b,function(b){b?(e.$set(g,b),Ea&&f&&c.prop(f,e[g])):"href"===a&&e.$set(g,null)})}}}});var Lb={$addControl:A,$$renameControl:function(a,b){a.$name=b},$removeControl:A,$setValidity:A, +$setDirty:A,$setPristine:A,$setSubmitted:A};Jd.$inject=["$element","$attrs","$scope","$animate","$interpolate"];var Sd=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||A}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Jd,compile:function(d,f){d.addClass(Ua).addClass(ob);var g=f.name?"name":a&&f.ngForm?"ngForm":!1;return{pre:function(a,d,e,f){var n=f[0];if(!("action"in e)){var p=function(b){a.$apply(function(){n.$commitViewValue(); +n.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",p,!1);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",p,!1)},0,!1)})}(f[1]||n.$$parentForm).$addControl(n);var q=g?c(n.$name):A;g&&(q(a,n),e.$observe(g,function(b){n.$name!==b&&(q(a,void 0),n.$$parentForm.$$renameControl(n,b),q=c(n.$name),q(a,n))}));d.on("$destroy",function(){n.$$parentForm.$removeControl(n);q(a,void 0);S(n,Lb)})}}}}}]},pe=Sd(),Ce=Sd(!0),Bg=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/, +Kg=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+\])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Lg=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+\/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,Mg=/^\s*(\-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Td=/^(\d{4,})-(\d{2})-(\d{2})$/,Ud=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,rc=/^(\d{4,})-W(\d\d)$/,Vd=/^(\d{4,})-(\d\d)$/, +Wd=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Ld=U();q(["date","datetime-local","month","time","week"],function(a){Ld[a]=!0});var Xd={text:function(a,b,d,c,e,f){lb(a,b,d,c,e,f);pc(c)},date:mb("date",Td,Nb(Td,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":mb("datetimelocal",Ud,Nb(Ud,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:mb("time",Wd,Nb(Wd,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:mb("week",rc,function(a,b){if(da(a))return a;if(G(a)){rc.lastIndex=0;var d=rc.exec(a); +if(d){var c=+d[1],e=+d[2],f=d=0,g=0,h=0,k=Hd(c),e=7*(e-1);b&&(d=b.getHours(),f=b.getMinutes(),g=b.getSeconds(),h=b.getMilliseconds());return new Date(c,0,k.getDate()+e,d,f,g,h)}}return NaN},"yyyy-Www"),month:mb("month",Vd,Nb(Vd,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,e,f){Md(a,b,d,c);lb(a,b,d,c,e,f);c.$$parserName="number";c.$parsers.push(function(a){if(c.$isEmpty(a))return null;if(Mg.test(a))return parseFloat(a)});c.$formatters.push(function(a){if(!c.$isEmpty(a)){if(!T(a))throw nb("numfmt", +a);a=a.toString()}return a});if(w(d.min)||d.ngMin){var g;c.$validators.min=function(a){return c.$isEmpty(a)||y(g)||a>=g};d.$observe("min",function(a){w(a)&&!T(a)&&(a=parseFloat(a));g=T(a)&&!isNaN(a)?a:void 0;c.$validate()})}if(w(d.max)||d.ngMax){var h;c.$validators.max=function(a){return c.$isEmpty(a)||y(h)||a<=h};d.$observe("max",function(a){w(a)&&!T(a)&&(a=parseFloat(a));h=T(a)&&!isNaN(a)?a:void 0;c.$validate()})}},url:function(a,b,d,c,e,f){lb(a,b,d,c,e,f);pc(c);c.$$parserName="url";c.$validators.url= +function(a,b){var d=a||b;return c.$isEmpty(d)||Kg.test(d)}},email:function(a,b,d,c,e,f){lb(a,b,d,c,e,f);pc(c);c.$$parserName="email";c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||Lg.test(d)}},radio:function(a,b,d,c){y(d.name)&&b.attr("name",++pb);b.on("click",function(a){b[0].checked&&c.$setViewValue(d.value,a&&a.type)});c.$render=function(){b[0].checked=d.value==c.$viewValue};d.$observe("value",c.$render)},checkbox:function(a,b,d,c,e,f,g,h){var k=Nd(h,a,"ngTrueValue",d.ngTrueValue, +!0),l=Nd(h,a,"ngFalseValue",d.ngFalseValue,!1);b.on("click",function(a){c.$setViewValue(b[0].checked,a&&a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return na(a,k)});c.$parsers.push(function(a){return a?k:l})},hidden:A,button:A,submit:A,reset:A,file:A},Gc=["$browser","$sniffer","$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,f,g,h){h[0]&&(Xd[Q(g.type)]||Xd.text)(e,f, +g,h[0],b,a,d,c)}}}}],Ng=/^(true|false|\d+)$/,Ue=function(){return{restrict:"A",priority:100,compile:function(a,b){return Ng.test(b.ngValue)?function(a,b,e){e.$set("value",a.$eval(e.ngValue))}:function(a,b,e){a.$watch(e.ngValue,function(a){e.$set("value",a)})}}}},ue=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,e){a.$$addBindingInfo(c,e.ngBind);c=c[0];b.$watch(e.ngBind,function(a){c.textContent=y(a)?"":a})}}}}],we=["$interpolate","$compile", +function(a,b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,f){c=a(d.attr(f.$attr.ngBindTemplate));b.$$addBindingInfo(d,c.expressions);d=d[0];f.$observe("ngBindTemplate",function(a){d.textContent=y(a)?"":a})}}}}],ve=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,e){var f=b(e.ngBindHtml),g=b(e.ngBindHtml,function(b){return a.valueOf(b)});d.$$addBindingClass(c);return function(b,c,e){d.$$addBindingInfo(c,e.ngBindHtml);b.$watch(g,function(){var d= +f(b);c.html(a.getTrustedHtml(d)||"")})}}}}],Te=ha({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),xe=qc("",!0),ze=qc("Odd",0),ye=qc("Even",1),Ae=Ta({compile:function(a,b){b.$set("ngCloak",void 0);a.removeClass("ng-cloak")}}),Be=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Lc={},Og={blur:!0,focus:!0};q("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), +function(a){var b=Aa("ng-"+a);Lc[b]=["$parse","$rootScope",function(d,c){return{restrict:"A",compile:function(e,f){var g=d(f[b],null,!0);return function(b,d){d.on(a,function(d){var e=function(){g(b,{$event:d})};Og[a]&&c.$$phase?b.$evalAsync(e):b.$apply(e)})}}}}]});var Ee=["$animate","$compile",function(a,b){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(d,c,e,f,g){var h,k,l;d.$watch(e.ngIf,function(d){d?k||g(function(d,f){k=f;d[d.length++]= +b.$$createComment("end ngIf",e.ngIf);h={clone:d};a.enter(d,c.parent(),c)}):(l&&(l.remove(),l=null),k&&(k.$destroy(),k=null),h&&(l=tb(h.clone),a.leave(l).then(function(){l=null}),h=null))})}}}],Fe=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ca.noop,compile:function(c,e){var f=e.ngInclude||e.src,g=e.onload||"",h=e.autoscroll;return function(c,e,m,n,p){var q=0,s,B,r,y=function(){B&&(B.remove(),B=null);s&& +(s.$destroy(),s=null);r&&(d.leave(r).then(function(){B=null}),B=r,r=null)};c.$watch(f,function(f){var m=function(){!w(h)||h&&!c.$eval(h)||b()},t=++q;f?(a(f,!0).then(function(a){if(!c.$$destroyed&&t===q){var b=c.$new();n.template=a;a=p(b,function(a){y();d.enter(a,null,e).then(m)});s=b;r=a;s.$emit("$includeContentLoaded",f);c.$eval(g)}},function(){c.$$destroyed||t!==q||(y(),c.$emit("$includeContentError",f))}),c.$emit("$includeContentRequested",f)):(y(),n.template=null)})}}}}],We=["$compile",function(a){return{restrict:"ECA", +priority:-400,require:"ngInclude",link:function(b,d,c,e){ma.call(d[0]).match(/SVG/)?(d.empty(),a(Oc(e.template,C.document).childNodes)(b,function(a){d.append(a)},{futureParentElement:d})):(d.html(e.template),a(d.contents())(b))}}}],Ge=Ta({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),Se=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var e=b.attr(d.$attr.ngList)||", ",f="false"!==d.ngTrim,g=f?W(e):e;c.$parsers.push(function(a){if(!y(a)){var b= +[];a&&q(a.split(g),function(a){a&&b.push(f?W(a):a)});return b}});c.$formatters.push(function(a){if(L(a))return a.join(e)});c.$isEmpty=function(a){return!a||!a.length}}}},ob="ng-valid",Od="ng-invalid",Ua="ng-pristine",Mb="ng-dirty",Qd="ng-pending",nb=N("ngModel"),Pg=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$rootScope","$q","$interpolate",function(a,b,d,c,e,f,g,h,k,l){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=void 0;this.$validators={}; +this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=void 0;this.$name=l(d.name||"",!1)(a);this.$$parentForm=Lb;var m=e(d.ngModel),n=m.assign,p=m,u=n,s=null,B,r=this;this.$$setOptions=function(a){if((r.$options=a)&&a.getterSetter){var b=e(d.ngModel+"()"),f=e(d.ngModel+"($$$p)");p=function(a){var c=m(a);z(c)&&(c=b(a)); +return c};u=function(a,b){z(m(a))?f(a,{$$$p:b}):n(a,b)}}else if(!m.assign)throw nb("nonassign",d.ngModel,ya(c));};this.$render=A;this.$isEmpty=function(a){return y(a)||""===a||null===a||a!==a};this.$$updateEmptyClasses=function(a){r.$isEmpty(a)?(f.removeClass(c,"ng-not-empty"),f.addClass(c,"ng-empty")):(f.removeClass(c,"ng-empty"),f.addClass(c,"ng-not-empty"))};var J=0;Kd({ctrl:this,$element:c,set:function(a,b){a[b]=!0},unset:function(a,b){delete a[b]},$animate:f});this.$setPristine=function(){r.$dirty= +!1;r.$pristine=!0;f.removeClass(c,Mb);f.addClass(c,Ua)};this.$setDirty=function(){r.$dirty=!0;r.$pristine=!1;f.removeClass(c,Ua);f.addClass(c,Mb);r.$$parentForm.$setDirty()};this.$setUntouched=function(){r.$touched=!1;r.$untouched=!0;f.setClass(c,"ng-untouched","ng-touched")};this.$setTouched=function(){r.$touched=!0;r.$untouched=!1;f.setClass(c,"ng-touched","ng-untouched")};this.$rollbackViewValue=function(){g.cancel(s);r.$viewValue=r.$$lastCommittedViewValue;r.$render()};this.$validate=function(){if(!T(r.$modelValue)|| +!isNaN(r.$modelValue)){var a=r.$$rawModelValue,b=r.$valid,c=r.$modelValue,d=r.$options&&r.$options.allowInvalid;r.$$runValidators(a,r.$$lastCommittedViewValue,function(e){d||b===e||(r.$modelValue=e?a:void 0,r.$modelValue!==c&&r.$$writeModelToScope())})}};this.$$runValidators=function(a,b,c){function d(){var c=!0;q(r.$validators,function(d,e){var g=d(a,b);c=c&&g;f(e,g)});return c?!0:(q(r.$asyncValidators,function(a,b){f(b,null)}),!1)}function e(){var c=[],d=!0;q(r.$asyncValidators,function(e,g){var h= +e(a,b);if(!h||!z(h.then))throw nb("nopromise",h);f(g,void 0);c.push(h.then(function(){f(g,!0)},function(){d=!1;f(g,!1)}))});c.length?k.all(c).then(function(){g(d)},A):g(!0)}function f(a,b){h===J&&r.$setValidity(a,b)}function g(a){h===J&&c(a)}J++;var h=J;(function(){var a=r.$$parserName||"parse";if(y(B))f(a,null);else return B||(q(r.$validators,function(a,b){f(b,null)}),q(r.$asyncValidators,function(a,b){f(b,null)})),f(a,B),B;return!0})()?d()?e():g(!1):g(!1)};this.$commitViewValue=function(){var a= +r.$viewValue;g.cancel(s);if(r.$$lastCommittedViewValue!==a||""===a&&r.$$hasNativeValidators)r.$$updateEmptyClasses(a),r.$$lastCommittedViewValue=a,r.$pristine&&this.$setDirty(),this.$$parseAndValidate()};this.$$parseAndValidate=function(){var b=r.$$lastCommittedViewValue;if(B=y(b)?void 0:!0)for(var c=0;ce||c.$isEmpty(b)||b.length<=e}}}}},Jc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var e=0;d.$observe("minlength",function(a){e=Z(a)||0;c.$validate()});c.$validators.minlength=function(a,b){return c.$isEmpty(b)||b.length>=e}}}}};C.angular.bootstrap? +C.console&&console.log("WARNING: Tried to load angular more than once."):(je(),le(ca),ca.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "), +SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a","short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",", +PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(a,c){var e=a|0,f=c;void 0===f&&(f=Math.min(b(a),3));Math.pow(10,f);return 1==e&&0==f?"one":"other"}})}]),F(C.document).ready(function(){fe(C.document,Bc)}))})(window);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(''); +//# sourceMappingURL=angular.min.js.map diff --git a/samples/dash-if-reference-player/app/sources.json b/samples/dash-if-reference-player/app/sources.json index 35cf76943f..3ea3b064e5 100644 --- a/samples/dash-if-reference-player/app/sources.json +++ b/samples/dash-if-reference-player/app/sources.json @@ -1,7 +1,7 @@ { "items": [ { - "name": "VOD", + "name": "VOD (Static MPD)", "submenu": [ { "url": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/1/client_manifest-events.mpd", @@ -35,7 +35,7 @@ ] }, { - "name": "LIVE Services", + "name": "LIVE (Dynamic MPD)", "submenu": [ { "url": "http://vm2.dashif.org/livesim/testpic_2s/Manifest.mpd", @@ -72,188 +72,737 @@ ] }, { - "name": "DASH Industry Forum Test Vectors", + "name": "Subtitles and Captions", "submenu": [ { - "url": "http://dash.edgesuite.net/dash264/TestCases/1a/netflix/exMPD_BIP_TC1.mpd", - "name": "1. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCases/1a/sony/SNE_DASH_SD_CASE1A_REVISED.mpd", - "name": "2. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "TTML Segmented Subtitles VoD", + "url": "http://vm2.dashif.org/dash/vod/testpic_2s/multi_subs.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1a/qualcomm/1/MultiRate.mpd", - "name": "3. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "TTML Segmented Subtitles Live (livesim)", + "url": "http://vm2.dashif.org/livesim/testpic_2s/multi_subs.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1a/qualcomm/2/MultiRate.mpd", - "name": "4. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "TTML Sideloaded XML Subtitles", + "url": "http://vm2.dashif.org/dash/vod/testpic_2s/xml_subs.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1b/qualcomm/1/MultiRatePatched.mpd", - "name": "5. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "Embedded CEA-608 Closed Captions and TTML segments VoD", + "url": "http://vm2.dashif.org/dash/vod/testpic_2s/cea608_and_segs.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1b/qualcomm/2/MultiRate.mpd", - "name": "6. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "Embedded CEA-608 Closed Captions and TTML segments Live (livesim)", + "url": "http://vm2.dashif.org/livesim/testpic_2s/cea608_and_segs.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/1/MultiRate.mpd", - "name": "7. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + "name": "TTML Segmented 'snaking' subtitles (with random text) (Ondemand)", + "url": "http://rdmedia.bbc.co.uk/dash/ondemand/elephants_dream/1/client_manifest-snake.mpd", + "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/elephants_dream/" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/2/MultiRate.mpd", - "name": "8. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." - }, + "name": "TTML Image Subtitles embedded (VoD)", + "url": "http://vm2.dashif.org/dash/vod/testpic_2s/img_subs.mpd", + "moreInfo": "http://vm2.dashif.org/dash/vod/testpic_2s/img_subs_info.txt" + } + ] + }, + { + "name": "Audio-only", + "submenu": [ { - "url": "http://dash.edgesuite.net/dash264/TestCases/2a/qualcomm/1/MultiResMPEG2.mpd", - "name": "1. Video representations with different spatial resolution and bitrate, with a single audio representation." + "name": "48k AAC-LC Stereo Beeps (Live)", + "url": "http://vm2.dashif.org/livesim/testpic_2s/audio.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/2a/qualcomm/2/MultiRes.mpd", - "name": "2. Video representations with different spatial resolution and bitrate, with a single audio representation." + "name": "48k AAC-LC Stereo Beeps (Ondemand)", + "url": "http://vm2.dashif.org/dash/vod/testpic_2s/audio.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/2b/qualcomm/1/MultiResMPEG2.mpd", - "name": "3. Video representations with different spatial resolution and bitrate, with a single audio representation." + "name": "128k AAC-LC Stereo 1kHz Tone (Ondemand)", + "url": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/1/client_manifest-audio-1kHz.mpd", + "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/2b/qualcomm/2/MultiRes.mpd", - "name": "4. Video representations with different spatial resolution and bitrate, with a single audio representation." - }, + "name": "128k/320k AAC-LC Stereo/5.1 'Testcard' (Ondemand)", + "url": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/1/client_manifest-audio.mpd", + "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/" + } + ] + }, + { + "name": "CableLabs Test Content", + "submenu": [ { - "url": "http://dash.edgesuite.net/dash264/TestCases/2c/qualcomm/1/MultiResMPEG2.mpd", - "name": "5. Video representations with different spatial resolution and bitrate, with a single audio representation." + "name": "CableLabs Cenc Widevine", + "url": "http://html5.cablelabs.com:8100/cenc/wv/dash.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "https://html5.cablelabs.com:8025" + } + } }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/2c/qualcomm/2/MultiRes.mpd", - "name": "6. Video representations with different spatial resolution and bitrate, with a single audio representation." + "name": "CableLabs Cenc Widevine/ClearKey", + "url": "http://html5.cablelabs.com:8100/cenc/wvck/dash.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "https://html5.cablelabs.com:8025" + }, + "org.w3.clearkey": { + "clearkeys": { + "H3JbV93QV3mPNBKQON2UtQ": "ClKhDPHMtCouEx1vLGsJsA" + } + } + } }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/aac-lc_stereo_without_video/ElephantsDream/elephants_dream_audio_only_aaclc_stereo_sidx.mpd", - "name": "1. Multiple audio representation with different audio bitrate." + "name": "CableLabs Cenc Widevine/ClearKey (InitData in MPD)", + "url": "http://html5.cablelabs.com:8100/cenc/wvck/dash_initdata.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "https://html5.cablelabs.com:8025" + }, + "org.w3.clearkey": { + "clearkeys": { + "H3JbV93QV3mPNBKQON2UtQ": "ClKhDPHMtCouEx1vLGsJsA" + } + } + } }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/aac-lc_stereo_without_video/Sintel/sintel_audio_only_aaclc_stereo_sidx.mpd", - "name": "2. Multiple audio representation with different audio bitrate." + "name": "CableLabs Cenc PlayReady", + "url": "http://html5.cablelabs.com:8100/cenc/pr/dash.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaac_stereo_without_video/ElephantsDream/elephants_dream_audio_only_heaac_stereo_sidx.mpd", - "name": "3. Multiple audio representation with different audio bitrate." + "name": "CableLabs Cenc PlayReady (InitData in MPD)", + "url": "http://html5.cablelabs.com:8100/cenc/pr/dash_initdata.mpd" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaac_stereo_without_video/Sintel/sintel_audio_only_heaac_stereo_sidx.mpd", - "name": "4. Multiple audio representation with different audio bitrate." + "name": "CableLabs Cenc PR/WV", + "url": "http://html5.cablelabs.com:8100/cenc/prwv/dash.mpd", + "protData": { + "com.widevine.alpha": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", + "httpRequestHeaders": { + "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + }, + "com.microsoft.playready": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", + "httpRequestHeaders": { + "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + } + } }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaacv2_stereo_without_video/ElephantsDream/elephants_dream_audio_only_heaacv2_stereo_sidx.mpd", - "name": "5. Multiple audio representation with different audio bitrate." + "name": "CableLabs Cenc PR/WV (InitData in MPD)", + "url": "http://html5.cablelabs.com:8100/cenc/prwv/dash_init.mpd", + "protData": { + "com.widevine.alpha": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", + "httpRequestHeaders": { + "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + }, + "com.microsoft.playready": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", + "httpRequestHeaders": { + "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + } + } }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaacv2_stereo_without_video/Sintel/sintel_audio_only_heaacv2_stereo_sidx.mpd", - "name": "6. Multiple audio representation with different audio bitrate." - }, + "name": "CableLabs Cenc PR/WV (2-Period, 2-Key)", + "url": "http://html5.cablelabs.com:8100/cenc/prwv_mp/dash.mpd", + "protData": { + "com.widevine.alpha": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", + "httpRequestHeaders": { + "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + }, + "com.microsoft.playready": { + "drmtoday": true, + "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", + "httpRequestHeaders": { + "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" + } + } + } + } + ] + }, + { + "name": "Axinom Test Content", + "submenu": [ { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/aac-lc_stereo_with_video/ElephantsDream/elephants_dream_480p_aaclc_stereo_sidx.mpd", - "name": "7. Multiple audio representation with different audio bitrate." + "name": "v7 encrypted single-key (1080p)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/aac-lc_stereo_with_video/Sintel/sintel_480p_aaclc_stereo_sidx.mpd", - "name": "8. Multiple audio representation with different audio bitrate." + "name": "v7 encrypted single-key (4K)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaac_stereo_with_video/ElephantsDream/elephants_dream_480p_heaac_stereo_sidx.mpd", - "name": "9. Multiple audio representation with different audio bitrate." + "name": "v7 encrypted single-key (audio only)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaac_stereo_with_video/Sintel/sintel_480p_heaac_stereo_sidx.mpd", - "name": "10.Multiple audio representation with different audio bitrate." + "name": "v7 encrypted multi-key (1080p)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaacv2_stereo_with_video/ElephantsDream/elephants_dream_480p_heaacv2_stereo_sidx.mpd", - "name": "11. Multiple audio representation with different audio bitrate." - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaacv2_stereo_with_video/Sintel/sintel_480p_heaacv2_stereo_sidx.mpd", - "name": "12. Multiple audio representation with different audio bitrate." - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCases/3b/sony/SNE_DASH_CASE3B_SD_REVISED.mpd", - "name": "13. Multiple audio representation with different audio bitrate." - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/1/ED_OnDemand_5SecSeg_Subtitles.mpd", - "name": "1. One or more subtitle representations provided along with audio, video representations." + "name": "v7 encrypted multi-key (4K)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/2/TearsOfSteel_onDem5secSegSubTitles.mpd", - "name": "2. One or more subtitle representations provided along with audio, video representations." + "name": "v7 encrypted multi-key (audio only)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest_AudioOnly.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/3/Solekai.mpd", - "name": "3. One or more subtitle representations provided along with audio, video representations." + "name": "v7 encrypted multi-key multi-period (1080p)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/4c/1/dash.mpd", - "name": "4. One or more subtitle representations provided along with audio, video representations." + "name": "v7 encrypted multi-key multi-period (4K)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/1.mpd", - "name": "1. Test content with more than one periods." + "name": "v7 encrypted multi-key multi-period (audio only)", + "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest_AudioOnly.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, + { - "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/3.mpd", - "name": "2. Test content with more than one periods." + "name": "v7 clear (1080p)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/4.mpd", - "name": "3. Test content with more than one periods." + "name": "v7 clear (4K)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/5.mpd", - "name": "4. Test content with more than one periods." + "name": "v7 clear (audio only)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_AudioOnly.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/1.mpd", - "name": "5. Test content with more than one periods." + "name": "v7 clear multi-period (1080p)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod_1080p.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/2.mpd", - "name": "6. Test content with more than one periods." + "name": "v7 clear multi-period (4K)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/3.mpd", - "name": "7. Test content with more than one periods." + "name": "v7 clear multi-period (audio only)", + "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod_AudioOnly.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors" }, + { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/4.mpd", - "name": "8. Test content with more than one periods." + "name": "v6 encrypted (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/5.mpd", - "name": "9. Test content with more than one periods." + "name": "v6 encrypted (4K)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/6.mpd", - "name": "10. Test content with more than one periods." + "name": "v6 encrypted with generic EME PSSH (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-GenericEmePssh/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/7.mpd", - "name": "11. Test content with more than one periods." + "name": "v6 encrypted with generic EME PSSH (4K)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-GenericEmePssh/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/8.mpd", - "name": "12. Test content with more than one periods." + "name": "v6 encrypted with multiple keys (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/9.mpd", - "name": "13. Test content with more than one periods." + "name": "v6 encrypted with multiple keys (4K)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" }, { - "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/10.mpd", - "name": "14. Test content with more than one periods." - }, + "name": "v6 encrypted with multiple keys and multiple periods (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey-MultiPeriod/Manifest_1080p.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + }, + { + "name": "v6 encrypted with multiple keys and multiple periods (4K)", + "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey-MultiPeriod/Manifest.mpd", + "protData": { + "com.widevine.alpha": { + "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" + } + }, + "com.microsoft.playready": { + "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", + "httpRequestHeaders": { + "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" + } + } + }, + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + }, + + { + "name": "v6 clear (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-Clear/Manifest_1080p.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + }, + { + "name": "v6 clear (4K)", + "url": "http://media.axprod.net/TestVectors/v6-Clear/Manifest.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + }, + { + "name": "v6 clear multi-period (1080p)", + "url": "http://media.axprod.net/TestVectors/v6-Clear/MultiPeriod_Manifest_1080p.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + }, + { + "name": "v6 clear multi-period (4K)", + "url": "http://media.axprod.net/TestVectors/v6-Clear/MultiPeriod_Manifest.mpd", + "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + } + ] + }, + { + "name": "DASH Industry Forum Test Vectors", + "submenu": [ + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1a/netflix/exMPD_BIP_TC1.mpd", + "name": "1. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1a/sony/SNE_DASH_SD_CASE1A_REVISED.mpd", + "name": "2. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1a/qualcomm/1/MultiRate.mpd", + "name": "3. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1a/qualcomm/2/MultiRate.mpd", + "name": "4. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1b/qualcomm/1/MultiRatePatched.mpd", + "name": "5. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1b/qualcomm/2/MultiRate.mpd", + "name": "6. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/1/MultiRate.mpd", + "name": "7. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/1c/qualcomm/2/MultiRate.mpd", + "name": "8. All video representations with same spatial resolution encoded at different bitrates with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2a/qualcomm/1/MultiResMPEG2.mpd", + "name": "1. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2a/qualcomm/2/MultiRes.mpd", + "name": "2. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2b/qualcomm/1/MultiResMPEG2.mpd", + "name": "3. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2b/qualcomm/2/MultiRes.mpd", + "name": "4. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2c/qualcomm/1/MultiResMPEG2.mpd", + "name": "5. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/2c/qualcomm/2/MultiRes.mpd", + "name": "6. Video representations with different spatial resolution and bitrate, with a single audio representation." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/aac-lc_stereo_without_video/ElephantsDream/elephants_dream_audio_only_aaclc_stereo_sidx.mpd", + "name": "1. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/aac-lc_stereo_without_video/Sintel/sintel_audio_only_aaclc_stereo_sidx.mpd", + "name": "2. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaac_stereo_without_video/ElephantsDream/elephants_dream_audio_only_heaac_stereo_sidx.mpd", + "name": "3. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaac_stereo_without_video/Sintel/sintel_audio_only_heaac_stereo_sidx.mpd", + "name": "4. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaacv2_stereo_without_video/ElephantsDream/elephants_dream_audio_only_heaacv2_stereo_sidx.mpd", + "name": "5. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3a/fraunhofer/heaacv2_stereo_without_video/Sintel/sintel_audio_only_heaacv2_stereo_sidx.mpd", + "name": "6. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/aac-lc_stereo_with_video/ElephantsDream/elephants_dream_480p_aaclc_stereo_sidx.mpd", + "name": "7. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/aac-lc_stereo_with_video/Sintel/sintel_480p_aaclc_stereo_sidx.mpd", + "name": "8. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaac_stereo_with_video/ElephantsDream/elephants_dream_480p_heaac_stereo_sidx.mpd", + "name": "9. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaac_stereo_with_video/Sintel/sintel_480p_heaac_stereo_sidx.mpd", + "name": "10.Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaacv2_stereo_with_video/ElephantsDream/elephants_dream_480p_heaacv2_stereo_sidx.mpd", + "name": "11. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/fraunhofer/heaacv2_stereo_with_video/Sintel/sintel_480p_heaacv2_stereo_sidx.mpd", + "name": "12. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/3b/sony/SNE_DASH_CASE3B_SD_REVISED.mpd", + "name": "13. Multiple audio representation with different audio bitrate." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/1/ED_OnDemand_5SecSeg_Subtitles.mpd", + "name": "1. One or more subtitle representations provided along with audio, video representations." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/2/TearsOfSteel_onDem5secSegSubTitles.mpd", + "name": "2. One or more subtitle representations provided along with audio, video representations." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/4b/qualcomm/3/Solekai.mpd", + "name": "3. One or more subtitle representations provided along with audio, video representations." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/4c/1/dash.mpd", + "name": "4. One or more subtitle representations provided along with audio, video representations." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/1.mpd", + "name": "1. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/3.mpd", + "name": "2. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/4.mpd", + "name": "3. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5a/nomor/5.mpd", + "name": "4. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/1.mpd", + "name": "5. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/2.mpd", + "name": "6. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/3.mpd", + "name": "7. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/4.mpd", + "name": "8. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/5.mpd", + "name": "9. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/6.mpd", + "name": "10. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/7.mpd", + "name": "11. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/8.mpd", + "name": "12. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/9.mpd", + "name": "13. Test content with more than one periods." + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/10.mpd", + "name": "14. Test content with more than one periods." + }, { "url": "http://dash.edgesuite.net/dash264/TestCases/5b/nomor/11.mpd", "name": "15. Test content with more than one periods." @@ -571,568 +1120,75 @@ "name": "5. HEVC SINGLE RESOLUTION MULTI-RATE" }, { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/1b/10/tos_live_multirate_hvc.mpd", - "name": "6. HEVC SINGLE RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/1/TOS_OnDemand_HEVC_MultiRes.mpd", - "name": "1. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/2/BBB_OnDemand_HEVC_MultiRes.mpd", - "name": "2. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/11/tos_ondemand_multires_hvc.mpd", - "name": "3. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/12/tos_ondemand_multires_10bit_hev.mpd", - "name": "4. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/13/tos_ondemand_multires_10bit_hvc.mpd", - "name": "5. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/1/TOS_Live_HEVC_MultiRes.mpd", - "name": "6. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/2/BBB_Live_HEVC_MultiRes.mpd", - "name": "7. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/14/tos_live_multires_hvc.mpd", - "name": "8. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/15/tos_live_multires_10bit_hev.mpd", - "name": "9. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/16/tos_live_multires_10bit_hvc.mpd", - "name": "10. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/17/bbb_live_multires_10bit_hev.mpd", - "name": "11. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/18/bbb_live_multires_10bit_hvc.mpd", - "name": "12. HEVC MULTI-RESOLUTION MULTI-RATE" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/1/1.mpd", - "name": "1. NEGATIVE - ESSENTIAL PROPERTY" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/1/2.mpd", - "name": "2. NEGATIVE - ESSENTIAL PROPERTY" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/2/1.mpd", - "name": "1. NEGATIVE - CONTENT PROTECTION" - }, - { - "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/2/2.mpd", - "name": "1. NEGATIVE - CONTENT PROTECTION" - } - ] - }, - { - "name": "CableLabs Test Content", - "submenu": [ - { - "name": "CableLabs Cenc Widevine", - "url": "http://html5.cablelabs.com:8100/cenc/wv/dash.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "https://html5.cablelabs.com:8025" - } - } - }, - { - "name": "CableLabs Cenc Widevine/ClearKey", - "url": "http://html5.cablelabs.com:8100/cenc/wvck/dash.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "https://html5.cablelabs.com:8025" - }, - "org.w3.clearkey": { - "clearkeys": { - "H3JbV93QV3mPNBKQON2UtQ": "ClKhDPHMtCouEx1vLGsJsA" - } - } - } - }, - { - "name": "CableLabs Cenc Widevine/ClearKey (InitData in MPD)", - "url": "http://html5.cablelabs.com:8100/cenc/wvck/dash_initdata.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "https://html5.cablelabs.com:8025" - }, - "org.w3.clearkey": { - "clearkeys": { - "H3JbV93QV3mPNBKQON2UtQ": "ClKhDPHMtCouEx1vLGsJsA" - } - } - } - }, - { - "name": "CableLabs Cenc PlayReady", - "url": "http://html5.cablelabs.com:8100/cenc/pr/dash.mpd" - }, - { - "name": "CableLabs Cenc PlayReady (InitData in MPD)", - "url": "http://html5.cablelabs.com:8100/cenc/pr/dash_initdata.mpd" - }, - { - "name": "CableLabs Cenc PR/WV", - "url": "http://html5.cablelabs.com:8100/cenc/prwv/dash.mpd", - "protData": { - "com.widevine.alpha": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", - "httpRequestHeaders": { - "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - }, - "com.microsoft.playready": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", - "httpRequestHeaders": { - "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - } - } - }, - { - "name": "CableLabs Cenc PR/WV (InitData in MPD)", - "url": "http://html5.cablelabs.com:8100/cenc/prwv/dash_init.mpd", - "protData": { - "com.widevine.alpha": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", - "httpRequestHeaders": { - "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - }, - "com.microsoft.playready": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", - "httpRequestHeaders": { - "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - } - } - }, - { - "name": "CableLabs Cenc PR/WV (2-Period, 2-Key)", - "url": "http://html5.cablelabs.com:8100/cenc/prwv_mp/dash.mpd", - "protData": { - "com.widevine.alpha": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-widevine/cenc/", - "httpRequestHeaders": { - "dt-custom-data": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - }, - "com.microsoft.playready": { - "drmtoday": true, - "serverURL": "https://lic.staging.drmtoday.com/license-proxy-headerauth/drmtoday/RightsManager.asmx", - "httpRequestHeaders": { - "http-header-CustomData": "eyJ1c2VySWQiOiIxMjM0NSIsInNlc3Npb25JZCI6ImV3b2dJQ0p3Y205bWFXeGxJaUE2SUhzS0lDQWdJQ0p3ZFhKamFHRnpaU0lnT2lCN0lIMEtJQ0I5TEFvZ0lDSnZkWFJ3ZFhSUWNtOTBaV04wYVc5dUlpQTZJSHNLSUNBZ0lDSmthV2RwZEdGc0lpQTZJR1poYkhObExBb2dJQ0FnSW1GdVlXeHZaM1ZsSWlBNklHWmhiSE5sTEFvZ0lDQWdJbVZ1Wm05eVkyVWlJRG9nWm1Gc2MyVUtJQ0I5TEFvZ0lDSnpkRzl5WlV4cFkyVnVjMlVpSURvZ1ptRnNjMlVLZlFvSyIsIm1lcmNoYW50IjoiY2FibGVsYWJzIn0K" - } - } - } - } - ] - }, - { - "name": "Axinom Test Content", - "submenu": [ - { - "name": "v7 encrypted single-key (1080p)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted single-key (4K)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted single-key (audio only)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiOWViNDA1MGQtZTQ0Yi00ODAyLTkzMmUtMjdkNzUwODNlMjY2IiwiZW5jcnlwdGVkX2tleSI6ImxLM09qSExZVzI0Y3Iya3RSNzRmbnc9PSJ9XX19.4lWwW46k-oWcah8oN18LPj5OLS5ZU-_AQv7fe0JhNjA" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key (1080p)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key (4K)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key (audio only)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey/Manifest_AudioOnly.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiODAzOTliZjUtOGEyMS00MDE0LTgwNTMtZTI3ZTc0OGU5OGMwIiwiZW5jcnlwdGVkX2tleSI6ImxpTkpxVmFZa05oK01LY3hKRms3SWc9PSJ9LHsiaWQiOiI5MDk1M2UwOS02Y2IyLTQ5YTMtYTI2MC03YTVmZWZlYWQ0OTkiLCJlbmNyeXB0ZWRfa2V5Ijoia1l0SEh2cnJmQ01lVmRKNkxrYmtuZz09In0seyJpZCI6IjBlNGRhOTJiLWQwZTgtNGE2Ni04YzNmLWMyNWE5N2ViNjUzMiIsImVuY3J5cHRlZF9rZXkiOiI3dzdOWkhITE1nSjRtUUtFSzVMVE1RPT0ifSx7ImlkIjoiNTg1ZjIzM2YtMzA3Mi00NmYxLTlmYTQtNmRjMjJjNjZhMDE0IiwiZW5jcnlwdGVkX2tleSI6IkFjNFVVbVl0Qko1blBROU4xNXJjM2c9PSJ9LHsiaWQiOiI0MjIyYmQ3OC1iYzQ1LTQxYmYtYjYzZS02ZjgxNGRjMzkxZGYiLCJlbmNyeXB0ZWRfa2V5IjoiTzZGTzBmcVNXb3BwN2JqYy9ENGxNQT09In1dfX0.uF6YlKAREOmbniAeYiH070HSJhV0YS7zSKjlCtiDR5Y" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key multi-period (1080p)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key multi-period (4K)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 encrypted multi-key multi-period (audio only)", - "url": "http://media.axprod.net/TestVectors/v7-MultiDRM-MultiKey-MultiPeriod/Manifest_AudioOnly.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiYjMzNjRlYjUtNTFmNi00YWUzLThjOTgtMzNjZWQ1ZTMxYzc4IiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMDg3Mjc4NmUtZjllNy00NjVmLWEzYTItNGU1YjBlZjhmYTQ1IiwiZW5jcnlwdGVkX2tleSI6IlB3NitlRVlOY3ZqWWJmc2gzWDNmbWc9PSJ9LHsiaWQiOiJjMTRmMDcwOS1mMmI5LTQ0MjctOTE2Yi02MWI1MjU4NjUwNmEiLCJlbmNyeXB0ZWRfa2V5IjoiLzErZk5paDM4bXFSdjR5Y1l6bnQvdz09In0seyJpZCI6IjhiMDI5ZTUxLWQ1NmEtNDRiZC05MTBmLWQ0YjVmZDkwZmJhMiIsImVuY3J5cHRlZF9rZXkiOiJrcTBKdVpFanBGTjhzYVRtdDU2ME9nPT0ifSx7ImlkIjoiMmQ2ZTkzODctNjBjYS00MTQ1LWFlYzItYzQwODM3YjRiMDI2IiwiZW5jcnlwdGVkX2tleSI6IlRjUlFlQld4RW9IT0tIcmFkNFNlVlE9PSJ9LHsiaWQiOiJkZTAyZjA3Zi1hMDk4LTRlZTAtYjU1Ni05MDdjMGQxN2ZiYmMiLCJlbmNyeXB0ZWRfa2V5IjoicG9lbmNTN0dnbWVHRmVvSjZQRUFUUT09In0seyJpZCI6IjkxNGU2OWY0LTBhYjMtNDUzNC05ZTlmLTk4NTM2MTVlMjZmNiIsImVuY3J5cHRlZF9rZXkiOiJlaUkvTXNsbHJRNHdDbFJUL0xObUNBPT0ifSx7ImlkIjoiZGE0NDQ1YzItZGI1ZS00OGVmLWIwOTYtM2VmMzQ3YjE2YzdmIiwiZW5jcnlwdGVkX2tleSI6IjJ3K3pkdnFycERWM3hSMGJKeTR1Z3c9PSJ9LHsiaWQiOiIyOWYwNWU4Zi1hMWFlLTQ2ZTQtODBlOS0yMmRjZDQ0Y2Q3YTEiLCJlbmNyeXB0ZWRfa2V5IjoiL3hsU0hweHdxdTNnby9nbHBtU2dhUT09In0seyJpZCI6IjY5ZmU3MDc3LWRhZGQtNGI1NS05NmNkLWMzZWRiMzk5MTg1MyIsImVuY3J5cHRlZF9rZXkiOiJ6dTZpdXpOMnBzaTBaU3hRaUFUa1JRPT0ifV19fQ.BXr93Et1krYMVs-CUnf7F3ywJWFRtxYdkR7Qn4w3-to" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - - { - "name": "v7 clear (1080p)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_1080p.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 clear (4K)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" - }, - { - "name": "v7 clear (audio only)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_AudioOnly.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/1b/10/tos_live_multirate_hvc.mpd", + "name": "6. HEVC SINGLE RESOLUTION MULTI-RATE" }, { - "name": "v7 clear multi-period (1080p)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod_1080p.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/1/TOS_OnDemand_HEVC_MultiRes.mpd", + "name": "1. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v7 clear multi-period (4K)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/2/BBB_OnDemand_HEVC_MultiRes.mpd", + "name": "2. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v7 clear multi-period (audio only)", - "url": "http://media.axprod.net/TestVectors/v7-Clear/Manifest_MultiPeriod_AudioOnly.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/11/tos_ondemand_multires_hvc.mpd", + "name": "3. HEVC MULTI-RESOLUTION MULTI-RATE" }, - { - "name": "v6 encrypted (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/12/tos_ondemand_multires_10bit_hev.mpd", + "name": "4. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted (4K)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2a/13/tos_ondemand_multires_10bit_hvc.mpd", + "name": "5. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with generic EME PSSH (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-GenericEmePssh/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/1/TOS_Live_HEVC_MultiRes.mpd", + "name": "6. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with generic EME PSSH (4K)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-GenericEmePssh/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNmU1YTFkMjYtMjc1Ny00N2Q3LTgwNDYtZWFhNWQxZDM0YjVhIn1dfX0.yF7PflOPv9qHnu3ZWJNZ12jgkqTabmwXbDWk_47tLNE" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/2/BBB_Live_HEVC_MultiRes.mpd", + "name": "7. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with multiple keys (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/14/tos_live_multires_hvc.mpd", + "name": "8. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with multiple keys (4K)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiMTUzMGQzYTAtNjkwNC00NDZhLTkxYTEtMzNhMTE1YWE4YzQxIn0seyJpZCI6ImM4M2ViNjM5LWU2NjQtNDNmOC1hZTk4LTQwMzliMGMxM2IyZCJ9LHsiaWQiOiIzZDhjYzc2Mi0yN2FjLTQwMGYtOTg5Zi04YWI1ZGM3ZDc3NzUifSx7ImlkIjoiYmQ4ZGFkNTgtMDMyZC00YzI1LTg5ZmEtYzdiNzEwZTgyYWMyIn1dfX0.9t18lFmZFVHMzpoZxYDyqOS0Bk_evGhTBw_F2JnAK2k" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/15/tos_live_multires_10bit_hev.mpd", + "name": "9. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with multiple keys and multiple periods (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey-MultiPeriod/Manifest_1080p.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/16/tos_live_multires_10bit_hvc.mpd", + "name": "10. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 encrypted with multiple keys and multiple periods (4K)", - "url": "http://media.axprod.net/TestVectors/v6-MultiDRM-MultiKey-MultiPeriod/Manifest.mpd", - "protData": { - "com.widevine.alpha": { - "serverURL": "http://drm-widevine-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" - } - }, - "com.microsoft.playready": { - "serverURL": "http://drm-playready-licensing.axtest.net/AcquireLicense", - "httpRequestHeaders": { - "X-AxDRM-Message": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ2ZXJzaW9uIjoxLCJjb21fa2V5X2lkIjoiNjllNTQwODgtZTllMC00NTMwLThjMWEtMWViNmRjZDBkMTRlIiwibWVzc2FnZSI6eyJ0eXBlIjoiZW50aXRsZW1lbnRfbWVzc2FnZSIsImtleXMiOlt7ImlkIjoiNTNiZTc3NTctNzI4OC00YjZiLWIyMGEtZjA1YjY0YTRlZjc5In0seyJpZCI6IjBlZDgyMWE4LTgwZWQtNDBhYy1hODA0LTkyN2M5ZmRhZGJlOSJ9LHsiaWQiOiJlNDdkNzhjYS05NGRjLTQ1ZmItOWUzZC0yYTc3M2FlZjc0YjIifSx7ImlkIjoiMzJhMTQxZTktMjNhYi00NGZmLWE2YzctNTM0OWM4OTQ1MWNmIn0seyJpZCI6IjhkMDkxOTY2LTQ0YjUtNGNmOC04YTQ1LWVkMTJmZGIxOGQzNSJ9XX19.9YSK6QsDr4SYR7Q74ftq9mVtsT0ZkP3STE0zI-3mVIA" - } - } - }, - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/17/bbb_live_multires_10bit_hev.mpd", + "name": "11. HEVC MULTI-RESOLUTION MULTI-RATE" }, - { - "name": "v6 clear (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-Clear/Manifest_1080p.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesHEVC/2b/18/bbb_live_multires_10bit_hvc.mpd", + "name": "12. HEVC MULTI-RESOLUTION MULTI-RATE" }, { - "name": "v6 clear (4K)", - "url": "http://media.axprod.net/TestVectors/v6-Clear/Manifest.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/1/1.mpd", + "name": "1. NEGATIVE - ESSENTIAL PROPERTY" }, { - "name": "v6 clear multi-period (1080p)", - "url": "http://media.axprod.net/TestVectors/v6-Clear/MultiPeriod_Manifest_1080p.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/1/2.mpd", + "name": "2. NEGATIVE - ESSENTIAL PROPERTY" }, { - "name": "v6 clear multi-period (4K)", - "url": "http://media.axprod.net/TestVectors/v6-Clear/MultiPeriod_Manifest.mpd", - "moreInfo": "https://github.com/Axinom/dash-test-vectors/commit/e689891faf4845ff80137b22a731db13350652df" + "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/2/1.mpd", + "name": "1. NEGATIVE - CONTENT PROTECTION" + }, + { + "url": "http://dash.edgesuite.net/dash264/TestCasesNegative/2/2.mpd", + "name": "1. NEGATIVE - CONTENT PROTECTION" } ] }, - - { "name": "BBC R&D Test Content", "submenu": [ @@ -1294,64 +1350,6 @@ } ] }, - { - "name": "Subtitles and Captions", - "submenu": [ - { - "name": "TTML Segmented Subtitles VoD", - "url": "http://vm2.dashif.org/dash/vod/testpic_2s/multi_subs.mpd" - }, - { - "name": "TTML Segmented Subtitles Live (livesim)", - "url": "http://vm2.dashif.org/livesim/testpic_2s/multi_subs.mpd" - }, - { - "name": "TTML Sideloaded XML Subtitles", - "url": "http://vm2.dashif.org/dash/vod/testpic_2s/xml_subs.mpd" - }, - { - "name": "Embedded CEA-608 Closed Captions and TTML segments VoD", - "url": "http://vm2.dashif.org/dash/vod/testpic_2s/cea608_and_segs.mpd" - }, - { - "name": "Embedded CEA-608 Closed Captions and TTML segments Live (livesim)", - "url": "http://vm2.dashif.org/livesim/testpic_2s/cea608_and_segs.mpd" - }, - { - "name": "TTML Segmented 'snaking' subtitles (with random text) (Ondemand)", - "url": "http://rdmedia.bbc.co.uk/dash/ondemand/elephants_dream/1/client_manifest-snake.mpd", - "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/elephants_dream/" - }, - { - "name": "TTML Image Subtitles embedded (VoD)", - "url": "http://vm2.dashif.org/dash/vod/testpic_2s/img_subs.mpd", - "moreInfo": "http://vm2.dashif.org/dash/vod/testpic_2s/img_subs_info.txt" - } - ] - }, - { - "name": "Audio-only", - "submenu": [ - { - "name": "48k AAC-LC Stereo Beeps (Live)", - "url": "http://vm2.dashif.org/livesim/testpic_2s/audio.mpd" - }, - { - "name": "48k AAC-LC Stereo Beeps (Ondemand)", - "url": "http://vm2.dashif.org/dash/vod/testpic_2s/audio.mpd" - }, - { - "name": "128k AAC-LC Stereo 1kHz Tone (Ondemand)", - "url": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/1/client_manifest-audio-1kHz.mpd", - "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/" - }, - { - "name": "128k/320k AAC-LC Stereo/5.1 'Testcard' (Ondemand)", - "url": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/1/client_manifest-audio.mpd", - "moreInfo": "http://rdmedia.bbc.co.uk/dash/ondemand/testcard/" - } - ] - }, { "name": "Other samples", "submenu": [