commit e8a0b2ba4291ae6c0b9750c41b8035e0d8f6f645 Author: Dima Gordenko <1.e4.kc6@gmail.com> Date: Tue Jul 21 03:49:47 2026 +0300 1st diff --git a/1xbet b/1xbet new file mode 100755 index 0000000..f511635 --- /dev/null +++ b/1xbet @@ -0,0 +1 @@ +var vendor_ee9dd7101dda52b7d05c=function(t){var e={};function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)n.d(r,o,function(e){return t[e]}.bind(null,o));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=21)}([function(t,e,n){"use strict";var r=n(11),o=Object.prototype.toString;function i(t){return"[object Array]"===o.call(t)}function a(t){return void 0===t}function s(t){return null!==t&&"object"==typeof t}function l(t){return"[object Function]"===o.call(t)}function c(t,e){if(null!=t)if("object"!=typeof t&&(t=[t]),i(t))for(var n=0,r=t.length;n0&&e.forEach((function(t){o.remove(t)})),o.appendTo(n.scrollbarXRail,t)),t.contains(n.scrollbarYRail)||((e=o.queryChildren(t,".ps__scrollbar-y-rail")).length>0&&e.forEach((function(t){o.remove(t)})),o.appendTo(n.scrollbarYRail,t)),!n.settings.suppressScrollX&&n.containerWidth+n.settings.scrollXMarginOffset=n.railXWidth-n.scrollbarXWidth&&(n.scrollbarXLeft=n.railXWidth-n.scrollbarXWidth),n.scrollbarYTop>=n.railYHeight-n.scrollbarYHeight&&(n.scrollbarYTop=n.railYHeight-n.scrollbarYHeight),function(t,e){var n={width:e.railXWidth};e.isRtl?n.left=e.negativeScrollAdjustment+t.scrollLeft+e.containerWidth-e.contentWidth:n.left=t.scrollLeft,e.isScrollbarXUsingBottom?n.bottom=e.scrollbarXBottom-t.scrollTop:n.top=e.scrollbarXTop+t.scrollTop,o.css(e.scrollbarXRail,n);var r={top:t.scrollTop,height:e.railYHeight};e.isScrollbarYUsingRight?e.isRtl?r.right=e.contentWidth-(e.negativeScrollAdjustment+t.scrollLeft)-e.scrollbarYRight-e.scrollbarYOuterWidth:r.right=e.scrollbarYRight-t.scrollLeft:e.isRtl?r.left=e.negativeScrollAdjustment+t.scrollLeft+2*e.containerWidth-e.contentWidth-e.scrollbarYLeft-e.scrollbarYOuterWidth:r.left=e.scrollbarYLeft+t.scrollLeft,o.css(e.scrollbarYRail,r),o.css(e.scrollbarX,{left:e.scrollbarXLeft,width:e.scrollbarXWidth-e.railBorderXWidth}),o.css(e.scrollbarY,{top:e.scrollbarYTop,height:e.scrollbarYHeight-e.railBorderYWidth})}(t,n),n.scrollbarXActive?t.classList.add("ps--active-x"):(t.classList.remove("ps--active-x"),n.scrollbarXWidth=0,n.scrollbarXLeft=0,a(t,"left",0)),n.scrollbarYActive?t.classList.add("ps--active-y"):(t.classList.remove("ps--active-y"),n.scrollbarYHeight=0,n.scrollbarYTop=0,a(t,"top",0))}},function(t,e,n){"use strict";var r=n(5),o=e.toInt=function(t){return parseInt(t,10)||0};function i(t){return["ps--in-scrolling"].concat(void 0===t?["ps--x","ps--y"]:["ps--"+t])}e.isEditable=function(t){return r.matches(t,"input,[contenteditable]")||r.matches(t,"select,[contenteditable]")||r.matches(t,"textarea,[contenteditable]")||r.matches(t,"button,[contenteditable]")},e.removePsClasses=function(t){for(var e=0;e=i.contentHeight-i.containerHeight&&((n=i.contentHeight-i.containerHeight)-t.scrollTop<=2?n=t.scrollTop:t.scrollTop=n,t.dispatchEvent(o("ps-y-reach-end"))),"left"===e&&n>=i.contentWidth-i.containerWidth&&((n=i.contentWidth-i.containerWidth)-t.scrollLeft<=2?n=t.scrollLeft:t.scrollLeft=n,t.dispatchEvent(o("ps-x-reach-end"))),void 0===i.lastTop&&(i.lastTop=t.scrollTop),void 0===i.lastLeft&&(i.lastLeft=t.scrollLeft),"top"===e&&ni.lastTop&&t.dispatchEvent(o("ps-scroll-down")),"left"===e&&ni.lastLeft&&t.dispatchEvent(o("ps-scroll-right")),"top"===e&&n!==i.lastTop&&(t.scrollTop=i.lastTop=n,t.dispatchEvent(o("ps-scroll-y"))),"left"===e&&n!==i.lastLeft&&(t.scrollLeft=i.lastLeft=n,t.dispatchEvent(o("ps-scroll-x")))}},function(t,e,n){"use strict";var r={};r.create=function(t,e){var n=document.createElement(t);return n.className=e,n},r.appendTo=function(t,e){return e.appendChild(t),t},r.css=function(t,e,n){return"object"==typeof e?function(t,e){for(var n in e){var r=e[n];"number"==typeof r&&(r=r.toString()+"px"),t.style[n]=r}return t}(t,e):void 0===n?function(t,e){return window.getComputedStyle(t)[e]}(t,e):function(t,e,n){return"number"==typeof n&&(n=n.toString()+"px"),t.style[e]=n,t}(t,e,n)},r.matches=function(t,e){return void 0!==t.matches?t.matches(e):t.msMatchesSelector(e)},r.remove=function(t){void 0!==t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)},r.queryChildren=function(t,e){return Array.prototype.filter.call(t.childNodes,(function(t){return r.matches(t,e)}))},t.exports=r},function(t,e,n){t.exports=n(63)},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e){function n(t,e,n,r,o,i,a){try{var s=t[i](a),l=s.value}catch(t){return void n(t)}s.done?e(l):Promise.resolve(l).then(r,o)}t.exports=function(t){return function(){var e=this,r=arguments;return new Promise((function(o,i){var a=t.apply(e,r);function s(t){n(a,o,i,s,l,"next",t)}function l(t){n(a,o,i,s,l,"throw",t)}s(void 0)}))}}},function(t,e,n){t.exports=n(27)},function(t,e){var n,r,o=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(t){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var l,c=[],u=!1,f=-1;function p(){u&&l&&(u=!1,l.length?c=l.concat(c):f=-1,c.length&&d())}function d(){if(!u){var t=s(p);u=!0;for(var e=c.length;e;){for(l=c,c=[];++f1)for(var n=1;n=200&&t<300}};l.headers={common:{Accept:"application/json, text/plain, */*"}},r.forEach(["delete","get","head"],(function(t){l.headers[t]={}})),r.forEach(["post","put","patch"],(function(t){l.headers[t]=r.merge(i)})),t.exports=l}).call(this,n(10))},function(t,e,n){"use strict";var r=n(0),o=n(33),i=n(12),a=n(35),s=n(38),l=n(39),c=n(16);t.exports=function(t){return new Promise((function(e,u){var f=t.data,p=t.headers;r.isFormData(f)&&delete p["Content-Type"];var d=new XMLHttpRequest;if(t.auth){var h=t.auth.username||"",m=t.auth.password||"";p.Authorization="Basic "+btoa(h+":"+m)}var v=a(t.baseURL,t.url);if(d.open(t.method.toUpperCase(),i(v,t.params,t.paramsSerializer),!0),d.timeout=t.timeout,d.onreadystatechange=function(){if(d&&4===d.readyState&&(0!==d.status||d.responseURL&&0===d.responseURL.indexOf("file:"))){var n="getAllResponseHeaders"in d?s(d.getAllResponseHeaders()):null,r={data:t.responseType&&"text"!==t.responseType?d.response:d.responseText,status:d.status,statusText:d.statusText,headers:n,config:t,request:d};o(e,u,r),d=null}},d.onabort=function(){d&&(u(c("Request aborted",t,"ECONNABORTED",d)),d=null)},d.onerror=function(){u(c("Network Error",t,null,d)),d=null},d.ontimeout=function(){var e="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),u(c(e,t,"ECONNABORTED",d)),d=null},r.isStandardBrowserEnv()){var g=n(40),y=(t.withCredentials||l(v))&&t.xsrfCookieName?g.read(t.xsrfCookieName):void 0;y&&(p[t.xsrfHeaderName]=y)}if("setRequestHeader"in d&&r.forEach(p,(function(t,e){void 0===f&&"content-type"===e.toLowerCase()?delete p[e]:d.setRequestHeader(e,t)})),r.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),t.responseType)try{d.responseType=t.responseType}catch(e){if("json"!==t.responseType)throw e}"function"==typeof t.onDownloadProgress&&d.addEventListener("progress",t.onDownloadProgress),"function"==typeof t.onUploadProgress&&d.upload&&d.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then((function(t){d&&(d.abort(),u(t),d=null)})),void 0===f&&(f=null),d.send(f)}))}},function(t,e,n){"use strict";var r=n(34);t.exports=function(t,e,n,o,i){var a=new Error(t);return r(a,e,n,o,i)}},function(t,e,n){"use strict";var r=n(0);t.exports=function(t,e){e=e||{};var n={},o=["url","method","params","data"],i=["headers","auth","proxy"],a=["baseURL","url","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"];r.forEach(o,(function(t){void 0!==e[t]&&(n[t]=e[t])})),r.forEach(i,(function(o){r.isObject(e[o])?n[o]=r.deepMerge(t[o],e[o]):void 0!==e[o]?n[o]=e[o]:r.isObject(t[o])?n[o]=r.deepMerge(t[o]):void 0!==t[o]&&(n[o]=t[o])})),r.forEach(a,(function(r){void 0!==e[r]?n[r]=e[r]:void 0!==t[r]&&(n[r]=t[r])}));var s=o.concat(i).concat(a),l=Object.keys(e).filter((function(t){return-1===s.indexOf(t)}));return r.forEach(l,(function(r){void 0!==e[r]?n[r]=e[r]:void 0!==t[r]&&(n[r]=t[r])})),n}},function(t,e,n){"use strict";function r(t){this.message=t}r.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},r.prototype.__CANCEL__=!0,t.exports=r},function(t,e){t.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}},function(t,e){function n(t,e){for(var n=0;n=0&&Math.floor(e)===e&&isFinite(t)}function f(t){return o(t)&&"function"==typeof t.then&&"function"==typeof t.catch}function p(t){return null==t?"":Array.isArray(t)||c(t)&&t.toString===l?JSON.stringify(t,null,2):String(t)}function d(t){var e=parseFloat(t);return isNaN(e)?t:e}function h(t,e){for(var n=Object.create(null),r=t.split(","),o=0;o-1)return t.splice(n,1)}}var y=Object.prototype.hasOwnProperty;function b(t,e){return y.call(t,e)}function w(t){var e=Object.create(null);return function(n){return e[n]||(e[n]=t(n))}}var x=/-(\w)/g,_=w((function(t){return t.replace(x,(function(t,e){return e?e.toUpperCase():""}))})),k=w((function(t){return t.charAt(0).toUpperCase()+t.slice(1)})),S=/\B([A-Z])/g,C=w((function(t){return t.replace(S,"-$1").toLowerCase()})),T=Function.prototype.bind?function(t,e){return t.bind(e)}:function(t,e){function n(n){var r=arguments.length;return r?r>1?t.apply(e,arguments):t.call(e,n):t.call(e)}return n._length=t.length,n};function O(t,e){e=e||0;for(var n=t.length-e,r=new Array(n);n--;)r[n]=t[n+e];return r}function E(t,e){for(var n in e)t[n]=e[n];return t}function A(t){for(var e={},n=0;n0,J=q&&q.indexOf("edge/")>0,Z=(q&&q.indexOf("android"),q&&/iphone|ipad|ipod|ios/.test(q)||"ios"===U),Q=(q&&/chrome\/\d+/.test(q),q&&/phantomjs/.test(q),q&&q.match(/firefox\/(\d+)/)),tt={}.watch,et=!1;if(V)try{var nt={};Object.defineProperty(nt,"passive",{get:function(){et=!0}}),window.addEventListener("test-passive",null,nt)}catch(t){}var rt=function(){return void 0===X&&(X=!V&&!z&&void 0!==e&&e.process&&"server"===e.process.env.VUE_ENV),X},ot=V&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function it(t){return"function"==typeof t&&/native code/.test(t.toString())}var at,st="undefined"!=typeof Symbol&&it(Symbol)&&"undefined"!=typeof Reflect&&it(Reflect.ownKeys);at="undefined"!=typeof Set&&it(Set)?Set:function(){function t(){this.set=Object.create(null)}return t.prototype.has=function(t){return!0===this.set[t]},t.prototype.add=function(t){this.set[t]=!0},t.prototype.clear=function(){this.set=Object.create(null)},t}();var lt=L,ct=0,ut=function(){this.id=ct++,this.subs=[]};ut.prototype.addSub=function(t){this.subs.push(t)},ut.prototype.removeSub=function(t){g(this.subs,t)},ut.prototype.depend=function(){ut.target&&ut.target.addDep(this)},ut.prototype.notify=function(){for(var t=this.subs.slice(),e=0,n=t.length;e-1)if(i&&!b(o,"default"))a=!1;else if(""===a||a===C(t)){var l=Bt(String,o.type);(l<0||s0&&(ce((l=t(l,(n||"")+"_"+s))[0])&&ce(u)&&(f[c]=gt(u.text+l[0].text),l.shift()),f.push.apply(f,l)):a(l)?ce(u)?f[c]=gt(u.text+l):""!==l&&f.push(gt(l)):ce(l)&&ce(u)?f[c]=gt(u.text+l.text):(i(e._isVList)&&o(l.tag)&&r(l.key)&&o(n)&&(l.key="__vlist"+n+"_"+s+"__"),f.push(l)));return f}(t):void 0}function ce(t){return o(t)&&o(t.text)&&!1===t.isComment}function ue(t,e){if(t){for(var n=Object.create(null),r=st?Reflect.ownKeys(t):Object.keys(t),o=0;o0,a=e?!!e.$stable:!i,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(a&&r&&r!==t&&s===r.$key&&!i&&!r.$hasNormal)return r;for(var l in o={},e)e[l]&&"$"!==l[0]&&(o[l]=he(n,l,e[l]))}else o={};for(var c in n)c in o||(o[c]=me(n,c));return e&&Object.isExtensible(e)&&(e._normalized=o),Y(o,"$stable",a),Y(o,"$key",s),Y(o,"$hasNormal",i),o}function he(t,e,n){var r=function(){var t=arguments.length?n.apply(null,arguments):n({});return(t=t&&"object"==typeof t&&!Array.isArray(t)?[t]:le(t))&&(0===t.length||1===t.length&&t[0].isComment)?void 0:t};return n.proxy&&Object.defineProperty(t,e,{get:r,enumerable:!0,configurable:!0}),r}function me(t,e){return function(){return t[e]}}function ve(t,e){var n,r,i,a,l;if(Array.isArray(t)||"string"==typeof t)for(n=new Array(t.length),r=0,i=t.length;rdocument.createEvent("Event").timeStamp&&(sn=function(){return ln.now()})}function cn(){var t,e;for(an=sn(),rn=!0,Qe.sort((function(t,e){return t.id-e.id})),on=0;onon&&Qe[n].id>t.id;)n--;Qe.splice(n+1,0,t)}else Qe.push(t);nn||(nn=!0,te(cn))}}(this)},fn.prototype.run=function(){if(this.active){var t=this.get();if(t!==this.value||s(t)||this.deep){var e=this.value;if(this.value=t,this.user)try{this.cb.call(this.vm,t,e)}catch(t){Yt(t,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,t,e)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var t=this.deps.length;t--;)this.deps[t].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||g(this.vm._watchers,this);for(var t=this.deps.length;t--;)this.deps[t].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:L,set:L};function dn(t,e,n){pn.get=function(){return this[e][n]},pn.set=function(t){this[e][n]=t},Object.defineProperty(t,n,pn)}var hn={lazy:!0};function mn(t,e,n){var r=!rt();"function"==typeof n?(pn.get=r?vn(e):gn(n),pn.set=L):(pn.get=n.get?r&&!1!==n.cache?vn(e):gn(n.get):L,pn.set=n.set||L),Object.defineProperty(t,e,pn)}function vn(t){return function(){var e=this._computedWatchers&&this._computedWatchers[t];if(e)return e.dirty&&e.evaluate(),ut.target&&e.depend(),e.value}}function gn(t){return function(){return t.call(this,this)}}function yn(t,e,n,r){return c(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=t[n]),t.$watch(e,n,r)}var bn=0;function wn(t){var e=t.options;if(t.super){var n=wn(t.super);if(n!==t.superOptions){t.superOptions=n;var r=function(t){var e,n=t.options,r=t.sealedOptions;for(var o in n)n[o]!==r[o]&&(e||(e={}),e[o]=n[o]);return e}(t);r&&E(t.extendOptions,r),(e=t.options=Mt(n,t.extendOptions)).name&&(e.components[e.name]=t)}}return e}function xn(t){this._init(t)}function _n(t){return t&&(t.Ctor.options.name||t.tag)}function kn(t,e){return Array.isArray(t)?t.indexOf(e)>-1:"string"==typeof t?t.split(",").indexOf(e)>-1:(n=t,"[object RegExp]"===l.call(n)&&t.test(e));var n}function Sn(t,e){var n=t.cache,r=t.keys,o=t._vnode;for(var i in n){var a=n[i];if(a){var s=_n(a.componentOptions);s&&!e(s)&&Cn(n,i,r,o)}}}function Cn(t,e,n,r){var o=t[e];!o||r&&o.tag===r.tag||o.componentInstance.$destroy(),t[e]=null,g(n,e)}!function(e){e.prototype._init=function(e){var n=this;n._uid=bn++,n._isVue=!0,e&&e._isComponent?function(t,e){var n=t.$options=Object.create(t.constructor.options),r=e._parentVnode;n.parent=e.parent,n._parentVnode=r;var o=r.componentOptions;n.propsData=o.propsData,n._parentListeners=o.listeners,n._renderChildren=o.children,n._componentTag=o.tag,e.render&&(n.render=e.render,n.staticRenderFns=e.staticRenderFns)}(n,e):n.$options=Mt(wn(n.constructor),e||{},n),n._renderProxy=n,n._self=n,function(t){var e=t.$options,n=e.parent;if(n&&!e.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(t)}t.$parent=n,t.$root=n?n.$root:t,t.$children=[],t.$refs={},t._watcher=null,t._inactive=null,t._directInactive=!1,t._isMounted=!1,t._isDestroyed=!1,t._isBeingDestroyed=!1}(n),function(t){t._events=Object.create(null),t._hasHookEvent=!1;var e=t.$options._parentListeners;e&&Ue(t,e)}(n),function(e){e._vnode=null,e._staticTrees=null;var n=e.$options,r=e.$vnode=n._parentVnode,o=r&&r.context;e.$slots=fe(n._renderChildren,o),e.$scopedSlots=t,e._c=function(t,n,r,o){return Ne(e,t,n,r,o,!1)},e.$createElement=function(t,n,r,o){return Ne(e,t,n,r,o,!0)};var i=r&&r.data;Tt(e,"$attrs",i&&i.attrs||t,null,!0),Tt(e,"$listeners",n._parentListeners||t,null,!0)}(n),Ze(n,"beforeCreate"),function(t){var e=ue(t.$options.inject,t);e&&(kt(!1),Object.keys(e).forEach((function(n){Tt(t,n,e[n])})),kt(!0))}(n),function(t){t._watchers=[];var e=t.$options;e.props&&function(t,e){var n=t.$options.propsData||{},r=t._props={},o=t.$options._propKeys=[];t.$parent&&kt(!1);var i=function(i){o.push(i);var a=Ht(i,e,n,t);Tt(r,i,a),i in t||dn(t,"_props",i)};for(var a in e)i(a);kt(!0)}(t,e.props),e.methods&&function(t,e){for(var n in t.$options.props,e)t[n]="function"!=typeof e[n]?L:T(e[n],t)}(t,e.methods),e.data?function(t){var e=t.$options.data;c(e=t._data="function"==typeof e?function(t,e){pt();try{return t.call(e,e)}catch(t){return Yt(t,e,"data()"),{}}finally{dt()}}(e,t):e||{})||(e={});for(var n,r=Object.keys(e),o=t.$options.props,i=(t.$options.methods,r.length);i--;){var a=r[i];o&&b(o,a)||36!==(n=(a+"").charCodeAt(0))&&95!==n&&dn(t,"_data",a)}Ct(e,!0)}(t):Ct(t._data={},!0),e.computed&&function(t,e){var n=t._computedWatchers=Object.create(null),r=rt();for(var o in e){var i=e[o],a="function"==typeof i?i:i.get;r||(n[o]=new fn(t,a||L,L,hn)),o in t||mn(t,o,i)}}(t,e.computed),e.watch&&e.watch!==tt&&function(t,e){for(var n in e){var r=e[n];if(Array.isArray(r))for(var o=0;o1?O(e):e;for(var n=O(arguments,1),r='event handler for "'+t+'"',o=0,i=e.length;oparseInt(this.max)&&Cn(a,s[0],s,this._vnode)),e.data.keepAlive=!0}return e||t&&t[0]}}};!function(t){var e={get:function(){return D}};Object.defineProperty(t,"config",e),t.util={warn:lt,extend:E,mergeOptions:Mt,defineReactive:Tt},t.set=Ot,t.delete=Et,t.nextTick=te,t.observable=function(t){return Ct(t),t},t.options=Object.create(null),H.forEach((function(e){t.options[e+"s"]=Object.create(null)})),t.options._base=t,E(t.options.components,On),function(t){t.use=function(t){var e=this._installedPlugins||(this._installedPlugins=[]);if(e.indexOf(t)>-1)return this;var n=O(arguments,1);return n.unshift(this),"function"==typeof t.install?t.install.apply(t,n):"function"==typeof t&&t.apply(null,n),e.push(t),this}}(t),function(t){t.mixin=function(t){return this.options=Mt(this.options,t),this}}(t),function(t){t.cid=0;var e=1;t.extend=function(t){t=t||{};var n=this,r=n.cid,o=t._Ctor||(t._Ctor={});if(o[r])return o[r];var i=t.name||n.options.name,a=function(t){this._init(t)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=e++,a.options=Mt(n.options,t),a.super=n,a.options.props&&function(t){var e=t.options.props;for(var n in e)dn(t.prototype,"_props",n)}(a),a.options.computed&&function(t){var e=t.options.computed;for(var n in e)mn(t.prototype,n,e[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,H.forEach((function(t){a[t]=n[t]})),i&&(a.options.components[i]=a),a.superOptions=n.options,a.extendOptions=t,a.sealedOptions=E({},a.options),o[r]=a,a}}(t),function(t){H.forEach((function(e){t[e]=function(t,n){return n?("component"===e&&c(n)&&(n.name=n.name||t,n=this.options._base.extend(n)),"directive"===e&&"function"==typeof n&&(n={bind:n,update:n}),this.options[e+"s"][t]=n,n):this.options[e+"s"][t]}}))}(t)}(xn),Object.defineProperty(xn.prototype,"$isServer",{get:rt}),Object.defineProperty(xn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(xn,"FunctionalRenderContext",{value:$e}),xn.version="2.6.10";var En=h("style,class"),An=h("input,textarea,option,select,progress"),Ln=function(t,e,n){return"value"===n&&An(t)&&"button"!==e||"selected"===n&&"option"===t||"checked"===n&&"input"===t||"muted"===n&&"video"===t},$n=h("contenteditable,draggable,spellcheck"),Pn=h("events,caret,typing,plaintext-only"),Rn=h("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),jn="http://www.w3.org/1999/xlink",Mn=function(t){return":"===t.charAt(5)&&"xlink"===t.slice(0,5)},In=function(t){return Mn(t)?t.slice(6,t.length):""},Hn=function(t){return null==t||!1===t};function Nn(t,e){return{staticClass:Dn(t.staticClass,e.staticClass),class:o(t.class)?[t.class,e.class]:e.class}}function Dn(t,e){return t?e?t+" "+e:t:e||""}function Bn(t){return Array.isArray(t)?function(t){for(var e,n="",r=0,i=t.length;r-1?fr(t,e,n):Rn(e)?Hn(n)?t.removeAttribute(e):(n="allowfullscreen"===e&&"EMBED"===t.tagName?"true":e,t.setAttribute(e,n)):$n(e)?t.setAttribute(e,function(t,e){return Hn(e)||"false"===e?"false":"contenteditable"===t&&Pn(e)?e:"true"}(e,n)):Mn(e)?Hn(n)?t.removeAttributeNS(jn,In(e)):t.setAttributeNS(jn,e,n):fr(t,e,n)}function fr(t,e,n){if(Hn(n))t.removeAttribute(e);else{if(K&&!G&&"TEXTAREA"===t.tagName&&"placeholder"===e&&""!==n&&!t.__ieph){var r=function(e){e.stopImmediatePropagation(),t.removeEventListener("input",r)};t.addEventListener("input",r),t.__ieph=!0}t.setAttribute(e,n)}}var pr={create:cr,update:cr};function dr(t,e){var n=e.elm,i=e.data,a=t.data;if(!(r(i.staticClass)&&r(i.class)&&(r(a)||r(a.staticClass)&&r(a.class)))){var s=function(t){for(var e=t.data,n=t,r=t;o(r.componentInstance);)(r=r.componentInstance._vnode)&&r.data&&(e=Nn(r.data,e));for(;o(n=n.parent);)n&&n.data&&(e=Nn(e,n.data));return function(t,e){return o(t)||o(e)?Dn(t,Bn(e)):""}(e.staticClass,e.class)}(e),l=n._transitionClasses;o(l)&&(s=Dn(s,Bn(l))),s!==n._prevClass&&(n.setAttribute("class",s),n._prevClass=s)}}var hr,mr,vr,gr,yr,br,wr={create:dr,update:dr},xr=/[\w).+\-_$\]]/;function _r(t){var e,n,r,o,i,a=!1,s=!1,l=!1,c=!1,u=0,f=0,p=0,d=0;for(r=0;r=0&&" "===(m=t.charAt(h));h--);m&&xr.test(m)||(c=!0)}}else void 0===o?(d=r+1,o=t.slice(0,r).trim()):v();function v(){(i||(i=[])).push(t.slice(d,r).trim()),d=r+1}if(void 0===o?o=t.slice(0,r).trim():0!==d&&v(),i)for(r=0;r-1?{exp:t.slice(0,gr),key:'"'+t.slice(gr+1)+'"'}:{exp:t,key:null};for(mr=t,gr=yr=br=0;!Dr();)Br(vr=Nr())?Xr(vr):91===vr&&Yr(vr);return{exp:t.slice(0,yr),key:t.slice(yr+1,br)}}(t);return null===n.key?t+"="+e:"$set("+n.exp+", "+n.key+", "+e+")"}function Nr(){return mr.charCodeAt(++gr)}function Dr(){return gr>=hr}function Br(t){return 34===t||39===t}function Yr(t){var e=1;for(yr=gr;!Dr();)if(Br(t=Nr()))Xr(t);else if(91===t&&e++,93===t&&e--,0===e){br=gr;break}}function Xr(t){for(var e=t;!Dr()&&(t=Nr())!==e;);}var Wr,Fr="__r";function Vr(t,e,n){var r=Wr;return function o(){null!==e.apply(null,arguments)&&qr(t,o,n,r)}}var zr=zt&&!(Q&&Number(Q[1])<=53);function Ur(t,e,n,r){if(zr){var o=an,i=e;e=i._wrapper=function(t){if(t.target===t.currentTarget||t.timeStamp>=o||t.timeStamp<=0||t.target.ownerDocument!==document)return i.apply(this,arguments)}}Wr.addEventListener(t,e,et?{capture:n,passive:r}:n)}function qr(t,e,n,r){(r||Wr).removeEventListener(t,e._wrapper||e,n)}function Kr(t,e){if(!r(t.data.on)||!r(e.data.on)){var n=e.data.on||{},i=t.data.on||{};Wr=e.elm,function(t){if(o(t.__r)){var e=K?"change":"input";t[e]=[].concat(t.__r,t[e]||[]),delete t.__r}o(t.__c)&&(t.change=[].concat(t.__c,t.change||[]),delete t.__c)}(n),ie(n,i,Ur,qr,Vr,e.context),Wr=void 0}}var Gr,Jr={create:Kr,update:Kr};function Zr(t,e){if(!r(t.data.domProps)||!r(e.data.domProps)){var n,i,a=e.elm,s=t.data.domProps||{},l=e.data.domProps||{};for(n in o(l.__ob__)&&(l=e.data.domProps=E({},l)),s)n in l||(a[n]="");for(n in l){if(i=l[n],"textContent"===n||"innerHTML"===n){if(e.children&&(e.children.length=0),i===s[n])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===n&&"PROGRESS"!==a.tagName){a._value=i;var c=r(i)?"":String(i);Qr(a,c)&&(a.value=c)}else if("innerHTML"===n&&Wn(a.tagName)&&r(a.innerHTML)){(Gr=Gr||document.createElement("div")).innerHTML=""+i+"";for(var u=Gr.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;u.firstChild;)a.appendChild(u.firstChild)}else if(i!==s[n])try{a[n]=i}catch(t){}}}}function Qr(t,e){return!t.composing&&("OPTION"===t.tagName||function(t,e){var n=!0;try{n=document.activeElement!==t}catch(t){}return n&&t.value!==e}(t,e)||function(t,e){var n=t.value,r=t._vModifiers;if(o(r)){if(r.number)return d(n)!==d(e);if(r.trim)return n.trim()!==e.trim()}return n!==e}(t,e))}var to={create:Zr,update:Zr},eo=w((function(t){var e={},n=/:(.+)/;return t.split(/;(?![^(]*\))/g).forEach((function(t){if(t){var r=t.split(n);r.length>1&&(e[r[0].trim()]=r[1].trim())}})),e}));function no(t){var e=ro(t.style);return t.staticStyle?E(t.staticStyle,e):e}function ro(t){return Array.isArray(t)?A(t):"string"==typeof t?eo(t):t}var oo,io=/^--/,ao=/\s*!important$/,so=function(t,e,n){if(io.test(e))t.style.setProperty(e,n);else if(ao.test(n))t.style.setProperty(C(e),n.replace(ao,""),"important");else{var r=co(e);if(Array.isArray(n))for(var o=0,i=n.length;o-1?e.split(po).forEach((function(e){return t.classList.add(e)})):t.classList.add(e);else{var n=" "+(t.getAttribute("class")||"")+" ";n.indexOf(" "+e+" ")<0&&t.setAttribute("class",(n+e).trim())}}function mo(t,e){if(e&&(e=e.trim()))if(t.classList)e.indexOf(" ")>-1?e.split(po).forEach((function(e){return t.classList.remove(e)})):t.classList.remove(e),t.classList.length||t.removeAttribute("class");else{for(var n=" "+(t.getAttribute("class")||"")+" ",r=" "+e+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?t.setAttribute("class",n):t.removeAttribute("class")}}function vo(t){if(t){if("object"==typeof t){var e={};return!1!==t.css&&E(e,go(t.name||"v")),E(e,t),e}return"string"==typeof t?go(t):void 0}}var go=w((function(t){return{enterClass:t+"-enter",enterToClass:t+"-enter-to",enterActiveClass:t+"-enter-active",leaveClass:t+"-leave",leaveToClass:t+"-leave-to",leaveActiveClass:t+"-leave-active"}})),yo=V&&!G,bo="transition",wo="animation",xo="transition",_o="transitionend",ko="animation",So="animationend";yo&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(xo="WebkitTransition",_o="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(ko="WebkitAnimation",So="webkitAnimationEnd"));var Co=V?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(t){return t()};function To(t){Co((function(){Co(t)}))}function Oo(t,e){var n=t._transitionClasses||(t._transitionClasses=[]);n.indexOf(e)<0&&(n.push(e),ho(t,e))}function Eo(t,e){t._transitionClasses&&g(t._transitionClasses,e),mo(t,e)}function Ao(t,e,n){var r=$o(t,e),o=r.type,i=r.timeout,a=r.propCount;if(!o)return n();var s=o===bo?_o:So,l=0,c=function(){t.removeEventListener(s,u),n()},u=function(e){e.target===t&&++l>=a&&c()};setTimeout((function(){l0&&(n=bo,u=a,f=i.length):e===wo?c>0&&(n=wo,u=c,f=l.length):f=(n=(u=Math.max(a,c))>0?a>c?bo:wo:null)?n===bo?i.length:l.length:0,{type:n,timeout:u,propCount:f,hasTransform:n===bo&&Lo.test(r[xo+"Property"])}}function Po(t,e){for(;t.length1}function No(t,e){!0!==e.data.show&&jo(e)}var Do=function(t){var e,n,s={},l=t.modules,c=t.nodeOps;for(e=0;eh?b(t,r(n[g+1])?null:n[g+1].elm,n,d,g,i):d>g&&x(0,e,p,h)}(p,m,g,n,u):o(g)?(o(t.text)&&c.setTextContent(p,""),b(p,null,g,0,g.length-1,n)):o(m)?x(0,m,0,m.length-1):o(t.text)&&c.setTextContent(p,""):t.text!==e.text&&c.setTextContent(p,e.text),o(h)&&o(d=h.hook)&&o(d=d.postpatch)&&d(t,e)}}}function C(t,e,n){if(i(n)&&o(t.parent))t.parent.data.pendingInsert=e;else for(var r=0;r-1,a.selected!==i&&(a.selected=i);else if(R(Fo(a),r))return void(t.selectedIndex!==s&&(t.selectedIndex=s));o||(t.selectedIndex=-1)}}function Wo(t,e){return e.every((function(e){return!R(e,t)}))}function Fo(t){return"_value"in t?t._value:t.value}function Vo(t){t.target.composing=!0}function zo(t){t.target.composing&&(t.target.composing=!1,Uo(t.target,"input"))}function Uo(t,e){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0),t.dispatchEvent(n)}function qo(t){return!t.componentInstance||t.data&&t.data.transition?t:qo(t.componentInstance._vnode)}var Ko={model:Bo,show:{bind:function(t,e,n){var r=e.value,o=(n=qo(n)).data&&n.data.transition,i=t.__vOriginalDisplay="none"===t.style.display?"":t.style.display;r&&o?(n.data.show=!0,jo(n,(function(){t.style.display=i}))):t.style.display=r?i:"none"},update:function(t,e,n){var r=e.value;!r!=!e.oldValue&&((n=qo(n)).data&&n.data.transition?(n.data.show=!0,r?jo(n,(function(){t.style.display=t.__vOriginalDisplay})):Mo(n,(function(){t.style.display="none"}))):t.style.display=r?t.__vOriginalDisplay:"none")},unbind:function(t,e,n,r,o){o||(t.style.display=t.__vOriginalDisplay)}}},Go={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Jo(t){var e=t&&t.componentOptions;return e&&e.Ctor.options.abstract?Jo(We(e.children)):t}function Zo(t){var e={},n=t.$options;for(var r in n.propsData)e[r]=t[r];var o=n._parentListeners;for(var i in o)e[_(i)]=o[i];return e}function Qo(t,e){if(/\d-keep-alive$/.test(e.tag))return t("keep-alive",{props:e.componentOptions.propsData})}var ti=function(t){return t.tag||Xe(t)},ei=function(t){return"show"===t.name},ni={name:"transition",props:Go,abstract:!0,render:function(t){var e=this,n=this.$slots.default;if(n&&(n=n.filter(ti)).length){var r=this.mode,o=n[0];if(function(t){for(;t=t.parent;)if(t.data.transition)return!0}(this.$vnode))return o;var i=Jo(o);if(!i)return o;if(this._leaving)return Qo(t,o);var s="__transition-"+this._uid+"-";i.key=null==i.key?i.isComment?s+"comment":s+i.tag:a(i.key)?0===String(i.key).indexOf(s)?i.key:s+i.key:i.key;var l=(i.data||(i.data={})).transition=Zo(this),c=this._vnode,u=Jo(c);if(i.data.directives&&i.data.directives.some(ei)&&(i.data.show=!0),u&&u.data&&!function(t,e){return e.key===t.key&&e.tag===t.tag}(i,u)&&!Xe(u)&&(!u.componentInstance||!u.componentInstance._vnode.isComment)){var f=u.data.transition=E({},l);if("out-in"===r)return this._leaving=!0,ae(f,"afterLeave",(function(){e._leaving=!1,e.$forceUpdate()})),Qo(t,o);if("in-out"===r){if(Xe(i))return c;var p,d=function(){p()};ae(l,"afterEnter",d),ae(l,"enterCancelled",d),ae(f,"delayLeave",(function(t){p=t}))}}return o}}},ri=E({tag:String,moveClass:String},Go);function oi(t){t.elm._moveCb&&t.elm._moveCb(),t.elm._enterCb&&t.elm._enterCb()}function ii(t){t.data.newPos=t.elm.getBoundingClientRect()}function ai(t){var e=t.data.pos,n=t.data.newPos,r=e.left-n.left,o=e.top-n.top;if(r||o){t.data.moved=!0;var i=t.elm.style;i.transform=i.WebkitTransform="translate("+r+"px,"+o+"px)",i.transitionDuration="0s"}}delete ri.mode;var si={Transition:ni,TransitionGroup:{props:ri,beforeMount:function(){var t=this,e=this._update;this._update=function(n,r){var o=Ke(t);t.__patch__(t._vnode,t.kept,!1,!0),t._vnode=t.kept,o(),e.call(t,n,r)}},render:function(t){for(var e=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,o=this.$slots.default||[],i=this.children=[],a=Zo(this),s=0;s-1?zn[t]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:zn[t]=/HTMLUnknownElement/.test(e.toString())},E(xn.options.directives,Ko),E(xn.options.components,si),xn.prototype.__patch__=V?Do:L,xn.prototype.$mount=function(t,e){return function(t,e,n){var r;return t.$el=e,t.$options.render||(t.$options.render=vt),Ze(t,"beforeMount"),r=function(){t._update(t._render(),n)},new fn(t,r,L,{before:function(){t._isMounted&&!t._isDestroyed&&Ze(t,"beforeUpdate")}},!0),n=!1,null==t.$vnode&&(t._isMounted=!0,Ze(t,"mounted")),t}(this,t=t&&V?qn(t):void 0,e)},V&&setTimeout((function(){D.devtools&&ot&&ot.emit("init",xn)}),0);var li,ci=/\{\{((?:.|\r?\n)+?)\}\}/g,ui=/[-.*+?^${}()|[\]\/\\]/g,fi=w((function(t){var e=t[0].replace(ui,"\\$&"),n=t[1].replace(ui,"\\$&");return new RegExp(e+"((?:.|\\n)+?)"+n,"g")})),pi={staticKeys:["staticClass"],transformNode:function(t,e){e.warn;var n=Rr(t,"class");n&&(t.staticClass=JSON.stringify(n));var r=Pr(t,"class",!1);r&&(t.classBinding=r)},genData:function(t){var e="";return t.staticClass&&(e+="staticClass:"+t.staticClass+","),t.classBinding&&(e+="class:"+t.classBinding+","),e}},di={staticKeys:["staticStyle"],transformNode:function(t,e){e.warn;var n=Rr(t,"style");n&&(t.staticStyle=JSON.stringify(eo(n)));var r=Pr(t,"style",!1);r&&(t.styleBinding=r)},genData:function(t){var e="";return t.staticStyle&&(e+="staticStyle:"+t.staticStyle+","),t.styleBinding&&(e+="style:("+t.styleBinding+"),"),e}},hi=h("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),mi=h("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),vi=h("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),gi=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,yi=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,bi="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+B.source+"]*",wi="((?:"+bi+"\\:)?"+bi+")",xi=new RegExp("^<"+wi),_i=/^\s*(\/?)>/,ki=new RegExp("^<\\/"+wi+"[^>]*>"),Si=/^]+>/i,Ci=/^",""":'"',"&":"&"," ":"\n"," ":"\t","'":"'"},Li=/&(?:lt|gt|quot|amp|#39);/g,$i=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Pi=h("pre,textarea",!0),Ri=function(t,e){return t&&Pi(t)&&"\n"===e[0]};function ji(t,e){var n=e?$i:Li;return t.replace(n,(function(t){return Ai[t]}))}var Mi,Ii,Hi,Ni,Di,Bi,Yi,Xi,Wi=/^@|^v-on:/,Fi=/^v-|^@|^:/,Vi=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,zi=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Ui=/^\(|\)$/g,qi=/^\[.*\]$/,Ki=/:(.*)$/,Gi=/^:|^\.|^v-bind:/,Ji=/\.[^.\]]+(?=[^\]]*$)/g,Zi=/^v-slot(:|$)|^#/,Qi=/[\r\n]/,ta=/\s+/g,ea=w((function(t){return(li=li||document.createElement("div")).innerHTML=t,li.textContent})),na="_empty_";function ra(t,e,n){return{type:1,tag:t,attrsList:e,attrsMap:ca(e),rawAttrsMap:{},parent:n,children:[]}}function oa(t,e){var n,r;(r=Pr(n=t,"key"))&&(n.key=r),t.plain=!t.key&&!t.scopedSlots&&!t.attrsList.length,function(t){var e=Pr(t,"ref");e&&(t.ref=e,t.refInFor=function(t){for(var e=t;e;){if(void 0!==e.for)return!0;e=e.parent}return!1}(t))}(t),function(t){var e;"template"===t.tag?(e=Rr(t,"scope"),t.slotScope=e||Rr(t,"slot-scope")):(e=Rr(t,"slot-scope"))&&(t.slotScope=e);var n=Pr(t,"slot");if(n&&(t.slotTarget='""'===n?'"default"':n,t.slotTargetDynamic=!(!t.attrsMap[":slot"]&&!t.attrsMap["v-bind:slot"]),"template"===t.tag||t.slotScope||Or(t,"slot",n,function(t,e){return t.rawAttrsMap[":"+e]||t.rawAttrsMap["v-bind:"+e]||t.rawAttrsMap[e]}(t,"slot"))),"template"===t.tag){var r=jr(t,Zi);if(r){var o=sa(r),i=o.name,a=o.dynamic;t.slotTarget=i,t.slotTargetDynamic=a,t.slotScope=r.value||na}}else{var s=jr(t,Zi);if(s){var l=t.scopedSlots||(t.scopedSlots={}),c=sa(s),u=c.name,f=c.dynamic,p=l[u]=ra("template",[],t);p.slotTarget=u,p.slotTargetDynamic=f,p.children=t.children.filter((function(t){if(!t.slotScope)return t.parent=p,!0})),p.slotScope=s.value||na,t.children=[],t.plain=!1}}}(t),function(t){"slot"===t.tag&&(t.slotName=Pr(t,"name"))}(t),function(t){var e;(e=Pr(t,"is"))&&(t.component=e),null!=Rr(t,"inline-template")&&(t.inlineTemplate=!0)}(t);for(var o=0;o-1"+("true"===i?":("+e+")":":_q("+e+","+i+")")),$r(t,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+i+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+o+")":o)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Hr(e,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Hr(e,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Hr(e,"$$c")+"}",null,!0)}(t,r,o);else if("input"===i&&"radio"===a)!function(t,e,n){var r=n&&n.number,o=Pr(t,"value")||"null";Tr(t,"checked","_q("+e+","+(o=r?"_n("+o+")":o)+")"),$r(t,"change",Hr(e,o),null,!0)}(t,r,o);else if("input"===i||"textarea"===i)!function(t,e,n){var r=t.attrsMap.type,o=n||{},i=o.lazy,a=o.number,s=o.trim,l=!i&&"range"!==r,c=i?"change":"range"===r?Fr:"input",u="$event.target.value";s&&(u="$event.target.value.trim()"),a&&(u="_n("+u+")");var f=Hr(e,u);l&&(f="if($event.target.composing)return;"+f),Tr(t,"value","("+e+")"),$r(t,c,f,null,!0),(s||a)&&$r(t,"blur","$forceUpdate()")}(t,r,o);else if(!D.isReservedTag(i))return Ir(t,r,o),!1;return!0},text:function(t,e){e.value&&Tr(t,"textContent","_s("+e.value+")",e)},html:function(t,e){e.value&&Tr(t,"innerHTML","_s("+e.value+")",e)}},isPreTag:function(t){return"pre"===t},isUnaryTag:hi,mustUseProp:Ln,canBeLeftOpenTag:mi,isReservedTag:Fn,getTagNamespace:Vn,staticKeys:function(t){return t.reduce((function(t,e){return t.concat(e.staticKeys||[])}),[]).join(",")}(ma)},ga=w((function(t){return h("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(t?","+t:""))})),ya=/^([\w$_]+|\([^)]*?\))\s*=>|^function\s*(?:[\w$]+)?\s*\(/,ba=/\([^)]*?\);*$/,wa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,xa={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},_a={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},ka=function(t){return"if("+t+")return null;"},Sa={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:ka("$event.target !== $event.currentTarget"),ctrl:ka("!$event.ctrlKey"),shift:ka("!$event.shiftKey"),alt:ka("!$event.altKey"),meta:ka("!$event.metaKey"),left:ka("'button' in $event && $event.button !== 0"),middle:ka("'button' in $event && $event.button !== 1"),right:ka("'button' in $event && $event.button !== 2")};function Ca(t,e){var n=e?"nativeOn:":"on:",r="",o="";for(var i in t){var a=Ta(t[i]);t[i]&&t[i].dynamic?o+=i+","+a+",":r+='"'+i+'":'+a+","}return r="{"+r.slice(0,-1)+"}",o?n+"_d("+r+",["+o.slice(0,-1)+"])":n+r}function Ta(t){if(!t)return"function(){}";if(Array.isArray(t))return"["+t.map((function(t){return Ta(t)})).join(",")+"]";var e=wa.test(t.value),n=ya.test(t.value),r=wa.test(t.value.replace(ba,""));if(t.modifiers){var o="",i="",a=[];for(var s in t.modifiers)if(Sa[s])i+=Sa[s],xa[s]&&a.push(s);else if("exact"===s){var l=t.modifiers;i+=ka(["ctrl","shift","alt","meta"].filter((function(t){return!l[t]})).map((function(t){return"$event."+t+"Key"})).join("||"))}else a.push(s);return a.length&&(o+=function(t){return"if(!$event.type.indexOf('key')&&"+t.map(Oa).join("&&")+")return null;"}(a)),i&&(o+=i),"function($event){"+o+(e?"return "+t.value+"($event)":n?"return ("+t.value+")($event)":r?"return "+t.value:t.value)+"}"}return e||n?t.value:"function($event){"+(r?"return "+t.value:t.value)+"}"}function Oa(t){var e=parseInt(t,10);if(e)return"$event.keyCode!=="+e;var n=xa[t],r=_a[t];return"_k($event.keyCode,"+JSON.stringify(t)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ea={on:function(t,e){t.wrapListeners=function(t){return"_g("+t+","+e.value+")"}},bind:function(t,e){t.wrapData=function(n){return"_b("+n+",'"+t.tag+"',"+e.value+","+(e.modifiers&&e.modifiers.prop?"true":"false")+(e.modifiers&&e.modifiers.sync?",true":"")+")"}},cloak:L},Aa=function(t){this.options=t,this.warn=t.warn||Sr,this.transforms=Cr(t.modules,"transformCode"),this.dataGenFns=Cr(t.modules,"genData"),this.directives=E(E({},Ea),t.directives);var e=t.isReservedTag||$;this.maybeComponent=function(t){return!!t.component||!e(t.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function La(t,e){var n=new Aa(e);return{render:"with(this){return "+(t?$a(t,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function $a(t,e){if(t.parent&&(t.pre=t.pre||t.parent.pre),t.staticRoot&&!t.staticProcessed)return Pa(t,e);if(t.once&&!t.onceProcessed)return Ra(t,e);if(t.for&&!t.forProcessed)return Ma(t,e);if(t.if&&!t.ifProcessed)return ja(t,e);if("template"!==t.tag||t.slotTarget||e.pre){if("slot"===t.tag)return function(t,e){var n=t.slotName||'"default"',r=Da(t,e),o="_t("+n+(r?","+r:""),i=t.attrs||t.dynamicAttrs?Xa((t.attrs||[]).concat(t.dynamicAttrs||[]).map((function(t){return{name:_(t.name),value:t.value,dynamic:t.dynamic}}))):null,a=t.attrsMap["v-bind"];return!i&&!a||r||(o+=",null"),i&&(o+=","+i),a&&(o+=(i?"":",null")+","+a),o+")"}(t,e);var n;if(t.component)n=function(t,e,n){var r=e.inlineTemplate?null:Da(e,n,!0);return"_c("+t+","+Ia(e,n)+(r?","+r:"")+")"}(t.component,t,e);else{var r;(!t.plain||t.pre&&e.maybeComponent(t))&&(r=Ia(t,e));var o=t.inlineTemplate?null:Da(t,e,!0);n="_c('"+t.tag+"'"+(r?","+r:"")+(o?","+o:"")+")"}for(var i=0;i>>0}(a):"")+")"}(t,t.scopedSlots,e)+","),t.model&&(n+="model:{value:"+t.model.value+",callback:"+t.model.callback+",expression:"+t.model.expression+"},"),t.inlineTemplate){var i=function(t,e){var n=t.children[0];if(n&&1===n.type){var r=La(n,e.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map((function(t){return"function(){"+t+"}"})).join(",")+"]}"}}(t,e);i&&(n+=i+",")}return n=n.replace(/,$/,"")+"}",t.dynamicAttrs&&(n="_b("+n+',"'+t.tag+'",'+Xa(t.dynamicAttrs)+")"),t.wrapData&&(n=t.wrapData(n)),t.wrapListeners&&(n=t.wrapListeners(n)),n}function Ha(t){return 1===t.type&&("slot"===t.tag||t.children.some(Ha))}function Na(t,e){var n=t.attrsMap["slot-scope"];if(t.if&&!t.ifProcessed&&!n)return ja(t,e,Na,"null");if(t.for&&!t.forProcessed)return Ma(t,e,Na);var r=t.slotScope===na?"":String(t.slotScope),o="function("+r+"){return "+("template"===t.tag?t.if&&n?"("+t.if+")?"+(Da(t,e)||"undefined")+":undefined":Da(t,e)||"undefined":$a(t,e))+"}",i=r?"":",proxy:true";return"{key:"+(t.slotTarget||'"default"')+",fn:"+o+i+"}"}function Da(t,e,n,r,o){var i=t.children;if(i.length){var a=i[0];if(1===i.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?e.maybeComponent(a)?",1":",0":"";return""+(r||$a)(a,e)+s}var l=n?function(t,e){for(var n=0,r=0;r]*>)","i")),p=t.replace(f,(function(t,n,r){return c=r.length,Oi(u)||"noscript"===u||(n=n.replace(//g,"$1").replace(//g,"$1")),Ri(u,n)&&(n=n.slice(1)),e.chars&&e.chars(n),""}));l+=t.length-p.length,t=p,T(u,l-c,l)}else{var d=t.indexOf("<");if(0===d){if(Ci.test(t)){var h=t.indexOf("--\x3e");if(h>=0){e.shouldKeepComment&&e.comment(t.substring(4,h),l,l+h+3),k(h+3);continue}}if(Ti.test(t)){var m=t.indexOf("]>");if(m>=0){k(m+2);continue}}var v=t.match(Si);if(v){k(v[0].length);continue}var g=t.match(ki);if(g){var y=l;k(g[0].length),T(g[1],y,l);continue}var b=S();if(b){C(b),Ri(b.tagName,t)&&k(1);continue}}var w=void 0,x=void 0,_=void 0;if(d>=0){for(x=t.slice(d);!(ki.test(x)||xi.test(x)||Ci.test(x)||Ti.test(x)||(_=x.indexOf("<",1))<0);)d+=_,x=t.slice(d);w=t.substring(0,d)}d<0&&(w=t),w&&k(w.length),e.chars&&w&&e.chars(w,l-w.length,l)}if(t===n){e.chars&&e.chars(t);break}}function k(e){l+=e,t=t.substring(e)}function S(){var e=t.match(xi);if(e){var n,r,o={tagName:e[1],attrs:[],start:l};for(k(e[0].length);!(n=t.match(_i))&&(r=t.match(yi)||t.match(gi));)r.start=l,k(r[0].length),r.end=l,o.attrs.push(r);if(n)return o.unarySlash=n[1],k(n[0].length),o.end=l,o}}function C(t){var n=t.tagName,l=t.unarySlash;i&&("p"===r&&vi(n)&&T(r),s(n)&&r===n&&T(n));for(var c=a(n)||!!l,u=t.attrs.length,f=new Array(u),p=0;p=0&&o[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var c=o.length-1;c>=a;c--)e.end&&e.end(o[c].tag,n,i);o.length=a,r=a&&o[a-1].tag}else"br"===s?e.start&&e.start(t,[],!0,n,i):"p"===s&&(e.start&&e.start(t,[],!1,n,i),e.end&&e.end(t,n,i))}T()}(t,{warn:Mi,expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,canBeLeftOpenTag:e.canBeLeftOpenTag,shouldDecodeNewlines:e.shouldDecodeNewlines,shouldDecodeNewlinesForHref:e.shouldDecodeNewlinesForHref,shouldKeepComment:e.comments,outputSourceRange:e.outputSourceRange,start:function(t,i,a,u,f){var p=r&&r.ns||Xi(t);K&&"svg"===p&&(i=function(t){for(var e=[],n=0;nl&&(s.push(i=t.slice(l,o)),a.push(JSON.stringify(i)));var c=_r(r[1].trim());a.push("_s("+c+")"),s.push({"@binding":c}),l=o+r[0].length}return l':'
',Ua.innerHTML.indexOf(" ")>0}var Ja=!!V&&Ga(!1),Za=!!V&&Ga(!0),Qa=w((function(t){var e=qn(t);return e&&e.innerHTML})),ts=xn.prototype.$mount;return xn.prototype.$mount=function(t,e){if((t=t&&qn(t))===document.body||t===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=Qa(r));else{if(!r.nodeType)return this;r=r.innerHTML}else t&&(r=function(t){if(t.outerHTML)return t.outerHTML;var e=document.createElement("div");return e.appendChild(t.cloneNode(!0)),e.innerHTML}(t));if(r){var o=Ka(r,{outputSourceRange:!1,shouldDecodeNewlines:Ja,shouldDecodeNewlinesForHref:Za,delimiters:n.delimiters,comments:n.comments},this),i=o.render,a=o.staticRenderFns;n.render=i,n.staticRenderFns=a}}return ts.call(this,t,e)},xn.compile=Ka,xn}()}).call(this,n(7),n(23).setImmediate)},function(t,e,n){(function(t){var r=void 0!==t&&t||"undefined"!=typeof self&&self||window,o=Function.prototype.apply;function i(t,e){this._id=t,this._clearFn=e}e.setTimeout=function(){return new i(o.call(setTimeout,r,arguments),clearTimeout)},e.setInterval=function(){return new i(o.call(setInterval,r,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},i.prototype.unref=i.prototype.ref=function(){},i.prototype.close=function(){this._clearFn.call(r,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout((function(){t._onTimeout&&t._onTimeout()}),e))},n(24),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(this,n(7))},function(t,e,n){(function(t,e){!function(t,n){"use strict";if(!t.setImmediate){var r,o,i,a,s,l=1,c={},u=!1,f=t.document,p=Object.getPrototypeOf&&Object.getPrototypeOf(t);p=p&&p.setTimeout?p:t,"[object process]"==={}.toString.call(t.process)?r=function(t){e.nextTick((function(){h(t)}))}:!function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?t.MessageChannel?((i=new MessageChannel).port1.onmessage=function(t){h(t.data)},r=function(t){i.port2.postMessage(t)}):f&&"onreadystatechange"in f.createElement("script")?(o=f.documentElement,r=function(t){var e=f.createElement("script");e.onreadystatechange=function(){h(t),e.onreadystatechange=null,o.removeChild(e),e=null},o.appendChild(e)}):r=function(t){setTimeout(h,0,t)}:(a="setImmediate$"+Math.random()+"$",s=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(a)&&h(+e.data.slice(a.length))},t.addEventListener?t.addEventListener("message",s,!1):t.attachEvent("onmessage",s),r=function(e){t.postMessage(a+e,"*")}),p.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n-1&&e.splice(n,1)}}function p(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;h(t,n,[],t._modules.root,!0),d(t,n,e)}function d(t,e,n){var r=t._vm;t.getters={};var i=t._wrappedGetters,a={};o(i,(function(e,n){a[n]=function(t,e){return function(){return t(e)}}(e,t),Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})}));var s=l.config.silent;l.config.silent=!0,t._vm=new l({data:{$$state:e},computed:a}),l.config.silent=s,t.strict&&function(t){t._vm.$watch((function(){return this._data.$$state}),(function(){0}),{deep:!0,sync:!0})}(t),r&&(n&&t._withCommit((function(){r._data.$$state=null})),l.nextTick((function(){return r.$destroy()})))}function h(t,e,n,r,o){var i=!n.length,a=t._modules.getNamespace(n);if(r.namespaced&&(t._modulesNamespaceMap[a]=r),!i&&!o){var s=m(e,n.slice(0,-1)),c=n[n.length-1];t._withCommit((function(){l.set(s,c,r.state)}))}var u=r.context=function(t,e,n){var r=""===e,o={dispatch:r?t.dispatch:function(n,r,o){var i=v(n,r,o),a=i.payload,s=i.options,l=i.type;return s&&s.root||(l=e+l),t.dispatch(l,a)},commit:r?t.commit:function(n,r,o){var i=v(n,r,o),a=i.payload,s=i.options,l=i.type;s&&s.root||(l=e+l),t.commit(l,a,s)}};return Object.defineProperties(o,{getters:{get:r?function(){return t.getters}:function(){return function(t,e){var n={},r=e.length;return Object.keys(t.getters).forEach((function(o){if(o.slice(0,r)===e){var i=o.slice(r);Object.defineProperty(n,i,{get:function(){return t.getters[o]},enumerable:!0})}})),n}(t,e)}},state:{get:function(){return m(t.state,n)}}}),o}(t,a,n);r.forEachMutation((function(e,n){!function(t,e,n,r){(t._mutations[e]||(t._mutations[e]=[])).push((function(e){n.call(t,r.state,e)}))}(t,a+n,e,u)})),r.forEachAction((function(e,n){var r=e.root?n:a+n,o=e.handler||e;!function(t,e,n,r){(t._actions[e]||(t._actions[e]=[])).push((function(e,o){var i,a=n.call(t,{dispatch:r.dispatch,commit:r.commit,getters:r.getters,state:r.state,rootGetters:t.getters,rootState:t.state},e,o);return(i=a)&&"function"==typeof i.then||(a=Promise.resolve(a)),t._devtoolHook?a.catch((function(e){throw t._devtoolHook.emit("vuex:error",e),e})):a}))}(t,r,o,u)})),r.forEachGetter((function(e,n){!function(t,e,n,r){if(t._wrappedGetters[e])return void 0;t._wrappedGetters[e]=function(t){return n(r.state,r.getters,t.state,t.getters)}}(t,a+n,e,u)})),r.forEachChild((function(r,i){h(t,e,n.concat(i),r,o)}))}function m(t,e){return e.length?e.reduce((function(t,e){return t[e]}),t):t}function v(t,e,n){var r;return null!==(r=t)&&"object"==typeof r&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function g(t){l&&t===l||function(t){if(Number(t.version.split(".")[0])>=2)t.mixin({beforeCreate:n});else{var e=t.prototype._init;t.prototype._init=function(t){void 0===t&&(t={}),t.init=t.init?[n].concat(t.init):n,e.call(this,t)}}function n(){var t=this.$options;t.store?this.$store="function"==typeof t.store?t.store():t.store:t.parent&&t.parent.$store&&(this.$store=t.parent.$store)}}(l=t)}u.state.get=function(){return this._vm._data.$$state},u.state.set=function(t){0},c.prototype.commit=function(t,e,n){var r=this,o=v(t,e,n),i=o.type,a=o.payload,s=(o.options,{type:i,payload:a}),l=this._mutations[i];l&&(this._withCommit((function(){l.forEach((function(t){t(a)}))})),this._subscribers.forEach((function(t){return t(s,r.state)})))},c.prototype.dispatch=function(t,e){var n=this,r=v(t,e),o=r.type,i=r.payload,a={type:o,payload:i},s=this._actions[o];if(s){try{this._actionSubscribers.filter((function(t){return t.before})).forEach((function(t){return t.before(a,n.state)}))}catch(t){0}return(s.length>1?Promise.all(s.map((function(t){return t(i)}))):s[0](i)).then((function(t){try{n._actionSubscribers.filter((function(t){return t.after})).forEach((function(t){return t.after(a,n.state)}))}catch(t){0}return t}))}},c.prototype.subscribe=function(t){return f(t,this._subscribers)},c.prototype.subscribeAction=function(t){return f("function"==typeof t?{before:t}:t,this._actionSubscribers)},c.prototype.watch=function(t,e,n){var r=this;return this._watcherVM.$watch((function(){return t(r.state,r.getters)}),e,n)},c.prototype.replaceState=function(t){var e=this;this._withCommit((function(){e._vm._data.$$state=t}))},c.prototype.registerModule=function(t,e,n){void 0===n&&(n={}),"string"==typeof t&&(t=[t]),this._modules.register(t,e),h(this,this.state,t,this._modules.get(t),n.preserveState),d(this,this.state)},c.prototype.unregisterModule=function(t){var e=this;"string"==typeof t&&(t=[t]),this._modules.unregister(t),this._withCommit((function(){var n=m(e.state,t.slice(0,-1));l.delete(n,t[t.length-1])})),p(this)},c.prototype.hotUpdate=function(t){this._modules.update(t),p(this,!0)},c.prototype._withCommit=function(t){var e=this._committing;this._committing=!0,t(),this._committing=e},Object.defineProperties(c.prototype,u);var y=S((function(t,e){var n={};return k(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){var e=this.$store.state,n=this.$store.getters;if(t){var r=C(this.$store,"mapState",t);if(!r)return;e=r.context.state,n=r.context.getters}return"function"==typeof o?o.call(this,e,n):e[o]},n[r].vuex=!0})),n})),b=S((function(t,e){var n={};return k(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.commit;if(t){var i=C(this.$store,"mapMutations",t);if(!i)return;r=i.context.commit}return"function"==typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),w=S((function(t,e){var n={};return k(e).forEach((function(e){var r=e.key,o=e.val;o=t+o,n[r]=function(){if(!t||C(this.$store,"mapGetters",t))return this.$store.getters[o]},n[r].vuex=!0})),n})),x=S((function(t,e){var n={};return k(e).forEach((function(e){var r=e.key,o=e.val;n[r]=function(){for(var e=[],n=arguments.length;n--;)e[n]=arguments[n];var r=this.$store.dispatch;if(t){var i=C(this.$store,"mapActions",t);if(!i)return;r=i.context.dispatch}return"function"==typeof o?o.apply(this,[r].concat(e)):r.apply(this.$store,[o].concat(e))}})),n})),_=function(t){return{mapState:y.bind(null,t),mapGetters:w.bind(null,t),mapMutations:b.bind(null,t),mapActions:x.bind(null,t)}};function k(t){return Array.isArray(t)?t.map((function(t){return{key:t,val:t}})):Object.keys(t).map((function(e){return{key:e,val:t[e]}}))}function S(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function C(t,e,n){return t._modulesNamespaceMap[n]}var T={Store:c,install:g,version:"3.1.1",mapState:y,mapMutations:b,mapGetters:w,mapActions:x,createNamespacedHelpers:_};e.default=T}.call(this,n(7))},function(t,e,n){"use strict";function r(t){return Object.prototype.toString.call(t).indexOf("Error")>-1}function o(t,e){for(var n in e)t[n]=e[n];return t}n.r(e);var i={name:"RouterView",functional:!0,props:{name:{type:String,default:"default"}},render:function(t,e){var n=e.props,r=e.children,i=e.parent,a=e.data;a.routerView=!0;for(var s=i.$createElement,l=n.name,c=i.$route,u=i._routerViewCache||(i._routerViewCache={}),f=0,p=!1;i&&i._routerRoot!==i;){var d=i.$vnode&&i.$vnode.data;d&&(d.routerView&&f++,d.keepAlive&&i._inactive&&(p=!0)),i=i.$parent}if(a.routerViewDepth=f,p)return s(u[l],a,r);var h=c.matched[f];if(!h)return u[l]=null,s();var m=u[l]=h.components[l];a.registerRouteInstance=function(t,e){var n=h.instances[l];(e&&n!==t||!e&&n===t)&&(h.instances[l]=e)},(a.hook||(a.hook={})).prepatch=function(t,e){h.instances[l]=e.componentInstance},a.hook.init=function(t){t.data.keepAlive&&t.componentInstance&&t.componentInstance!==h.instances[l]&&(h.instances[l]=t.componentInstance)};var v=a.props=function(t,e){switch(typeof e){case"undefined":return;case"object":return e;case"function":return e(t);case"boolean":return e?t.params:void 0;default:0}}(c,h.props&&h.props[l]);if(v){v=a.props=o({},v);var g=a.attrs=a.attrs||{};for(var y in v)m.props&&y in m.props||(g[y]=v[y],delete v[y])}return s(m,a,r)}};var a=/[!'()*]/g,s=function(t){return"%"+t.charCodeAt(0).toString(16)},l=/%2C/g,c=function(t){return encodeURIComponent(t).replace(a,s).replace(l,",")},u=decodeURIComponent;function f(t){var e={};return(t=t.trim().replace(/^(\?|#|&)/,""))?(t.split("&").forEach((function(t){var n=t.replace(/\+/g," ").split("="),r=u(n.shift()),o=n.length>0?u(n.join("=")):null;void 0===e[r]?e[r]=o:Array.isArray(e[r])?e[r].push(o):e[r]=[e[r],o]})),e):e}function p(t){var e=t?Object.keys(t).map((function(e){var n=t[e];if(void 0===n)return"";if(null===n)return c(e);if(Array.isArray(n)){var r=[];return n.forEach((function(t){void 0!==t&&(null===t?r.push(c(e)):r.push(c(e)+"="+c(t)))})),r.join("&")}return c(e)+"="+c(n)})).filter((function(t){return t.length>0})).join("&"):null;return e?"?"+e:""}var d=/\/?$/;function h(t,e,n,r){var o=r&&r.options.stringifyQuery,i=e.query||{};try{i=m(i)}catch(t){}var a={name:e.name||t&&t.name,meta:t&&t.meta||{},path:e.path||"/",hash:e.hash||"",query:i,params:e.params||{},fullPath:y(e,o),matched:t?g(t):[]};return n&&(a.redirectedFrom=y(n,o)),Object.freeze(a)}function m(t){if(Array.isArray(t))return t.map(m);if(t&&"object"==typeof t){var e={};for(var n in t)e[n]=m(t[n]);return e}return t}var v=h(null,{path:"/"});function g(t){for(var e=[];t;)e.unshift(t),t=t.parent;return e}function y(t,e){var n=t.path,r=t.query;void 0===r&&(r={});var o=t.hash;return void 0===o&&(o=""),(n||"/")+(e||p)(r)+o}function b(t,e){return e===v?t===e:!!e&&(t.path&&e.path?t.path.replace(d,"")===e.path.replace(d,"")&&t.hash===e.hash&&w(t.query,e.query):!(!t.name||!e.name)&&(t.name===e.name&&t.hash===e.hash&&w(t.query,e.query)&&w(t.params,e.params)))}function w(t,e){if(void 0===t&&(t={}),void 0===e&&(e={}),!t||!e)return t===e;var n=Object.keys(t),r=Object.keys(e);return n.length===r.length&&n.every((function(n){var r=t[n],o=e[n];return"object"==typeof r&&"object"==typeof o?w(r,o):String(r)===String(o)}))}var x,_={name:"RouterLink",props:{to:{type:[String,Object],required:!0},tag:{type:String,default:"a"},exact:Boolean,append:Boolean,replace:Boolean,activeClass:String,exactActiveClass:String,event:{type:[String,Array],default:"click"}},render:function(t){var e=this,n=this.$router,r=this.$route,i=n.resolve(this.to,r,this.append),a=i.location,s=i.route,l=i.href,c={},u=n.options.linkActiveClass,f=n.options.linkExactActiveClass,p=null==u?"router-link-active":u,m=null==f?"router-link-exact-active":f,v=null==this.activeClass?p:this.activeClass,g=null==this.exactActiveClass?m:this.exactActiveClass,y=a.path?h(null,a,null,n):s;c[g]=b(r,y),c[v]=this.exact?c[g]:function(t,e){return 0===t.path.replace(d,"/").indexOf(e.path.replace(d,"/"))&&(!e.hash||t.hash===e.hash)&&function(t,e){for(var n in e)if(!(n in t))return!1;return!0}(t.query,e.query)}(r,y);var w=function(t){k(t)&&(e.replace?n.replace(a):n.push(a))},x={click:k};Array.isArray(this.event)?this.event.forEach((function(t){x[t]=w})):x[this.event]=w;var _={class:c};if("a"===this.tag)_.on=x,_.attrs={href:l};else{var S=function t(e){var n;if(e)for(var r=0;r=0&&(e=t.slice(r),t=t.slice(0,r));var o=t.indexOf("?");return o>=0&&(n=t.slice(o+1),t=t.slice(0,o)),{path:t,query:n,hash:e}}(i.path||""),c=e&&e.path||"/",u=l.path?C(l.path,c,n||i.append):c,p=function(t,e,n){void 0===e&&(e={});var r,o=n||f;try{r=o(t||"")}catch(t){r={}}for(var i in e)r[i]=e[i];return r}(l.query,i.query,r&&r.options.parseQuery),d=i.hash||l.hash;return d&&"#"!==d.charAt(0)&&(d="#"+d),{_normalized:!0,path:u,query:p,hash:d}}function q(t,e){var n=V(t),r=n.pathList,o=n.pathMap,i=n.nameMap;function a(t,n,a){var s=U(t,n,!1,e),c=s.name;if(c){var u=i[c];if(!u)return l(null,s);var f=u.regex.keys.filter((function(t){return!t.optional})).map((function(t){return t.name}));if("object"!=typeof s.params&&(s.params={}),n&&"object"==typeof n.params)for(var p in n.params)!(p in s.params)&&f.indexOf(p)>-1&&(s.params[p]=n.params[p]);if(u)return s.path=F(u.path,s.params),l(u,s,a)}else if(s.path){s.params={};for(var d=0;d=t.length?n():t[o]?e(t[o],(function(){r(o+1)})):r(o+1)};r(0)}function dt(t){return function(e,n,o){var i=!1,a=0,s=null;ht(t,(function(t,e,n,l){if("function"==typeof t&&void 0===t.cid){i=!0,a++;var c,u=gt((function(e){var r;((r=e).__esModule||vt&&"Module"===r[Symbol.toStringTag])&&(e=e.default),t.resolved="function"==typeof e?e:x.extend(e),n.components[l]=e,--a<=0&&o()})),f=gt((function(t){var e="Failed to resolve async component "+l+": "+t;s||(s=r(t)?t:new Error(e),o(s))}));try{c=t(u,f)}catch(t){f(t)}if(c)if("function"==typeof c.then)c.then(u,f);else{var p=c.component;p&&"function"==typeof p.then&&p.then(u,f)}}})),i||o()}}function ht(t,e){return mt(t.map((function(t){return Object.keys(t.components).map((function(n){return e(t.components[n],t.instances[n],t,n)}))})))}function mt(t){return Array.prototype.concat.apply([],t)}var vt="function"==typeof Symbol&&"symbol"==typeof Symbol.toStringTag;function gt(t){var e=!1;return function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];if(!e)return e=!0,t.apply(this,n)}}var yt=function(t,e){this.router=t,this.base=function(t){if(!t)if(S){var e=document.querySelector("base");t=(t=e&&e.getAttribute("href")||"/").replace(/^https?:\/\/[^\/]+/,"")}else t="/";"/"!==t.charAt(0)&&(t="/"+t);return t.replace(/\/$/,"")}(e),this.current=v,this.pending=null,this.ready=!1,this.readyCbs=[],this.readyErrorCbs=[],this.errorCbs=[]};function bt(t,e,n,r){var o=ht(t,(function(t,r,o,i){var a=function(t,e){"function"!=typeof t&&(t=x.extend(t));return t.options[e]}(t,e);if(a)return Array.isArray(a)?a.map((function(t){return n(t,r,o,i)})):n(a,r,o,i)}));return mt(r?o.reverse():o)}function wt(t,e){if(e)return function(){return t.apply(e,arguments)}}yt.prototype.listen=function(t){this.cb=t},yt.prototype.onReady=function(t,e){this.ready?t():(this.readyCbs.push(t),e&&this.readyErrorCbs.push(e))},yt.prototype.onError=function(t){this.errorCbs.push(t)},yt.prototype.transitionTo=function(t,e,n){var r=this,o=this.router.match(t,this.current);this.confirmTransition(o,(function(){r.updateRoute(o),e&&e(o),r.ensureURL(),r.ready||(r.ready=!0,r.readyCbs.forEach((function(t){t(o)})))}),(function(t){n&&n(t),t&&!r.ready&&(r.ready=!0,r.readyErrorCbs.forEach((function(e){e(t)})))}))},yt.prototype.confirmTransition=function(t,e,n){var o=this,i=this.current,a=function(t){r(t)&&(o.errorCbs.length?o.errorCbs.forEach((function(e){e(t)})):console.error(t)),n&&n(t)};if(b(t,i)&&t.matched.length===i.matched.length)return this.ensureURL(),a();var s=function(t,e){var n,r=Math.max(t.length,e.length);for(n=0;n-1?decodeURI(t.slice(0,r))+t.slice(r):decodeURI(t)}else n>-1&&(t=decodeURI(t.slice(0,n))+t.slice(n));return t}function Tt(t){var e=window.location.href,n=e.indexOf("#");return(n>=0?e.slice(0,n):e)+"#"+t}function Ot(t){it?ut(Tt(t)):window.location.hash=t}function Et(t){it?ft(Tt(t)):window.location.replace(Tt(t))}var At=function(t){function e(e,n){t.call(this,e,n),this.stack=[],this.index=-1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.push=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index+1).concat(t),r.index++,e&&e(t)}),n)},e.prototype.replace=function(t,e,n){var r=this;this.transitionTo(t,(function(t){r.stack=r.stack.slice(0,r.index).concat(t),e&&e(t)}),n)},e.prototype.go=function(t){var e=this,n=this.index+t;if(!(n<0||n>=this.stack.length)){var r=this.stack[n];this.confirmTransition(r,(function(){e.index=n,e.updateRoute(r)}))}},e.prototype.getCurrentLocation=function(){var t=this.stack[this.stack.length-1];return t?t.fullPath:"/"},e.prototype.ensureURL=function(){},e}(yt),Lt=function(t){void 0===t&&(t={}),this.app=null,this.apps=[],this.options=t,this.beforeHooks=[],this.resolveHooks=[],this.afterHooks=[],this.matcher=q(t.routes||[],this);var e=t.mode||"hash";switch(this.fallback="history"===e&&!it&&!1!==t.fallback,this.fallback&&(e="hash"),S||(e="abstract"),this.mode=e,e){case"history":this.history=new xt(this,t.base);break;case"hash":this.history=new kt(this,t.base,this.fallback);break;case"abstract":this.history=new At(this,t.base);break;default:0}},$t={currentRoute:{configurable:!0}};function Pt(t,e){return t.push(e),function(){var n=t.indexOf(e);n>-1&&t.splice(n,1)}}Lt.prototype.match=function(t,e,n){return this.matcher.match(t,e,n)},$t.currentRoute.get=function(){return this.history&&this.history.current},Lt.prototype.init=function(t){var e=this;if(this.apps.push(t),t.$once("hook:destroyed",(function(){var n=e.apps.indexOf(t);n>-1&&e.apps.splice(n,1),e.app===t&&(e.app=e.apps[0]||null)})),!this.app){this.app=t;var n=this.history;if(n instanceof xt)n.transitionTo(n.getCurrentLocation());else if(n instanceof kt){var r=function(){n.setupListeners()};n.transitionTo(n.getCurrentLocation(),r,r)}n.listen((function(t){e.apps.forEach((function(e){e._route=t}))}))}},Lt.prototype.beforeEach=function(t){return Pt(this.beforeHooks,t)},Lt.prototype.beforeResolve=function(t){return Pt(this.resolveHooks,t)},Lt.prototype.afterEach=function(t){return Pt(this.afterHooks,t)},Lt.prototype.onReady=function(t,e){this.history.onReady(t,e)},Lt.prototype.onError=function(t){this.history.onError(t)},Lt.prototype.push=function(t,e,n){this.history.push(t,e,n)},Lt.prototype.replace=function(t,e,n){this.history.replace(t,e,n)},Lt.prototype.go=function(t){this.history.go(t)},Lt.prototype.back=function(){this.go(-1)},Lt.prototype.forward=function(){this.go(1)},Lt.prototype.getMatchedComponents=function(t){var e=t?t.matched?t:this.resolve(t).route:this.currentRoute;return e?[].concat.apply([],e.matched.map((function(t){return Object.keys(t.components).map((function(e){return t.components[e]}))}))):[]},Lt.prototype.resolve=function(t,e,n){var r=U(t,e=e||this.history.current,n,this),o=this.match(r,e),i=o.redirectedFrom||o.fullPath;return{location:r,route:o,href:function(t,e,n){var r="hash"===n?"#"+e:e;return t?T(t+"/"+r):r}(this.history.base,i,this.mode),normalizedTo:r,resolved:o}},Lt.prototype.addRoutes=function(t){this.matcher.addRoutes(t),this.history.current!==v&&this.history.transitionTo(this.history.getCurrentLocation())},Object.defineProperties(Lt.prototype,$t),Lt.install=function t(e){if(!t.installed||x!==e){t.installed=!0,x=e;var n=function(t){return void 0!==t},r=function(t,e){var r=t.$options._parentVnode;n(r)&&n(r=r.data)&&n(r=r.registerRouteInstance)&&r(t,e)};e.mixin({beforeCreate:function(){n(this.$options.router)?(this._routerRoot=this,this._router=this.$options.router,this._router.init(this),e.util.defineReactive(this,"_route",this._router.history.current)):this._routerRoot=this.$parent&&this.$parent._routerRoot||this,r(this,this)},destroyed:function(){r(this)}}),Object.defineProperty(e.prototype,"$router",{get:function(){return this._routerRoot._router}}),Object.defineProperty(e.prototype,"$route",{get:function(){return this._routerRoot._route}}),e.component("RouterView",i),e.component("RouterLink",_);var o=e.config.optionMergeStrategies;o.beforeRouteEnter=o.beforeRouteLeave=o.beforeRouteUpdate=o.created}},Lt.version="3.0.6",S&&window.Vue&&window.Vue.use(Lt),e.default=Lt},function(t,e,n){"use strict";var r=n(0),o=n(11),i=n(28),a=n(17);function s(t){var e=new i(t),n=o(i.prototype.request,e);return r.extend(n,i.prototype,e),r.extend(n,e),n}var l=s(n(14));l.Axios=i,l.create=function(t){return s(a(l.defaults,t))},l.Cancel=n(18),l.CancelToken=n(41),l.isCancel=n(13),l.all=function(t){return Promise.all(t)},l.spread=n(42),t.exports=l,t.exports.default=l},function(t,e,n){"use strict";var r=n(0),o=n(12),i=n(29),a=n(30),s=n(17);function l(t){this.defaults=t,this.interceptors={request:new i,response:new i}}l.prototype.request=function(t){"string"==typeof t?(t=arguments[1]||{}).url=arguments[0]:t=t||{},(t=s(this.defaults,t)).method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var e=[a,void 0],n=Promise.resolve(t);for(this.interceptors.request.forEach((function(t){e.unshift(t.fulfilled,t.rejected)})),this.interceptors.response.forEach((function(t){e.push(t.fulfilled,t.rejected)}));e.length;)n=n.then(e.shift(),e.shift());return n},l.prototype.getUri=function(t){return t=s(this.defaults,t),o(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")},r.forEach(["delete","get","head","options"],(function(t){l.prototype[t]=function(e,n){return this.request(r.merge(n||{},{method:t,url:e}))}})),r.forEach(["post","put","patch"],(function(t){l.prototype[t]=function(e,n,o){return this.request(r.merge(o||{},{method:t,url:e,data:n}))}})),t.exports=l},function(t,e,n){"use strict";var r=n(0);function o(){this.handlers=[]}o.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.forEach=function(t){r.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},function(t,e,n){"use strict";var r=n(0),o=n(31),i=n(13),a=n(14);function s(t){t.cancelToken&&t.cancelToken.throwIfRequested()}t.exports=function(t){return s(t),t.headers=t.headers||{},t.data=o(t.data,t.headers,t.transformRequest),t.headers=r.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),r.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]})),(t.adapter||a.adapter)(t).then((function(e){return s(t),e.data=o(e.data,e.headers,t.transformResponse),e}),(function(e){return i(e)||(s(t),e&&e.response&&(e.response.data=o(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},function(t,e,n){"use strict";var r=n(0);t.exports=function(t,e,n){return r.forEach(n,(function(n){t=n(t,e)})),t}},function(t,e,n){"use strict";var r=n(0);t.exports=function(t,e){r.forEach(t,(function(n,r){r!==e&&r.toUpperCase()===e.toUpperCase()&&(t[e]=n,delete t[r])}))}},function(t,e,n){"use strict";var r=n(16);t.exports=function(t,e,n){var o=n.config.validateStatus;!o||o(n.status)?t(n):e(r("Request failed with status code "+n.status,n.config,null,n.request,n))}},function(t,e,n){"use strict";t.exports=function(t,e,n,r,o){return t.config=e,n&&(t.code=n),t.request=r,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}},function(t,e,n){"use strict";var r=n(36),o=n(37);t.exports=function(t,e){return t&&!r(e)?o(t,e):e}},function(t,e,n){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,n){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,n){"use strict";var r=n(0),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];t.exports=function(t){var e,n,i,a={};return t?(r.forEach(t.split("\n"),(function(t){if(i=t.indexOf(":"),e=r.trim(t.substr(0,i)).toLowerCase(),n=r.trim(t.substr(i+1)),e){if(a[e]&&o.indexOf(e)>=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([n]):a[e]?a[e]+", "+n:n}})),a):a}},function(t,e,n){"use strict";var r=n(0);t.exports=r.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),n=document.createElement("a");function o(t){var r=t;return e&&(n.setAttribute("href",r),r=n.href),n.setAttribute("href",r),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:"/"===n.pathname.charAt(0)?n.pathname:"/"+n.pathname}}return t=o(window.location.href),function(e){var n=r.isString(e)?o(e):e;return n.protocol===t.protocol&&n.host===t.host}}():function(){return!0}},function(t,e,n){"use strict";var r=n(0);t.exports=r.isStandardBrowserEnv()?{write:function(t,e,n,o,i,a){var s=[];s.push(t+"="+encodeURIComponent(e)),r.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),r.isString(o)&&s.push("path="+o),r.isString(i)&&s.push("domain="+i),!0===a&&s.push("secure"),document.cookie=s.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(t,e,n){"use strict";var r=n(18);function o(t){if("function"!=typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var n=this;t((function(t){n.reason||(n.reason=new r(t),e(n.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.source=function(){var t;return{token:new o((function(e){t=e})),cancel:t}},t.exports=o},function(t,e,n){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,n){window,t.exports=function(){return n={},t.m=e=[function(t,e,n){var r=n(6);"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals),(0,n(4).default)("27d83796",r,!1,{})},function(t,e,n){var r=n(8);"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals),(0,n(4).default)("0e783494",r,!1,{})},function(t,e,n){var r=n(10);"string"==typeof r&&(r=[[t.i,r,""]]),r.locals&&(t.exports=r.locals),(0,n(4).default)("17757f60",r,!1,{})},function(t,e){t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=function(t,e){var n=t[1]||"",r=t[3];if(!r)return n;if(e&&"function"==typeof btoa){var o=function(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}(r),i=r.sources.map((function(t){return"/*# sourceURL="+r.sourceRoot+t+" */"}));return[n].concat(i).concat([o]).join("\n")}return[n].join("\n")}(e,t);return e[2]?"@media "+e[2]+"{"+n+"}":n})).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var r={},o=0;on.parts.length&&(r.parts.length=n.parts.length)}else{var a=[];for(o=0;o component must be present on the page.")};t.prototype.$modal={show:function(t){for(var e=arguments.length,r=new Array(10&&e.forEach((function(t){i.remove(t)})),i.appendTo(n.scrollbarXRail,t)),t.contains(n.scrollbarYRail)||((e=i.queryChildren(t,".ps__scrollbar-y-rail")).length>0&&e.forEach((function(t){i.remove(t)})),i.appendTo(n.scrollbarYRail,t)),!n.settings.suppressScrollX&&n.containerWidth+n.settings.scrollXMarginOffset=n.railXWidth-n.scrollbarXWidth&&(n.scrollbarXLeft=n.railXWidth-n.scrollbarXWidth),n.scrollbarYTop>=n.railYHeight-n.scrollbarYHeight&&(n.scrollbarYTop=n.railYHeight-n.scrollbarYHeight),function(t,e){var n={width:e.railXWidth};e.isRtl?n.left=e.negativeScrollAdjustment+t.scrollLeft+e.containerWidth-e.contentWidth:n.left=t.scrollLeft,e.isScrollbarXUsingBottom?n.bottom=e.scrollbarXBottom-t.scrollTop:n.top=e.scrollbarXTop+t.scrollTop,i.css(e.scrollbarXRail,n);var r={top:t.scrollTop,height:e.railYHeight};e.isScrollbarYUsingRight?e.isRtl?r.right=e.contentWidth-(e.negativeScrollAdjustment+t.scrollLeft)-e.scrollbarYRight-e.scrollbarYOuterWidth:r.right=e.scrollbarYRight-t.scrollLeft:e.isRtl?r.left=e.negativeScrollAdjustment+t.scrollLeft+2*e.containerWidth-e.contentWidth-e.scrollbarYLeft-e.scrollbarYOuterWidth:r.left=e.scrollbarYLeft+t.scrollLeft,i.css(e.scrollbarYRail,r),i.css(e.scrollbarX,{left:e.scrollbarXLeft,width:e.scrollbarXWidth-e.railBorderXWidth}),i.css(e.scrollbarY,{top:e.scrollbarYTop,height:e.scrollbarYHeight-e.railBorderYWidth})}(t,n),n.scrollbarXActive?t.classList.add("ps--active-x"):(t.classList.remove("ps--active-x"),n.scrollbarXWidth=0,n.scrollbarXLeft=0,s(t,"left",0)),n.scrollbarYActive?t.classList.add("ps--active-y"):(t.classList.remove("ps--active-y"),n.scrollbarYHeight=0,n.scrollbarYTop=0,s(t,"top",0))}},function(t,e,n){"use strict";function r(t){return["ps--in-scrolling"].concat(void 0===t?["ps--x","ps--y"]:["ps--"+t])}var o=n(4),i=e.toInt=function(t){return parseInt(t,10)||0};e.isEditable=function(t){return o.matches(t,"input,[contenteditable]")||o.matches(t,"select,[contenteditable]")||o.matches(t,"textarea,[contenteditable]")||o.matches(t,"button,[contenteditable]")},e.removePsClasses=function(t){for(var e=0;e=i.contentHeight-i.containerHeight&&((n=i.contentHeight-i.containerHeight)-t.scrollTop<=2?n=t.scrollTop:t.scrollTop=n,t.dispatchEvent(o("ps-y-reach-end"))),"left"===e&&n>=i.contentWidth-i.containerWidth&&((n=i.contentWidth-i.containerWidth)-t.scrollLeft<=2?n=t.scrollLeft:t.scrollLeft=n,t.dispatchEvent(o("ps-x-reach-end"))),void 0===i.lastTop&&(i.lastTop=t.scrollTop),void 0===i.lastLeft&&(i.lastLeft=t.scrollLeft),"top"===e&&ni.lastTop&&t.dispatchEvent(o("ps-scroll-down")),"left"===e&&ni.lastLeft&&t.dispatchEvent(o("ps-scroll-right")),"top"===e&&n!==i.lastTop&&(t.scrollTop=i.lastTop=n,t.dispatchEvent(o("ps-scroll-y"))),"left"===e&&n!==i.lastLeft&&(t.scrollLeft=i.lastLeft=n,t.dispatchEvent(o("ps-scroll-x")))}},function(t,e,n){"use strict";var r={create:function(t,e){var n=document.createElement(t);return n.className=e,n},appendTo:function(t,e){return e.appendChild(t),t}};r.css=function(t,e,n){return"object"==typeof e?function(t,e){for(var n in e){var r=e[n];"number"==typeof r&&(r=r.toString()+"px"),t.style[n]=r}return t}(t,e):void 0===n?function(t,e){return window.getComputedStyle(t)[e]}(t,e):function(t,e,n){return"number"==typeof n&&(n=n.toString()+"px"),t.style[e]=n,t}(t,e,n)},r.matches=function(t,e){return void 0!==t.matches?t.matches(e):t.msMatchesSelector(e)},r.remove=function(t){void 0!==t.remove?t.remove():t.parentNode&&t.parentNode.removeChild(t)},r.queryChildren=function(t,e){return Array.prototype.filter.call(t.childNodes,(function(t){return r.matches(t,e)}))},t.exports=r},function(t,e,n){n(28);var r=n(25)(n(7),n(26),null,null);t.exports=r.exports},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(5),o=n.n(r);e.default=o.a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(10),o=n.n(r);e.default={name:"vue-perfect-scrollbar",props:{settings:{default:void 0},swicher:{type:Boolean,default:!0},tagname:{type:String,default:"section"}},methods:{scrollHanle:function(t){this.$emit(t.type,t)},update:function(){o.a.update(this.$el)},__init:function(){this.swicher&&(this._ps_inited?this.update(this.$el):(this._ps_inited=!0,o.a.initialize(this.$el,this.settings)))},__uninit:function(){o.a.destroy(this.$el),this._ps_inited=!1}},watch:{swicher:function(t){t&&!this._ps_inited&&this.__init(),!t&&this._ps_inited&&this.__uninit()},$route:function(){this.update()}},mounted:function(){this.__init()},updated:function(){this.$nextTick(this.update)},activated:function(){this.__init()},deactivated:function(){this.__uninit()},beforeDestroy:function(){this.__uninit()}}},function(t,e,n){(t.exports=n(9)()).push([t.i,".ps{-ms-touch-action:auto;touch-action:auto;overflow:hidden!important;-ms-overflow-style:none}@supports (-ms-overflow-style:none){.ps{overflow:auto!important}}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.ps{overflow:auto!important}}.ps.ps--active-x>.ps__scrollbar-x-rail,.ps.ps--active-y>.ps__scrollbar-y-rail{display:block;background-color:transparent}.ps.ps--in-scrolling.ps--x>.ps__scrollbar-x-rail{background-color:#eee;opacity:.9}.ps.ps--in-scrolling.ps--x>.ps__scrollbar-x-rail>.ps__scrollbar-x{background-color:#999;height:11px}.ps.ps--in-scrolling.ps--y>.ps__scrollbar-y-rail{background-color:#eee;opacity:.9}.ps.ps--in-scrolling.ps--y>.ps__scrollbar-y-rail>.ps__scrollbar-y{background-color:#999;width:11px}.ps>.ps__scrollbar-x-rail{display:none;position:absolute;opacity:0;transition:background-color .2s linear,opacity .2s linear;bottom:0;height:15px}.ps>.ps__scrollbar-x-rail>.ps__scrollbar-x{position:absolute;background-color:#aaa;border-radius:6px;transition:background-color .2s linear,height .2s linear,width .2s ease-in-out,border-radius .2s ease-in-out;bottom:2px;height:6px}.ps>.ps__scrollbar-x-rail:active>.ps__scrollbar-x,.ps>.ps__scrollbar-x-rail:hover>.ps__scrollbar-x{height:11px}.ps>.ps__scrollbar-y-rail{display:none;position:absolute;opacity:0;transition:background-color .2s linear,opacity .2s linear;right:0;width:15px}.ps>.ps__scrollbar-y-rail>.ps__scrollbar-y{position:absolute;background-color:#aaa;border-radius:6px;transition:background-color .2s linear,height .2s linear,width .2s ease-in-out,border-radius .2s ease-in-out;right:2px;width:6px}.ps>.ps__scrollbar-y-rail:active>.ps__scrollbar-y,.ps>.ps__scrollbar-y-rail:hover>.ps__scrollbar-y{width:11px}.ps:hover.ps--in-scrolling.ps--x>.ps__scrollbar-x-rail{background-color:#eee;opacity:.9}.ps:hover.ps--in-scrolling.ps--x>.ps__scrollbar-x-rail>.ps__scrollbar-x{background-color:#999;height:11px}.ps:hover.ps--in-scrolling.ps--y>.ps__scrollbar-y-rail{background-color:#eee;opacity:.9}.ps:hover.ps--in-scrolling.ps--y>.ps__scrollbar-y-rail>.ps__scrollbar-y{background-color:#999;width:11px}.ps:hover>.ps__scrollbar-x-rail,.ps:hover>.ps__scrollbar-y-rail{opacity:.6}.ps:hover>.ps__scrollbar-x-rail:hover{background-color:#eee;opacity:.9}.ps:hover>.ps__scrollbar-x-rail:hover>.ps__scrollbar-x{background-color:#999}.ps:hover>.ps__scrollbar-y-rail:hover{background-color:#eee;opacity:.9}.ps:hover>.ps__scrollbar-y-rail:hover>.ps__scrollbar-y{background-color:#999}.ps-container{position:relative}",""])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;ee.scrollbarYTop?1:-1;i(t,"top",t.scrollTop+a*e.containerHeight),o(t),r.stopPropagation()})),e.event.bind(e.scrollbarX,"click",r),e.event.bind(e.scrollbarXRail,"click",(function(r){var a=r.pageX-window.pageXOffset-n(e.scrollbarXRail).left>e.scrollbarXLeft?1:-1;i(t,"left",t.scrollLeft+a*e.containerWidth),o(t),r.stopPropagation()}))}(t,r.get(t))}},function(t,e,n){"use strict";var r=n(2),o=n(4),i=n(0),a=n(1),s=n(3);t.exports=function(t){var e=i.get(t);(function(t,e){function n(n){var o=i+n*e.railXRatio,a=Math.max(0,e.scrollbarXRail.getBoundingClientRect().left)+e.railXRatio*(e.railXWidth-e.scrollbarXWidth);e.scrollbarXLeft=o<0?0:o>a?a:o;var l=r.toInt(e.scrollbarXLeft*(e.contentWidth-e.containerWidth)/(e.containerWidth-e.railXRatio*e.scrollbarXWidth))-e.negativeScrollAdjustment;s(t,"left",l)}var i=null,l=null,c=function(e){n(e.pageX-l),a(t),e.stopPropagation(),e.preventDefault()},u=function(){r.stopScrolling(t,"x"),e.event.unbind(e.ownerDocument,"mousemove",c)};e.event.bind(e.scrollbarX,"mousedown",(function(n){l=n.pageX,i=r.toInt(o.css(e.scrollbarX,"left"))*e.railXRatio,r.startScrolling(t,"x"),e.event.bind(e.ownerDocument,"mousemove",c),e.event.once(e.ownerDocument,"mouseup",u),n.stopPropagation(),n.preventDefault()}))})(t,e),function(t,e){function n(n){var o=i+n*e.railYRatio,a=Math.max(0,e.scrollbarYRail.getBoundingClientRect().top)+e.railYRatio*(e.railYHeight-e.scrollbarYHeight);e.scrollbarYTop=o<0?0:o>a?a:o;var l=r.toInt(e.scrollbarYTop*(e.contentHeight-e.containerHeight)/(e.containerHeight-e.railYRatio*e.scrollbarYHeight));s(t,"top",l)}var i=null,l=null,c=function(e){n(e.pageY-l),a(t),e.stopPropagation(),e.preventDefault()},u=function(){r.stopScrolling(t,"y"),e.event.unbind(e.ownerDocument,"mousemove",c)};e.event.bind(e.scrollbarY,"mousedown",(function(n){l=n.pageY,i=r.toInt(o.css(e.scrollbarY,"top"))*e.railYRatio,r.startScrolling(t,"y"),e.event.bind(e.ownerDocument,"mousemove",c),e.event.once(e.ownerDocument,"mouseup",u),n.stopPropagation(),n.preventDefault()}))}(t,e)}},function(t,e,n){"use strict";function r(t,e){var n=!1;e.event.bind(t,"mouseenter",(function(){n=!0})),e.event.bind(t,"mouseleave",(function(){n=!1}));e.event.bind(e.ownerDocument,"keydown",(function(r){if(!(r.isDefaultPrevented&&r.isDefaultPrevented()||r.defaultPrevented)){var a=i.matches(e.scrollbarX,":focus")||i.matches(e.scrollbarY,":focus");if(n||a){var c=document.activeElement?document.activeElement:e.ownerDocument.activeElement;if(c){if("IFRAME"===c.tagName)c=c.contentDocument.activeElement;else for(;c.shadowRoot;)c=c.shadowRoot.activeElement;if(o.isEditable(c))return}var u=0,f=0;switch(r.which){case 37:u=r.metaKey?-e.contentWidth:r.altKey?-e.containerWidth:-30;break;case 38:f=r.metaKey?e.contentHeight:r.altKey?e.containerHeight:30;break;case 39:u=r.metaKey?e.contentWidth:r.altKey?e.containerWidth:30;break;case 40:f=r.metaKey?-e.contentHeight:r.altKey?-e.containerHeight:-30;break;case 33:f=90;break;case 32:f=r.shiftKey?90:-90;break;case 34:f=-90;break;case 35:f=r.ctrlKey?-e.contentHeight:-e.containerHeight;break;case 36:f=r.ctrlKey?t.scrollTop:e.containerHeight;break;default:return}l(t,"top",t.scrollTop-f),l(t,"left",t.scrollLeft+u),s(t),function(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var i=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===i&&n<0||i>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}(u,f)&&r.preventDefault()}}}))}var o=n(2),i=n(4),a=n(0),s=n(1),l=n(3);t.exports=function(t){r(t,a.get(t))}},function(t,e,n){"use strict";function r(t,e){function n(n){var o=function(t){var e=t.deltaX,n=-1*t.deltaY;return void 0!==e&&void 0!==n||(e=-1*t.wheelDeltaX/6,n=t.wheelDeltaY/6),t.deltaMode&&1===t.deltaMode&&(e*=10,n*=10),e!=e&&n!=n&&(e=0,n=t.wheelDelta),t.shiftKey?[-n,-e]:[e,n]}(n),s=o[0],l=o[1];(function(e,n){var r=t.querySelector("textarea:hover, select[multiple]:hover, .ps-child:hover");if(r){var o=window.getComputedStyle(r);if(![o.overflow,o.overflowX,o.overflowY].join("").match(/(scroll|auto)/))return!1;var i=r.scrollHeight-r.clientHeight;if(i>0&&!(0===r.scrollTop&&n>0||r.scrollTop===i&&n<0))return!0;var a=r.scrollLeft-r.clientWidth;if(a>0&&!(0===r.scrollLeft&&e<0||r.scrollLeft===a&&e>0))return!0}return!1})(s,l)||(r=!1,e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(a(t,"top",l?t.scrollTop-l*e.settings.wheelSpeed:t.scrollTop+s*e.settings.wheelSpeed),r=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(a(t,"left",s?t.scrollLeft+s*e.settings.wheelSpeed:t.scrollLeft-l*e.settings.wheelSpeed),r=!0):(a(t,"top",t.scrollTop-l*e.settings.wheelSpeed),a(t,"left",t.scrollLeft+s*e.settings.wheelSpeed)),i(t),(r=r||function(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var i=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===i&&n<0||i>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}(s,l))&&(n.stopPropagation(),n.preventDefault()))}var r=!1;void 0!==window.onwheel?e.event.bind(t,"wheel",n):void 0!==window.onmousewheel&&e.event.bind(t,"mousewheel",n)}var o=n(0),i=n(1),a=n(3);t.exports=function(t){r(t,o.get(t))}},function(t,e,n){"use strict";var r=n(0),o=n(1);t.exports=function(t){!function(t,e){e.event.bind(t,"scroll",(function(){o(t)}))}(t,r.get(t))}},function(t,e,n){"use strict";function r(t,e){function n(){l||(l=setInterval((function(){i.get(t)?(s(t,"top",t.scrollTop+c.top),s(t,"left",t.scrollLeft+c.left),a(t)):clearInterval(l)}),50))}function r(){l&&(clearInterval(l),l=null),o.stopScrolling(t)}var l=null,c={top:0,left:0},u=!1;e.event.bind(e.ownerDocument,"selectionchange",(function(){t.contains(function(){var t=window.getSelection?window.getSelection():document.getSelection?document.getSelection():"";return 0===t.toString().length?null:t.getRangeAt(0).commonAncestorContainer}())?u=!0:(u=!1,r())})),e.event.bind(window,"mouseup",(function(){u&&(u=!1,r())})),e.event.bind(window,"keyup",(function(){u&&(u=!1,r())})),e.event.bind(window,"mousemove",(function(e){if(u){var i={x:e.pageX,y:e.pageY},a={left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,top:t.offsetTop,bottom:t.offsetTop+t.offsetHeight};i.xa.right-3?(c.left=5,o.startScrolling(t,"x")):c.left=0,i.ya.bottom-3?(c.top=i.y-a.bottom+3<5?5:20,o.startScrolling(t,"y")):c.top=0,0===c.top&&0===c.left?r():n()}}))}var o=n(2),i=n(0),a=n(1),s=n(3);t.exports=function(t){r(t,i.get(t))}},function(t,e,n){"use strict";var r=n(2),o=n(0),i=n(1),a=n(3);t.exports=function(t){(r.env.supportsTouch||r.env.supportsIePointer)&&function(t,e,n,r){function s(n,r){var o=t.scrollTop,i=t.scrollLeft,a=Math.abs(n),s=Math.abs(r);if(s>a){if(r<0&&o===e.contentHeight-e.containerHeight||r>0&&0===o)return!e.settings.swipePropagation}else if(a>s&&(n<0&&i===e.contentWidth-e.containerWidth||n>0&&0===i))return!e.settings.swipePropagation;return!0}function l(e,n){a(t,"top",t.scrollTop-n),a(t,"left",t.scrollLeft-e),i(t)}function c(){w=!0}function u(){w=!1}function f(t){return t.targetTouches?t.targetTouches[0]:t}function p(t){return!(t.pointerType&&"pen"===t.pointerType&&0===t.buttons||(!t.targetTouches||1!==t.targetTouches.length)&&(!t.pointerType||"mouse"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_MOUSE))}function d(t){if(p(t)){x=!0;var e=f(t);v.pageX=e.pageX,v.pageY=e.pageY,g=(new Date).getTime(),null!==b&&clearInterval(b),t.stopPropagation()}}function h(t){if(!x&&e.settings.swipePropagation&&d(t),!w&&x&&p(t)){var n=f(t),r={pageX:n.pageX,pageY:n.pageY},o=r.pageX-v.pageX,i=r.pageY-v.pageY;l(o,i),v=r;var a=(new Date).getTime(),c=a-g;c>0&&(y.x=o/c,y.y=i/c,g=a),s(o,i)&&(t.stopPropagation(),t.preventDefault())}}function m(){!w&&x&&(x=!1,e.settings.swipeEasing&&(clearInterval(b),b=setInterval((function(){return o.get(t)&&(y.x||y.y)?Math.abs(y.x)<.01&&Math.abs(y.y)<.01?void clearInterval(b):(l(30*y.x,30*y.y),y.x*=.8,void(y.y*=.8)):void clearInterval(b)}),10)))}var v={},g=0,y={},b=null,w=!1,x=!1;n?(e.event.bind(window,"touchstart",c),e.event.bind(window,"touchend",u),e.event.bind(t,"touchstart",d),e.event.bind(t,"touchmove",h),e.event.bind(t,"touchend",m)):r&&(window.PointerEvent?(e.event.bind(window,"pointerdown",c),e.event.bind(window,"pointerup",u),e.event.bind(t,"pointerdown",d),e.event.bind(t,"pointermove",h),e.event.bind(t,"pointerup",m)):window.MSPointerEvent&&(e.event.bind(window,"MSPointerDown",c),e.event.bind(window,"MSPointerUp",u),e.event.bind(t,"MSPointerDown",d),e.event.bind(t,"MSPointerMove",h),e.event.bind(t,"MSPointerUp",m)))}(t,o.get(t),r.env.supportsTouch,r.env.supportsIePointer)}},function(t,e,n){"use strict";var r=n(0),o=n(1),i={"click-rail":n(16),"drag-scrollbar":n(17),keyboard:n(18),wheel:n(19),touch:n(22),selection:n(21)},a=n(20);t.exports=function(t,e){t.classList.add("ps");var n=r.add(t,"object"==typeof e?e:{});t.classList.add("ps--theme_"+n.settings.theme),n.settings.handlers.forEach((function(e){i[e](t)})),a(t),o(t)}},function(t,e,n){"use strict";var r=n(2),o=n(4),i=n(0),a=n(1),s=n(3);t.exports=function(t){var e=i.get(t);e&&(e.negativeScrollAdjustment=e.isNegativeScroll?t.scrollWidth-t.clientWidth:0,o.css(e.scrollbarXRail,"display","block"),o.css(e.scrollbarYRail,"display","block"),e.railXMarginWidth=r.toInt(o.css(e.scrollbarXRail,"marginLeft"))+r.toInt(o.css(e.scrollbarXRail,"marginRight")),e.railYMarginHeight=r.toInt(o.css(e.scrollbarYRail,"marginTop"))+r.toInt(o.css(e.scrollbarYRail,"marginBottom")),o.css(e.scrollbarXRail,"display","none"),o.css(e.scrollbarYRail,"display","none"),a(t),s(t,"top",t.scrollTop),s(t,"left",t.scrollLeft),o.css(e.scrollbarXRail,"display",""),o.css(e.scrollbarYRail,"display",""))}},function(t,e){t.exports=function(t,e,n,r){var o,i=t=t||{},a=typeof t.default;"object"!==a&&"function"!==a||(o=t,i=t.default);var s="function"==typeof i?i.options:i;if(e&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns),n&&(s._scopeId=n),r){var l=s.computed||(s.computed={});Object.keys(r).forEach((function(t){var e=r[t];l[t]=function(){return e}}))}return{esModule:o,exports:i,options:s}}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement;return(t._self._c||e)(t.$props.tagname,{tag:"section",staticClass:"ps-container",on:{"~mouseover":function(e){t.update(e)},"ps-scroll-y":t.scrollHanle,"ps-scroll-x":t.scrollHanle,"ps-scroll-up":t.scrollHanle,"ps-scroll-down":t.scrollHanle,"ps-scroll-left":t.scrollHanle,"ps-scroll-right":t.scrollHanle,"ps-y-reach-start":t.scrollHanle,"ps-y-reach-end":t.scrollHanle,"ps-x-reach-start":t.scrollHanle,"ps-x-reach-end":t.scrollHanle}},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){function n(t,e){for(var n=0;n=0&&h.splice(e,1)}(n)};return r(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;r(t=e)}else i()}}function a(t,e,n,r){var o=n?"":r.css;if(t.styleSheet)t.styleSheet.cssText=m(e,o);else{var i=document.createTextNode(o),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}function s(t,e){var n=e.css,r=e.media,o=e.sourceMap;if(r&&t.setAttribute("media",r),o&&(n+="\n/*# sourceURL="+o.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */"),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}var l={},c=function(t){var e;return function(){return void 0===e&&(e=t.apply(this,arguments)),e}},u=c((function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())})),f=c((function(){return document.head||document.getElementsByTagName("head")[0]})),p=null,d=0,h=[];t.exports=function(t,e){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");void 0===(e=e||{}).singleton&&(e.singleton=u()),void 0===e.insertAt&&(e.insertAt="bottom");var o=r(t);return n(o,e),function(t){for(var i=[],a=0;ae.scrollbarYTop?1:-1;i(t,"top",t.scrollTop+a*e.containerHeight),o(t),r.stopPropagation()})),e.event.bind(e.scrollbarX,"click",r),e.event.bind(e.scrollbarXRail,"click",(function(r){var a=r.pageX-window.pageXOffset-n(e.scrollbarXRail).left>e.scrollbarXLeft?1:-1;i(t,"left",t.scrollLeft+a*e.containerWidth),o(t),r.stopPropagation()}))}(t,r.get(t))}},function(t,e,n){"use strict";var r=n(3),o=n(5),i=n(1),a=n(2),s=n(4);function l(t,e){var n=null,i=null;var l=function(o){!function(o){var i=n+o*e.railXRatio,a=Math.max(0,e.scrollbarXRail.getBoundingClientRect().left)+e.railXRatio*(e.railXWidth-e.scrollbarXWidth);e.scrollbarXLeft=i<0?0:i>a?a:i;var l=r.toInt(e.scrollbarXLeft*(e.contentWidth-e.containerWidth)/(e.containerWidth-e.railXRatio*e.scrollbarXWidth))-e.negativeScrollAdjustment;s(t,"left",l)}(o.pageX-i),a(t),o.stopPropagation(),o.preventDefault()},c=function(){r.stopScrolling(t,"x"),e.event.unbind(e.ownerDocument,"mousemove",l)};e.event.bind(e.scrollbarX,"mousedown",(function(a){i=a.pageX,n=r.toInt(o.css(e.scrollbarX,"left"))*e.railXRatio,r.startScrolling(t,"x"),e.event.bind(e.ownerDocument,"mousemove",l),e.event.once(e.ownerDocument,"mouseup",c),a.stopPropagation(),a.preventDefault()}))}function c(t,e){var n=null,i=null;var l=function(o){!function(o){var i=n+o*e.railYRatio,a=Math.max(0,e.scrollbarYRail.getBoundingClientRect().top)+e.railYRatio*(e.railYHeight-e.scrollbarYHeight);e.scrollbarYTop=i<0?0:i>a?a:i;var l=r.toInt(e.scrollbarYTop*(e.contentHeight-e.containerHeight)/(e.containerHeight-e.railYRatio*e.scrollbarYHeight));s(t,"top",l)}(o.pageY-i),a(t),o.stopPropagation(),o.preventDefault()},c=function(){r.stopScrolling(t,"y"),e.event.unbind(e.ownerDocument,"mousemove",l)};e.event.bind(e.scrollbarY,"mousedown",(function(a){i=a.pageY,n=r.toInt(o.css(e.scrollbarY,"top"))*e.railYRatio,r.startScrolling(t,"y"),e.event.bind(e.ownerDocument,"mousemove",l),e.event.once(e.ownerDocument,"mouseup",c),a.stopPropagation(),a.preventDefault()}))}t.exports=function(t){var e=i.get(t);l(t,e),c(t,e)}},function(t,e,n){"use strict";var r=n(3),o=n(5),i=n(1),a=n(2),s=n(4);function l(t,e){var n=!1;e.event.bind(t,"mouseenter",(function(){n=!0})),e.event.bind(t,"mouseleave",(function(){n=!1}));e.event.bind(e.ownerDocument,"keydown",(function(i){if(!(i.isDefaultPrevented&&i.isDefaultPrevented()||i.defaultPrevented)){var l=o.matches(e.scrollbarX,":focus")||o.matches(e.scrollbarY,":focus");if(n||l){var c=document.activeElement?document.activeElement:e.ownerDocument.activeElement;if(c){if("IFRAME"===c.tagName)c=c.contentDocument.activeElement;else for(;c.shadowRoot;)c=c.shadowRoot.activeElement;if(r.isEditable(c))return}var u=0,f=0;switch(i.which){case 37:u=i.metaKey?-e.contentWidth:i.altKey?-e.containerWidth:-30;break;case 38:f=i.metaKey?e.contentHeight:i.altKey?e.containerHeight:30;break;case 39:u=i.metaKey?e.contentWidth:i.altKey?e.containerWidth:30;break;case 40:f=i.metaKey?-e.contentHeight:i.altKey?-e.containerHeight:-30;break;case 33:f=90;break;case 32:f=i.shiftKey?90:-90;break;case 34:f=-90;break;case 35:f=i.ctrlKey?-e.contentHeight:-e.containerHeight;break;case 36:f=i.ctrlKey?t.scrollTop:e.containerHeight;break;default:return}s(t,"top",t.scrollTop-f),s(t,"left",t.scrollLeft+u),a(t),function(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var i=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===i&&n<0||i>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}(u,f)&&i.preventDefault()}}}))}t.exports=function(t){l(t,i.get(t))}},function(t,e,n){"use strict";var r=n(1),o=n(2),i=n(4);function a(t,e){var n=!1;function r(r){var a=function(t){var e=t.deltaX,n=-1*t.deltaY;return void 0!==e&&void 0!==n||(e=-1*t.wheelDeltaX/6,n=t.wheelDeltaY/6),t.deltaMode&&1===t.deltaMode&&(e*=10,n*=10),e!=e&&n!=n&&(e=0,n=t.wheelDelta),t.shiftKey?[-n,-e]:[e,n]}(r),s=a[0],l=a[1];(function(e,n){var r=t.querySelector("textarea:hover, select[multiple]:hover, .ps-child:hover");if(r){var o=window.getComputedStyle(r);if(![o.overflow,o.overflowX,o.overflowY].join("").match(/(scroll|auto)/))return!1;var i=r.scrollHeight-r.clientHeight;if(i>0&&!(0===r.scrollTop&&n>0||r.scrollTop===i&&n<0))return!0;var a=r.scrollLeft-r.clientWidth;if(a>0&&!(0===r.scrollLeft&&e<0||r.scrollLeft===a&&e>0))return!0}return!1})(s,l)||(n=!1,e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(i(t,"top",l?t.scrollTop-l*e.settings.wheelSpeed:t.scrollTop+s*e.settings.wheelSpeed),n=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(i(t,"left",s?t.scrollLeft+s*e.settings.wheelSpeed:t.scrollLeft-l*e.settings.wheelSpeed),n=!0):(i(t,"top",t.scrollTop-l*e.settings.wheelSpeed),i(t,"left",t.scrollLeft+s*e.settings.wheelSpeed)),o(t),(n=n||function(n,r){var o=t.scrollTop;if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var i=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===i&&n<0||i>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}(s,l))&&(r.stopPropagation(),r.preventDefault()))}void 0!==window.onwheel?e.event.bind(t,"wheel",r):void 0!==window.onmousewheel&&e.event.bind(t,"mousewheel",r)}t.exports=function(t){a(t,r.get(t))}},function(t,e,n){"use strict";var r=n(3),o=n(1),i=n(2),a=n(4);function s(t,e,n,r){function s(e,n){a(t,"top",t.scrollTop-n),a(t,"left",t.scrollLeft-e),i(t)}var l={},c=0,u={},f=null,p=!1,d=!1;function h(){p=!0}function m(){p=!1}function v(t){return t.targetTouches?t.targetTouches[0]:t}function g(t){return(!t.pointerType||"pen"!==t.pointerType||0!==t.buttons)&&(!(!t.targetTouches||1!==t.targetTouches.length)||!(!t.pointerType||"mouse"===t.pointerType||t.pointerType===t.MSPOINTER_TYPE_MOUSE))}function y(t){if(g(t)){d=!0;var e=v(t);l.pageX=e.pageX,l.pageY=e.pageY,c=(new Date).getTime(),null!==f&&clearInterval(f),t.stopPropagation()}}function b(n){if(!d&&e.settings.swipePropagation&&y(n),!p&&d&&g(n)){var r=v(n),o={pageX:r.pageX,pageY:r.pageY},i=o.pageX-l.pageX,a=o.pageY-l.pageY;s(i,a),l=o;var f=(new Date).getTime(),h=f-c;h>0&&(u.x=i/h,u.y=a/h,c=f),function(n,r){var o=t.scrollTop,i=t.scrollLeft,a=Math.abs(n),s=Math.abs(r);if(s>a){if(r<0&&o===e.contentHeight-e.containerHeight||r>0&&0===o)return!e.settings.swipePropagation}else if(a>s&&(n<0&&i===e.contentWidth-e.containerWidth||n>0&&0===i))return!e.settings.swipePropagation;return!0}(i,a)&&(n.stopPropagation(),n.preventDefault())}}function w(){!p&&d&&(d=!1,e.settings.swipeEasing&&(clearInterval(f),f=setInterval((function(){o.get(t)&&(u.x||u.y)?Math.abs(u.x)<.01&&Math.abs(u.y)<.01?clearInterval(f):(s(30*u.x,30*u.y),u.x*=.8,u.y*=.8):clearInterval(f)}),10)))}n?(e.event.bind(window,"touchstart",h),e.event.bind(window,"touchend",m),e.event.bind(t,"touchstart",y),e.event.bind(t,"touchmove",b),e.event.bind(t,"touchend",w)):r&&(window.PointerEvent?(e.event.bind(window,"pointerdown",h),e.event.bind(window,"pointerup",m),e.event.bind(t,"pointerdown",y),e.event.bind(t,"pointermove",b),e.event.bind(t,"pointerup",w)):window.MSPointerEvent&&(e.event.bind(window,"MSPointerDown",h),e.event.bind(window,"MSPointerUp",m),e.event.bind(t,"MSPointerDown",y),e.event.bind(t,"MSPointerMove",b),e.event.bind(t,"MSPointerUp",w)))}t.exports=function(t){(r.env.supportsTouch||r.env.supportsIePointer)&&s(t,o.get(t),r.env.supportsTouch,r.env.supportsIePointer)}},function(t,e,n){"use strict";var r=n(3),o=n(1),i=n(2),a=n(4);function s(t,e){var n=null,s={top:0,left:0};function l(){n&&(clearInterval(n),n=null),r.stopScrolling(t)}var c=!1;e.event.bind(e.ownerDocument,"selectionchange",(function(){var e;t.contains(0===(e=window.getSelection?window.getSelection():document.getSelection?document.getSelection():"").toString().length?null:e.getRangeAt(0).commonAncestorContainer)?c=!0:(c=!1,l())})),e.event.bind(window,"mouseup",(function(){c&&(c=!1,l())})),e.event.bind(window,"keyup",(function(){c&&(c=!1,l())})),e.event.bind(window,"mousemove",(function(e){if(c){var u={x:e.pageX,y:e.pageY},f={left:t.offsetLeft,right:t.offsetLeft+t.offsetWidth,top:t.offsetTop,bottom:t.offsetTop+t.offsetHeight};u.xf.right-3?(s.left=5,r.startScrolling(t,"x")):s.left=0,u.yf.bottom-3?(s.top=u.y-f.bottom+3<5?5:20,r.startScrolling(t,"y")):s.top=0,0===s.top&&0===s.left?l():n||(n=setInterval((function(){o.get(t)?(a(t,"top",t.scrollTop+s.top),a(t,"left",t.scrollLeft+s.left),i(t)):clearInterval(n)}),50))}}))}t.exports=function(t){s(t,o.get(t))}},function(t,e,n){"use strict";var r=n(1),o=n(2);t.exports=function(t){!function(t,e){e.event.bind(t,"scroll",(function(){o(t)}))}(t,r.get(t))}},function(t,e,n){"use strict";var r=n(3),o=n(5),i=n(1),a=n(2),s=n(4);t.exports=function(t){var e=i.get(t);e&&(e.negativeScrollAdjustment=e.isNegativeScroll?t.scrollWidth-t.clientWidth:0,o.css(e.scrollbarXRail,"display","block"),o.css(e.scrollbarYRail,"display","block"),e.railXMarginWidth=r.toInt(o.css(e.scrollbarXRail,"marginLeft"))+r.toInt(o.css(e.scrollbarXRail,"marginRight")),e.railYMarginHeight=r.toInt(o.css(e.scrollbarYRail,"marginTop"))+r.toInt(o.css(e.scrollbarYRail,"marginBottom")),o.css(e.scrollbarXRail,"display","none"),o.css(e.scrollbarYRail,"display","none"),a(t),s(t,"top",t.scrollTop),s(t,"left",t.scrollLeft),o.css(e.scrollbarXRail,"display",""),o.css(e.scrollbarYRail,"display",""))}},function(t,e,n){t.exports=function(){"use strict";function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(e)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:"flex";t.style.opacity="",t.style.display=e},M=function(t){t.style.opacity="",t.style.display="none"},I=function(t,e,n){e?j(t,n):M(t)},H=function(t){return!(!t||!(t.offsetWidth||t.offsetHeight||t.getClientRects().length))},N=function(t){var e=window.getComputedStyle(t),n=parseFloat(e.getPropertyValue("animation-duration")||"0"),r=parseFloat(e.getPropertyValue("transition-duration")||"0");return n>0||r>0},D=function(){return document.body.querySelector("."+x.container)},B=function(t){var e=D();return e?e.querySelector(t):null},Y=function(t){return B("."+t)},X=function(){return Y(x.popup)},W=function(){var t=X();return p(t.querySelectorAll("."+x.icon))},F=function(){var t=W().filter((function(t){return H(t)}));return t.length?t[0]:null},V=function(){return Y(x.title)},z=function(){return Y(x.content)},U=function(){return Y(x.image)},q=function(){return Y(x["progress-steps"])},K=function(){return Y(x["validation-message"])},G=function(){return B("."+x.actions+" ."+x.confirm)},J=function(){return B("."+x.actions+" ."+x.cancel)},Z=function(){return Y(x.actions)},Q=function(){return Y(x.header)},tt=function(){return Y(x.footer)},et=function(){return Y(x.close)},nt=function(){var t=p(X().querySelectorAll('[tabindex]:not([tabindex="-1"]):not([tabindex="0"])')).sort((function(t,e){return(t=parseInt(t.getAttribute("tabindex")))>(e=parseInt(e.getAttribute("tabindex")))?1:t\n
\n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n \n

    \n \n
    \n
    \n
    \n \n \n
    \n \n \n
    \n \n
    \n \n \n
    \n
    \n
    \n \n \n
    \n
    \n
    \n
    \n').replace(/(^|\n)\s*/g,""),st=function(t){Xe.isVisible()&&O!==t.target.value&&Xe.resetValidationMessage(),O=t.target.value},lt=function(t){var e;if((e=D())&&(e.parentNode.removeChild(e),$([document.documentElement,document.body],[x["no-backdrop"],x["toast-shown"],x["has-column"]])),it())h("SweetAlert2 requires document to initialize");else{var n=document.createElement("div");n.className=x.container,n.innerHTML=at;var r,o,i,a,s,l,c,u,f,p="string"==typeof(r=t.target)?document.querySelector(r):r;p.appendChild(n),function(t){var e=X();e.setAttribute("role",t.toast?"alert":"dialog"),e.setAttribute("aria-live",t.toast?"polite":"assertive"),t.toast||e.setAttribute("aria-modal","true")}(t),function(t){"rtl"===window.getComputedStyle(t).direction&&L(D(),x.rtl)}(p),o=z(),i=P(o,x.input),a=P(o,x.file),s=o.querySelector(".".concat(x.range," input")),l=o.querySelector(".".concat(x.range," output")),c=P(o,x.select),u=o.querySelector(".".concat(x.checkbox," input")),f=P(o,x.textarea),i.oninput=st,a.onchange=st,c.onchange=st,u.onchange=st,f.oninput=st,s.oninput=function(t){st(t),l.value=s.value},s.onchange=function(t){st(t),s.nextSibling.value=s.value}}},ct=function(e,n){e instanceof HTMLElement?n.appendChild(e):"object"===t(e)?ut(n,e):e&&(n.innerHTML=e)},ut=function(t,e){if(t.innerHTML="",0 in e)for(var n=0;n in e;n++)t.appendChild(e[n].cloneNode(!0));else t.appendChild(e.cloneNode(!0))},ft=function(){if(it())return!1;var t=document.createElement("div"),e={WebkitAnimation:"webkitAnimationEnd",OAnimation:"oAnimationEnd oanimationend",animation:"animationend"};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&void 0!==t.style[n])return e[n];return!1}(),pt=function(t,e){var n=Z(),r=G(),o=J();e.showConfirmButton||e.showCancelButton||M(n),C(n,e.customClass,"actions"),dt(r,"confirm",e),dt(o,"cancel",e),e.buttonsStyling?function(t,e,n){L([t,e],x.styled),n.confirmButtonColor&&(t.style.backgroundColor=n.confirmButtonColor),n.cancelButtonColor&&(e.style.backgroundColor=n.cancelButtonColor);var r=window.getComputedStyle(t).getPropertyValue("background-color");t.style.borderLeftColor=r,t.style.borderRightColor=r}(r,o,e):($([r,o],x.styled),r.style.backgroundColor=r.style.borderLeftColor=r.style.borderRightColor="",o.style.backgroundColor=o.style.borderLeftColor=o.style.borderRightColor=""),e.reverseButtons&&r.parentNode.insertBefore(o,r)};function dt(t,e,n){I(t,n["showC"+e.substring(1)+"Button"],"inline-block"),t.innerHTML=n[e+"ButtonText"],t.setAttribute("aria-label",n[e+"ButtonAriaLabel"]),t.className=x[e],C(t,n.customClass,e+"Button"),L(t,n[e+"ButtonClass"])}var ht=function(t,e){var n=D();n&&(function(t,e){"string"==typeof e?t.style.background=e:e||L([document.documentElement,document.body],x["no-backdrop"])}(n,e.backdrop),!e.backdrop&&e.allowOutsideClick&&d('"allowOutsideClick" parameter requires `backdrop` parameter to be set to `true`'),function(t,e){e in x?L(t,x[e]):(d('The "position" parameter is not valid, defaulting to "center"'),L(t,x.center))}(n,e.position),function(t,e){if(e&&"string"==typeof e){var n="grow-"+e;n in x&&L(t,x[n])}}(n,e.grow),C(n,e.customClass,"container"),e.customContainerClass&&L(n,e.customContainerClass))},mt={promise:new WeakMap,innerParams:new WeakMap,domCache:new WeakMap},vt=["input","file","range","select","radio","checkbox","textarea"],gt=function(t){if(!_t[t.input])return h('Unexpected type of input! Expected "text", "email", "password", "number", "tel", "select", "radio", "checkbox", "textarea", "file" or "url", got "'.concat(t.input,'"'));var e=xt(t.input),n=_t[t.input](e,t);j(n),setTimeout((function(){E(n)}))},yt=function(t,e){var n=T(z(),t);if(n)for(var r in function(t){for(var e=0;en?e+"px":null})).observe(t,{attributes:!0,attributeFilter:["style"]})}return t};var kt=function(t,e){var n=z().querySelector("#"+x.content);e.html?(ct(e.html,n),j(n,"block")):e.text?(n.textContent=e.text,j(n,"block")):M(n),function(t,e){var n=z(),r=mt.innerParams.get(t),o=!r||e.input!==r.input;vt.forEach((function(t){var r=x[t],i=P(n,r);yt(t,e.inputAttributes),i.className=r,o&&M(i)})),e.input&&(o&>(e),bt(e))}(t,e),C(z(),e.customClass,"content")},St=function(){for(var t=W(),e=0;e=e.progressSteps.length&&d("Invalid currentProgressStep parameter, it should be less than progressSteps.length (currentProgressStep like JS arrays starts from 0)"),e.progressSteps.forEach((function(t,o){var i=function(t){var e=document.createElement("li");return L(e,x["progress-step"]),e.innerHTML=t,e}(t);if(n.appendChild(i),o===r&&L(i,x["active-progress-step"]),o!==e.progressSteps.length-1){var a=function(t){var e=document.createElement("li");return L(e,x["progress-step-line"]),t.progressStepsDistance&&(e.style.width=t.progressStepsDistance),e}(t);n.appendChild(a)}}))},Ot=function(t,e){var n=Q();C(n,e.customClass,"header"),Tt(0,e),function(t,e){var n=mt.innerParams.get(t);if(n&&e.type===n.type&&F())C(F(),e.customClass,"icon");else if(St(),e.type)if(Ct(),-1!==Object.keys(_).indexOf(e.type)){var r=B(".".concat(x.icon,".").concat(_[e.type]));j(r),C(r,e.customClass,"icon"),A(r,"swal2-animate-".concat(e.type,"-icon"),e.animation)}else h('Unknown type! Expected "success", "error", "warning", "info" or "question", got "'.concat(e.type,'"'))}(t,e),function(t,e){var n=U();if(!e.imageUrl)return M(n);j(n),n.setAttribute("src",e.imageUrl),n.setAttribute("alt",e.imageAlt),R(n,"width",e.imageWidth),R(n,"height",e.imageHeight),n.className=x.image,C(n,e.customClass,"image"),e.imageClass&&L(n,e.imageClass)}(0,e),function(t,e){var n=V();I(n,e.title||e.titleText),e.title&&ct(e.title,n),e.titleText&&(n.innerText=e.titleText),C(n,e.customClass,"title")}(0,e),function(t,e){var n=et();n.innerHTML=e.closeButtonHtml,C(n,e.customClass,"closeButton"),I(n,e.showCloseButton),n.setAttribute("aria-label",e.closeButtonAriaLabel)}(0,e)},Et=function(t,e){!function(t,e){var n=X();R(n,"width",e.width),R(n,"padding",e.padding),e.background&&(n.style.background=e.background),n.className=x.popup,e.toast?(L([document.documentElement,document.body],x["toast-shown"]),L(n,x.toast)):L(n,x.modal),C(n,e.customClass,"popup"),"string"==typeof e.customClass&&L(n,e.customClass),A(n,x.noanimation,!e.animation)}(0,e),ht(0,e),Ot(t,e),kt(t,e),pt(0,e),function(t,e){var n=tt();I(n,e.footer),e.footer&&ct(e.footer,n),C(n,e.customClass,"footer")}(0,e),"function"==typeof e.onRender&&e.onRender(X())},At=function(){return G()&&G().click()},Lt=[],$t=function(){var t=X();t||Xe.fire(""),t=X();var e=Z(),n=G(),r=J();j(e),j(n),L([t,e],x.loading),n.disabled=!0,r.disabled=!0,t.setAttribute("data-loading",!0),t.setAttribute("aria-busy",!0),t.focus()},Pt={},Rt=function(){return new Promise((function(t){var e=window.scrollX,n=window.scrollY;Pt.restoreFocusTimeout=setTimeout((function(){Pt.previousActiveElement&&Pt.previousActiveElement.focus?(Pt.previousActiveElement.focus(),Pt.previousActiveElement=null):document.body&&document.body.focus(),t()}),100),void 0!==e&&void 0!==n&&window.scrollTo(e,n)}))},jt={title:"",titleText:"",text:"",html:"",footer:"",type:null,toast:!1,customClass:"",customContainerClass:"",target:"body",backdrop:!0,animation:!0,heightAuto:!0,allowOutsideClick:!0,allowEscapeKey:!0,allowEnterKey:!0,stopKeydownPropagation:!0,keydownListenerCapture:!1,showConfirmButton:!0,showCancelButton:!1,preConfirm:null,confirmButtonText:"OK",confirmButtonAriaLabel:"",confirmButtonColor:null,confirmButtonClass:"",cancelButtonText:"Cancel",cancelButtonAriaLabel:"",cancelButtonColor:null,cancelButtonClass:"",buttonsStyling:!0,reverseButtons:!1,focusConfirm:!0,focusCancel:!1,showCloseButton:!1,closeButtonHtml:"×",closeButtonAriaLabel:"Close this dialog",showLoaderOnConfirm:!1,imageUrl:null,imageWidth:null,imageHeight:null,imageAlt:"",imageClass:"",timer:null,width:null,padding:null,background:null,input:null,inputPlaceholder:"",inputValue:"",inputOptions:{},inputAutoTrim:!0,inputClass:"",inputAttributes:{},inputValidator:null,validationMessage:null,grow:!1,position:"center",progressSteps:[],currentProgressStep:null,progressStepsDistance:null,onBeforeOpen:null,onOpen:null,onRender:null,onClose:null,onAfterClose:null,scrollbarPadding:!0},Mt=["title","titleText","text","html","type","customClass","showConfirmButton","showCancelButton","confirmButtonText","confirmButtonAriaLabel","confirmButtonColor","confirmButtonClass","cancelButtonText","cancelButtonAriaLabel","cancelButtonColor","cancelButtonClass","buttonsStyling","reverseButtons","imageUrl","imageWidth","imageHeigth","imageAlt","imageClass","progressSteps","currentProgressStep"],It={customContainerClass:"customClass",confirmButtonClass:"customClass",cancelButtonClass:"customClass",imageClass:"customClass",inputClass:"customClass"},Ht=["allowOutsideClick","allowEnterKey","backdrop","focusConfirm","focusCancel","heightAuto","keydownListenerCapture"],Nt=function(t){return Object.prototype.hasOwnProperty.call(jt,t)},Dt=function(t){return It[t]},Bt=function(t){Nt(t)||d('Unknown parameter "'.concat(t,'"'))},Yt=function(t){-1!==Ht.indexOf(t)&&d('The parameter "'.concat(t,'" is incompatible with toasts'))},Xt=function(t){Dt(t)&&v(t,Dt(t))},Wt=Object.freeze({isValidParameter:Nt,isUpdatableParameter:function(t){return-1!==Mt.indexOf(t)},isDeprecatedParameter:Dt,argsToParams:function(e){var n={};switch(t(e[0])){case"object":o(n,e[0]);break;default:["title","html","type"].forEach((function(r,o){switch(t(e[o])){case"string":n[r]=e[o];break;case"undefined":break;default:h("Unexpected type of ".concat(r,'! Expected "string", got ').concat(t(e[o])))}}))}return n},isVisible:function(){return H(X())},clickConfirm:At,clickCancel:function(){return J()&&J().click()},getContainer:D,getPopup:X,getTitle:V,getContent:z,getImage:U,getIcon:F,getIcons:W,getCloseButton:et,getActions:Z,getConfirmButton:G,getCancelButton:J,getHeader:Q,getFooter:tt,getFocusableElements:nt,getValidationMessage:K,isLoading:function(){return X().hasAttribute("data-loading")},fire:function(){for(var t=this,e=arguments.length,n=new Array(e),r=0;rwindow.innerHeight&&(k.previousBodyPadding=parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right")),document.body.style.paddingRight=k.previousBodyPadding+function(){if("ontouchstart"in window||navigator.msMaxTouchPoints)return 0;var t=document.createElement("div");t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t);var e=t.offsetWidth-t.clientWidth;return document.body.removeChild(t),e}()+"px")},zt=function(){var t,e=D();e.ontouchstart=function(n){var r;t=n.target===e||!((r=e).scrollHeight>r.clientHeight)&&"INPUT"!==n.target.tagName},e.ontouchmove=function(e){t&&(e.preventDefault(),e.stopPropagation())}},Ut=function(){return!!window.MSInputMethodContext&&!!document.documentMode},qt=function(){var t=D(),e=X();t.style.removeProperty("align-items"),e.offsetTop<0&&(t.style.alignItems="flex-start")},Kt={swalPromiseResolve:new WeakMap};function Gt(t,e,n,r){n?ee(t,r):(Rt().then((function(){return ee(t,r)})),Pt.keydownTarget.removeEventListener("keydown",Pt.keydownHandler,{capture:Pt.keydownListenerCapture}),Pt.keydownHandlerAdded=!1),e.parentNode&&e.parentNode.removeChild(e),rt()&&(null!==k.previousBodyPadding&&(document.body.style.paddingRight=k.previousBodyPadding+"px",k.previousBodyPadding=null),function(){if(S(document.body,x.iosfix)){var t=parseInt(document.body.style.top,10);$(document.body,x.iosfix),document.body.style.top="",document.body.scrollTop=-1*t}}(),"undefined"!=typeof window&&Ut()&&window.removeEventListener("resize",qt),p(document.body.children).forEach((function(t){t.hasAttribute("data-previous-aria-hidden")?(t.setAttribute("aria-hidden",t.getAttribute("data-previous-aria-hidden")),t.removeAttribute("data-previous-aria-hidden")):t.removeAttribute("aria-hidden")}))),$([document.documentElement,document.body],[x.shown,x["height-auto"],x["no-backdrop"],x["toast-shown"],x["toast-column"]])}function Jt(t){var e=X();if(e&&!S(e,x.hide)){var n=mt.innerParams.get(this);if(n){var r=Kt.swalPromiseResolve.get(this);$(e,x.show),L(e,x.hide),Zt(this,e,n),r(t||{})}}}var Zt=function(t,e,n){var r=D(),o=ft&&N(e),i=n.onClose,a=n.onAfterClose;null!==i&&"function"==typeof i&&i(e),o?Qt(t,e,r,a):Gt(t,r,ot(),a)},Qt=function(t,e,n,r){Pt.swalCloseEventFinishedCallback=Gt.bind(null,t,n,ot(),r),e.addEventListener(ft,(function(t){t.target===e&&(Pt.swalCloseEventFinishedCallback(),delete Pt.swalCloseEventFinishedCallback)}))},te=function(t){for(var e in t)t[e]=new WeakMap},ee=function(t,e){setTimeout((function(){null!==e&&"function"==typeof e&&e(),X()||function(t){delete t.params,delete Pt.keydownHandler,delete Pt.keydownTarget,te(mt),te(Kt)}(t)}))};function ne(t,e,n){var r=mt.domCache.get(t);e.forEach((function(t){r[t].disabled=n}))}function re(t,e){if(!t)return!1;if("radio"===t.type)for(var n=t.parentNode.parentNode.querySelectorAll("input"),r=0;r")),lt(t)}function se(t,e){t.removeEventListener(ft,se),e.style.overflowY="auto"}var le,ce=function(t,e){ft&&N(e)?(t.style.overflowY="hidden",e.addEventListener(ft,se.bind(null,e,t))):t.style.overflowY="auto"},ue=function(t,e){!function(){if((/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!S(document.body,x.iosfix)){var t=document.body.scrollTop;document.body.style.top=-1*t+"px",L(document.body,x.iosfix),zt()}}(),"undefined"!=typeof window&&Ut()&&(qt(),window.addEventListener("resize",qt)),p(document.body.children).forEach((function(t){t===D()||function(t,e){if("function"==typeof t.contains)return t.contains(e)}(t,D())||(t.hasAttribute("aria-hidden")&&t.setAttribute("data-previous-aria-hidden",t.getAttribute("aria-hidden")),t.setAttribute("aria-hidden","true"))})),e&&Vt(),setTimeout((function(){t.scrollTop=0}))},fe=function(t,e,n){n.animation&&L(e,x.show),j(e),L([document.documentElement,document.body,t],x.shown),n.heightAuto&&n.backdrop&&!n.toast&&L([document.documentElement,document.body],x["height-auto"])},pe=function(t){return t.checked?1:0},de=function(t){return t.checked?t.value:null},he=function(t){return t.files.length?null!==t.getAttribute("multiple")?t.files:t.files[0]:null},me=function(e,n){var r=z(),o=function(t){return ge[n.input](r,ye(t),n)};y(n.inputOptions)?($t(),n.inputOptions.then((function(t){e.hideLoading(),o(t)}))):"object"===t(n.inputOptions)?o(n.inputOptions):h("Unexpected type of inputOptions! Expected object, Map or Promise, got ".concat(t(n.inputOptions)))},ve=function(t,e){var n=t.getInput();M(n),e.inputValue.then((function(r){n.value="number"===e.input?parseFloat(r)||0:r+"",j(n),n.focus(),t.hideLoading()})).catch((function(e){h("Error in inputValue promise: "+e),n.value="",j(n),n.focus(),t.hideLoading()}))},ge={select:function(t,e,n){var r=P(t,x.select);e.forEach((function(t){var e=t[0],o=t[1],i=document.createElement("option");i.value=e,i.innerHTML=o,n.inputValue.toString()===e.toString()&&(i.selected=!0),r.appendChild(i)})),r.focus()},radio:function(t,e,n){var r=P(t,x.radio);e.forEach((function(t){var e=t[0],o=t[1],i=document.createElement("input"),a=document.createElement("label");i.type="radio",i.name=x.radio,i.value=e,n.inputValue.toString()===e.toString()&&(i.checked=!0);var s=document.createElement("span");s.innerHTML=o,s.className=x.label,a.appendChild(i),a.appendChild(s),r.appendChild(a)}));var o=r.querySelectorAll("input");o.length&&o[0].focus()}},ye=function(t){var e=[];return"undefined"!=typeof Map&&t instanceof Map?t.forEach((function(t,n){e.push([n,t])})):Object.keys(t).forEach((function(n){e.push([n,t[n]])})),e},be=function(t,e){var n=function(t,e){var n=t.getInput();if(!n)return null;switch(e.input){case"checkbox":return pe(n);case"radio":return de(n);case"file":return he(n);default:return e.inputAutoTrim?n.value.trim():n.value}}(t,e);e.inputValidator?(t.disableInput(),Promise.resolve().then((function(){return e.inputValidator(n,e.validationMessage)})).then((function(r){t.enableButtons(),t.enableInput(),r?t.showValidationMessage(r):xe(t,e,n)}))):t.getInput().checkValidity()?xe(t,e,n):(t.enableButtons(),t.showValidationMessage(e.validationMessage))},we=function(t,e){t.closePopup({value:e})},xe=function(t,e,n){e.showLoaderOnConfirm&&$t(),e.preConfirm?(t.resetValidationMessage(),Promise.resolve().then((function(){return e.preConfirm(n,e.validationMessage)})).then((function(e){H(K())||!1===e?t.hideLoading():we(t,void 0===e?n:e)}))):we(t,n)},_e=function(t,e,n){for(var r=nt(),o=0;o:first-child,.swal2-container.swal2-bottom-left>:first-child,.swal2-container.swal2-bottom-right>:first-child,.swal2-container.swal2-bottom-start>:first-child,.swal2-container.swal2-bottom>:first-child{margin-top:auto}.swal2-container.swal2-grow-fullscreen>.swal2-modal{display:flex!important;flex:1;align-self:stretch;justify-content:center}.swal2-container.swal2-grow-row>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container.swal2-grow-column{flex:1;flex-direction:column}.swal2-container.swal2-grow-column.swal2-bottom,.swal2-container.swal2-grow-column.swal2-center,.swal2-container.swal2-grow-column.swal2-top{align-items:center}.swal2-container.swal2-grow-column.swal2-bottom-left,.swal2-container.swal2-grow-column.swal2-bottom-start,.swal2-container.swal2-grow-column.swal2-center-left,.swal2-container.swal2-grow-column.swal2-center-start,.swal2-container.swal2-grow-column.swal2-top-left,.swal2-container.swal2-grow-column.swal2-top-start{align-items:flex-start}.swal2-container.swal2-grow-column.swal2-bottom-end,.swal2-container.swal2-grow-column.swal2-bottom-right,.swal2-container.swal2-grow-column.swal2-center-end,.swal2-container.swal2-grow-column.swal2-center-right,.swal2-container.swal2-grow-column.swal2-top-end,.swal2-container.swal2-grow-column.swal2-top-right{align-items:flex-end}.swal2-container.swal2-grow-column>.swal2-modal{display:flex!important;flex:1;align-content:center;justify-content:center}.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right):not(.swal2-grow-fullscreen)>.swal2-modal{margin:auto}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-container .swal2-modal{margin:0!important}}.swal2-container.swal2-shown{background-color:rgba(0,0,0,.4)}.swal2-popup{display:none;position:relative;box-sizing:border-box;flex-direction:column;justify-content:center;width:32em;max-width:100%;padding:1.25em;border:none;border-radius:.3125em;background:#fff;font-family:inherit;font-size:1rem}.swal2-popup:focus{outline:0}.swal2-popup.swal2-loading{overflow-y:hidden}.swal2-header{display:flex;flex-direction:column;align-items:center}.swal2-title{position:relative;max-width:100%;margin:0 0 .4em;padding:0;color:#595959;font-size:1.875em;font-weight:600;text-align:center;text-transform:none;word-wrap:break-word}.swal2-actions{display:flex;z-index:1;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;margin:1.25em auto 0}.swal2-actions:not(.swal2-loading) .swal2-styled[disabled]{opacity:.4}.swal2-actions:not(.swal2-loading) .swal2-styled:hover{background-image:linear-gradient(rgba(0,0,0,.1),rgba(0,0,0,.1))}.swal2-actions:not(.swal2-loading) .swal2-styled:active{background-image:linear-gradient(rgba(0,0,0,.2),rgba(0,0,0,.2))}.swal2-actions.swal2-loading .swal2-styled.swal2-confirm{box-sizing:border-box;width:2.5em;height:2.5em;margin:.46875em;padding:0;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:.25em solid transparent;border-radius:100%;border-color:transparent;background-color:transparent!important;color:transparent;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-actions.swal2-loading .swal2-styled.swal2-cancel{margin-right:30px;margin-left:30px}.swal2-actions.swal2-loading :not(.swal2-styled).swal2-confirm::after{content:"";display:inline-block;width:15px;height:15px;margin-left:5px;-webkit-animation:swal2-rotate-loading 1.5s linear 0s infinite normal;animation:swal2-rotate-loading 1.5s linear 0s infinite normal;border:3px solid #999;border-radius:50%;border-right-color:transparent;box-shadow:1px 1px 1px #fff}.swal2-styled{margin:.3125em;padding:.625em 2em;box-shadow:none;font-weight:500}.swal2-styled:not([disabled]){cursor:pointer}.swal2-styled.swal2-confirm{border:0;border-radius:.25em;background:initial;background-color:#3085d6;color:#fff;font-size:1.0625em}.swal2-styled.swal2-cancel{border:0;border-radius:.25em;background:initial;background-color:#aaa;color:#fff;font-size:1.0625em}.swal2-styled:focus{outline:0;box-shadow:0 0 0 2px #fff,0 0 0 4px rgba(50,100,150,.4)}.swal2-styled::-moz-focus-inner{border:0}.swal2-footer{justify-content:center;margin:1.25em 0 0;padding:1em 0 0;border-top:1px solid #eee;color:#545454;font-size:1em}.swal2-image{max-width:100%;margin:1.25em auto}.swal2-close{position:absolute;z-index:2;top:0;right:0;justify-content:center;width:1.2em;height:1.2em;padding:0;overflow:hidden;transition:color .1s ease-out;border:none;border-radius:0;outline:initial;background:0 0;color:#ccc;font-family:serif;font-size:2.5em;line-height:1.2;cursor:pointer}.swal2-close:hover{transform:none;background:0 0;color:#f27474}.swal2-content{z-index:1;justify-content:center;margin:0;padding:0;color:#545454;font-size:1.125em;font-weight:400;line-height:normal;text-align:center;word-wrap:break-word}.swal2-checkbox,.swal2-file,.swal2-input,.swal2-radio,.swal2-select,.swal2-textarea{margin:1em auto}.swal2-file,.swal2-input,.swal2-textarea{box-sizing:border-box;width:100%;transition:border-color .3s,box-shadow .3s;border:1px solid #d9d9d9;border-radius:.1875em;background:inherit;box-shadow:inset 0 1px 1px rgba(0,0,0,.06);color:inherit;font-size:1.125em}.swal2-file.swal2-inputerror,.swal2-input.swal2-inputerror,.swal2-textarea.swal2-inputerror{border-color:#f27474!important;box-shadow:0 0 2px #f27474!important}.swal2-file:focus,.swal2-input:focus,.swal2-textarea:focus{border:1px solid #b4dbed;outline:0;box-shadow:0 0 3px #c4e6f5}.swal2-file::-webkit-input-placeholder,.swal2-input::-webkit-input-placeholder,.swal2-textarea::-webkit-input-placeholder{color:#ccc}.swal2-file::-moz-placeholder,.swal2-input::-moz-placeholder,.swal2-textarea::-moz-placeholder{color:#ccc}.swal2-file:-ms-input-placeholder,.swal2-input:-ms-input-placeholder,.swal2-textarea:-ms-input-placeholder{color:#ccc}.swal2-file::-ms-input-placeholder,.swal2-input::-ms-input-placeholder,.swal2-textarea::-ms-input-placeholder{color:#ccc}.swal2-file::placeholder,.swal2-input::placeholder,.swal2-textarea::placeholder{color:#ccc}.swal2-range{margin:1em auto;background:inherit}.swal2-range input{width:80%}.swal2-range output{width:20%;color:inherit;font-weight:600;text-align:center}.swal2-range input,.swal2-range output{height:2.625em;padding:0;font-size:1.125em;line-height:2.625em}.swal2-input{height:2.625em;padding:0 .75em}.swal2-input[type=number]{max-width:10em}.swal2-file{background:inherit;font-size:1.125em}.swal2-textarea{height:6.75em;padding:.75em}.swal2-select{min-width:50%;max-width:100%;padding:.375em .625em;background:inherit;color:inherit;font-size:1.125em}.swal2-checkbox,.swal2-radio{align-items:center;justify-content:center;background:inherit;color:inherit}.swal2-checkbox label,.swal2-radio label{margin:0 .6em;font-size:1.125em}.swal2-checkbox input,.swal2-radio input{margin:0 .4em}.swal2-validation-message{display:none;align-items:center;justify-content:center;padding:.625em;overflow:hidden;background:#f0f0f0;color:#666;font-size:1em;font-weight:300}.swal2-validation-message::before{content:"!";display:inline-block;width:1.5em;min-width:1.5em;height:1.5em;margin:0 .625em;border-radius:50%;background-color:#f27474;color:#fff;font-weight:600;line-height:1.5em;text-align:center}.swal2-icon{position:relative;box-sizing:content-box;justify-content:center;width:5em;height:5em;margin:1.25em auto 1.875em;border:.25em solid transparent;border-radius:50%;font-family:inherit;line-height:5em;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.swal2-icon::before{display:flex;align-items:center;height:92%;font-size:3.75em}.swal2-icon.swal2-error{border-color:#f27474}.swal2-icon.swal2-error .swal2-x-mark{position:relative;flex-grow:1}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{display:block;position:absolute;top:2.3125em;width:2.9375em;height:.3125em;border-radius:.125em;background-color:#f27474}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=left]{left:1.0625em;transform:rotate(45deg)}.swal2-icon.swal2-error [class^=swal2-x-mark-line][class$=right]{right:1em;transform:rotate(-45deg)}.swal2-icon.swal2-warning{border-color:#facea8;color:#f8bb86}.swal2-icon.swal2-warning::before{content:"!"}.swal2-icon.swal2-info{border-color:#9de0f6;color:#3fc3ee}.swal2-icon.swal2-info::before{content:"i"}.swal2-icon.swal2-question{border-color:#c9dae1;color:#87adbd}.swal2-icon.swal2-question::before{content:"?"}.swal2-icon.swal2-question.swal2-arabic-question-mark::before{content:"؟"}.swal2-icon.swal2-success{border-color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-circular-line]{position:absolute;width:3.75em;height:7.5em;transform:rotate(45deg);border-radius:50%}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=left]{top:-.4375em;left:-2.0635em;transform:rotate(-45deg);transform-origin:3.75em 3.75em;border-radius:7.5em 0 0 7.5em}.swal2-icon.swal2-success [class^=swal2-success-circular-line][class$=right]{top:-.6875em;left:1.875em;transform:rotate(-45deg);transform-origin:0 3.75em;border-radius:0 7.5em 7.5em 0}.swal2-icon.swal2-success .swal2-success-ring{position:absolute;z-index:2;top:-.25em;left:-.25em;box-sizing:content-box;width:100%;height:100%;border:.25em solid rgba(165,220,134,.3);border-radius:50%}.swal2-icon.swal2-success .swal2-success-fix{position:absolute;z-index:1;top:.5em;left:1.625em;width:.4375em;height:5.625em;transform:rotate(-45deg)}.swal2-icon.swal2-success [class^=swal2-success-line]{display:block;position:absolute;z-index:2;height:.3125em;border-radius:.125em;background-color:#a5dc86}.swal2-icon.swal2-success [class^=swal2-success-line][class$=tip]{top:2.875em;left:.875em;width:1.5625em;transform:rotate(45deg)}.swal2-icon.swal2-success [class^=swal2-success-line][class$=long]{top:2.375em;right:.5em;width:2.9375em;transform:rotate(-45deg)}.swal2-progress-steps{align-items:center;margin:0 0 1.25em;padding:0;background:inherit;font-weight:600}.swal2-progress-steps li{display:inline-block;position:relative}.swal2-progress-steps .swal2-progress-step{z-index:20;width:2em;height:2em;border-radius:2em;background:#3085d6;color:#fff;line-height:2em;text-align:center}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step{background:#3085d6}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step{background:#add8e6;color:#fff}.swal2-progress-steps .swal2-progress-step.swal2-active-progress-step~.swal2-progress-step-line{background:#add8e6}.swal2-progress-steps .swal2-progress-step-line{z-index:10;width:2.5em;height:.4em;margin:0 -1px;background:#3085d6}[class^=swal2]{-webkit-tap-highlight-color:transparent}.swal2-show{-webkit-animation:swal2-show .3s;animation:swal2-show .3s}.swal2-show.swal2-noanimation{-webkit-animation:none;animation:none}.swal2-hide{-webkit-animation:swal2-hide .15s forwards;animation:swal2-hide .15s forwards}.swal2-hide.swal2-noanimation{-webkit-animation:none;animation:none}.swal2-rtl .swal2-close{right:auto;left:0}.swal2-animate-success-icon .swal2-success-line-tip{-webkit-animation:swal2-animate-success-line-tip .75s;animation:swal2-animate-success-line-tip .75s}.swal2-animate-success-icon .swal2-success-line-long{-webkit-animation:swal2-animate-success-line-long .75s;animation:swal2-animate-success-line-long .75s}.swal2-animate-success-icon .swal2-success-circular-line-right{-webkit-animation:swal2-rotate-success-circular-line 4.25s ease-in;animation:swal2-rotate-success-circular-line 4.25s ease-in}.swal2-animate-error-icon{-webkit-animation:swal2-animate-error-icon .5s;animation:swal2-animate-error-icon .5s}.swal2-animate-error-icon .swal2-x-mark{-webkit-animation:swal2-animate-error-x-mark .5s;animation:swal2-animate-error-x-mark .5s}@supports (-ms-accelerator:true){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){.swal2-range input{width:100%!important}.swal2-range output{display:none}}@-moz-document url-prefix(){.swal2-close:focus{outline:2px solid rgba(50,100,150,.4)}}@-webkit-keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@keyframes swal2-toast-show{0%{transform:translateY(-.625em) rotateZ(2deg)}33%{transform:translateY(0) rotateZ(-2deg)}66%{transform:translateY(.3125em) rotateZ(2deg)}100%{transform:translateY(0) rotateZ(0)}}@-webkit-keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@keyframes swal2-toast-hide{100%{transform:rotateZ(1deg);opacity:0}}@-webkit-keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@keyframes swal2-toast-animate-success-line-tip{0%{top:.5625em;left:.0625em;width:0}54%{top:.125em;left:.125em;width:0}70%{top:.625em;left:-.25em;width:1.625em}84%{top:1.0625em;left:.75em;width:.5em}100%{top:1.125em;left:.1875em;width:.75em}}@-webkit-keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@keyframes swal2-toast-animate-success-line-long{0%{top:1.625em;right:1.375em;width:0}65%{top:1.25em;right:.9375em;width:0}84%{top:.9375em;right:0;width:1.125em}100%{top:.9375em;right:.1875em;width:1.375em}}@-webkit-keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@keyframes swal2-show{0%{transform:scale(.7)}45%{transform:scale(1.05)}80%{transform:scale(.95)}100%{transform:scale(1)}}@-webkit-keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@keyframes swal2-hide{0%{transform:scale(1);opacity:1}100%{transform:scale(.5);opacity:0}}@-webkit-keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.875em;width:1.5625em}}@keyframes swal2-animate-success-line-tip{0%{top:1.1875em;left:.0625em;width:0}54%{top:1.0625em;left:.125em;width:0}70%{top:2.1875em;left:-.375em;width:3.125em}84%{top:3em;left:1.3125em;width:1.0625em}100%{top:2.8125em;left:.875em;width:1.5625em}}@-webkit-keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@keyframes swal2-animate-success-line-long{0%{top:3.375em;right:2.875em;width:0}65%{top:3.375em;right:2.875em;width:0}84%{top:2.1875em;right:0;width:3.4375em}100%{top:2.375em;right:.5em;width:2.9375em}}@-webkit-keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@keyframes swal2-rotate-success-circular-line{0%{transform:rotate(-45deg)}5%{transform:rotate(-45deg)}12%{transform:rotate(-405deg)}100%{transform:rotate(-405deg)}}@-webkit-keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@keyframes swal2-animate-error-x-mark{0%{margin-top:1.625em;transform:scale(.4);opacity:0}50%{margin-top:1.625em;transform:scale(.4);opacity:0}80%{margin-top:-.375em;transform:scale(1.15)}100%{margin-top:0;transform:scale(1);opacity:1}}@-webkit-keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@keyframes swal2-animate-error-icon{0%{transform:rotateX(100deg);opacity:0}100%{transform:rotateX(0);opacity:1}}@-webkit-keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@keyframes swal2-rotate-loading{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow:hidden}body.swal2-height-auto{height:auto!important}body.swal2-no-backdrop .swal2-shown{top:auto;right:auto;bottom:auto;left:auto;max-width:calc(100% - .625em * 2);background-color:transparent}body.swal2-no-backdrop .swal2-shown>.swal2-modal{box-shadow:0 0 10px rgba(0,0,0,.4)}body.swal2-no-backdrop .swal2-shown.swal2-top{top:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-top-left,body.swal2-no-backdrop .swal2-shown.swal2-top-start{top:0;left:0}body.swal2-no-backdrop .swal2-shown.swal2-top-end,body.swal2-no-backdrop .swal2-shown.swal2-top-right{top:0;right:0}body.swal2-no-backdrop .swal2-shown.swal2-center{top:50%;left:50%;transform:translate(-50%,-50%)}body.swal2-no-backdrop .swal2-shown.swal2-center-left,body.swal2-no-backdrop .swal2-shown.swal2-center-start{top:50%;left:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-center-end,body.swal2-no-backdrop .swal2-shown.swal2-center-right{top:50%;right:0;transform:translateY(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-bottom{bottom:0;left:50%;transform:translateX(-50%)}body.swal2-no-backdrop .swal2-shown.swal2-bottom-left,body.swal2-no-backdrop .swal2-shown.swal2-bottom-start{bottom:0;left:0}body.swal2-no-backdrop .swal2-shown.swal2-bottom-end,body.swal2-no-backdrop .swal2-shown.swal2-bottom-right{right:0;bottom:0}@media print{body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown){overflow-y:scroll!important}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown)>[aria-hidden=true]{display:none}body.swal2-shown:not(.swal2-no-backdrop):not(.swal2-toast-shown) .swal2-container{position:static!important}}body.swal2-toast-shown .swal2-container{background-color:transparent}body.swal2-toast-shown .swal2-container.swal2-shown{background-color:transparent}body.swal2-toast-shown .swal2-container.swal2-top{top:0;right:auto;bottom:auto;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-top-end,body.swal2-toast-shown .swal2-container.swal2-top-right{top:0;right:0;bottom:auto;left:auto}body.swal2-toast-shown .swal2-container.swal2-top-left,body.swal2-toast-shown .swal2-container.swal2-top-start{top:0;right:auto;bottom:auto;left:0}body.swal2-toast-shown .swal2-container.swal2-center-left,body.swal2-toast-shown .swal2-container.swal2-center-start{top:50%;right:auto;bottom:auto;left:0;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-center{top:50%;right:auto;bottom:auto;left:50%;transform:translate(-50%,-50%)}body.swal2-toast-shown .swal2-container.swal2-center-end,body.swal2-toast-shown .swal2-container.swal2-center-right{top:50%;right:0;bottom:auto;left:auto;transform:translateY(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-left,body.swal2-toast-shown .swal2-container.swal2-bottom-start{top:auto;right:auto;bottom:0;left:0}body.swal2-toast-shown .swal2-container.swal2-bottom{top:auto;right:auto;bottom:0;left:50%;transform:translateX(-50%)}body.swal2-toast-shown .swal2-container.swal2-bottom-end,body.swal2-toast-shown .swal2-container.swal2-bottom-right{top:auto;right:0;bottom:0;left:auto}body.swal2-toast-column .swal2-toast{flex-direction:column;align-items:stretch}body.swal2-toast-column .swal2-toast .swal2-actions{flex:1;align-self:stretch;height:2.2em;margin-top:.3125em}body.swal2-toast-column .swal2-toast .swal2-loading{justify-content:center}body.swal2-toast-column .swal2-toast .swal2-input{height:2em;margin:.3125em auto;font-size:1em}body.swal2-toast-column .swal2-toast .swal2-validation-message{font-size:1em}')},function(t,e,n){t.exports=function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/",e(e.s=60)}([function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e,n){var r=n(49)("wks"),o=n(30),i=n(0).Symbol,a="function"==typeof i;(t.exports=function(t){return r[t]||(r[t]=a&&i[t]||(a?i:o)("Symbol."+t))}).store=r},function(t,e,n){var r=n(5);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t}},function(t,e,n){var r=n(0),o=n(10),i=n(8),a=n(6),s=n(11),l=function(t,e,n){var c,u,f,p,d=t&l.F,h=t&l.G,m=t&l.S,v=t&l.P,g=t&l.B,y=h?r:m?r[e]||(r[e]={}):(r[e]||{}).prototype,b=h?o:o[e]||(o[e]={}),w=b.prototype||(b.prototype={});for(c in h&&(n=e),n)f=((u=!d&&y&&void 0!==y[c])?y:n)[c],p=g&&u?s(f,r):v&&"function"==typeof f?s(Function.call,f):f,y&&a(y,c,f,t&l.U),b[c]!=f&&i(b,c,p),v&&w[c]!=f&&(w[c]=f)};r.core=o,l.F=1,l.G=2,l.S=4,l.P=8,l.B=16,l.W=32,l.U=64,l.R=128,t.exports=l},function(t,e,n){t.exports=!n(7)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var r=n(0),o=n(8),i=n(12),a=n(30)("src"),s=Function.toString,l=(""+s).split("toString");n(10).inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,s){var c="function"==typeof n;c&&(i(n,"name")||o(n,"name",e)),t[e]!==n&&(c&&(i(n,a)||o(n,a,t[e]?""+t[e]:l.join(String(e)))),t===r?t[e]=n:s?t[e]?t[e]=n:o(t,e,n):(delete t[e],o(t,e,n)))})(Function.prototype,"toString",(function(){return"function"==typeof this&&this[a]||s.call(this)}))},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e,n){var r=n(13),o=n(25);t.exports=n(4)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e){var n=t.exports={version:"2.5.7"};"number"==typeof __e&&(__e=n)},function(t,e,n){var r=n(14);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}}},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){var r=n(2),o=n(41),i=n(29),a=Object.defineProperty;e.f=n(4)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return a(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e){t.exports={}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){"use strict";var r=n(7);t.exports=function(t,e){return!!t&&r((function(){e?t.call(null,(function(){}),1):t.call(null)}))}},function(t,e,n){var r=n(23),o=n(16);t.exports=function(t){return r(o(t))}},function(t,e,n){var r=n(53),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,e,n){var r=n(11),o=n(23),i=n(28),a=n(19),s=n(64);t.exports=function(t,e){var n=1==t,l=2==t,c=3==t,u=4==t,f=6==t,p=5==t||f,d=e||s;return function(e,s,h){for(var m,v,g=i(e),y=o(g),b=r(s,h,3),w=a(y.length),x=0,_=n?d(e,w):l?d(e,0):void 0;w>x;x++)if((p||x in y)&&(v=b(m=y[x],x,g),t))if(n)_[x]=v;else if(v)switch(t){case 3:return!0;case 5:return m;case 6:return x;case 2:_.push(m)}else if(u)return!1;return f?-1:c||u?u:_}}},function(t,e,n){var r=n(5),o=n(0).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}}},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e,n){var r=n(9);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==r(t)?t.split(""):Object(t)}},function(t,e){t.exports=!1},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var r=n(13).f,o=n(12),i=n(1)("toStringTag");t.exports=function(t,e,n){t&&!o(t=n?t:t.prototype,i)&&r(t,i,{configurable:!0,value:e})}},function(t,e,n){var r=n(49)("keys"),o=n(30);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,e,n){var r=n(16);t.exports=function(t){return Object(r(t))}},function(t,e,n){var r=n(5);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))}},function(t,e,n){"use strict";var r=n(0),o=n(12),i=n(9),a=n(67),s=n(29),l=n(7),c=n(77).f,u=n(45).f,f=n(13).f,p=n(51).trim,d=r.Number,h=d,m=d.prototype,v="Number"==i(n(44)(m)),g="trim"in String.prototype,y=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){var n,r,o,i=(e=g?e.trim():p(e,3)).charCodeAt(0);if(43===i||45===i){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===i){switch(e.charCodeAt(1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+e}for(var a,l=e.slice(2),c=0,u=l.length;co)return NaN;return parseInt(l,r)}}return+e};if(!d(" 0o1")||!d("0b1")||d("+0x1")){d=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof d&&(v?l((function(){m.valueOf.call(n)})):"Number"!=i(n))?a(new h(y(e)),n,d):y(e)};for(var b,w=n(4)?c(h):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;w.length>x;x++)o(h,b=w[x])&&!o(d,b)&&f(d,b,u(h,b));d.prototype=m,m.constructor=d,n(6)(r,"Number",d)}},function(t,e,n){"use strict";function r(t){return!(0===t||(!Array.isArray(t)||0!==t.length)&&t)}function o(t,e,n,r){return t.filter((function(t){return function(t,e){return void 0===t&&(t="undefined"),null===t&&(t="null"),!1===t&&(t="false"),-1!==t.toString().toLowerCase().indexOf(e.trim())}(r(t,n),e)}))}function i(t){return t.filter((function(t){return!t.$isLabel}))}function a(t,e){return function(n){return n.reduce((function(n,r){return r[t]&&r[t].length?(n.push({$groupLabel:r[e],$isLabel:!0}),n.concat(r[t])):n}),[])}}function s(t,e,r,i,a){return function(s){return s.map((function(s){var l;if(!s[r])return console.warn("Options passed to vue-multiselect do not contain groups, despite the config."),[];var c=o(s[r],t,e,a);return c.length?(l={},n.i(p.a)(l,i,s[i]),n.i(p.a)(l,r,c),l):[]}))}}var l=n(59),c=n(54),u=(n.n(c),n(95)),f=(n.n(u),n(31)),p=(n.n(f),n(58)),d=n(91),h=(n.n(d),n(98)),m=(n.n(h),n(92)),v=(n.n(m),n(88)),g=(n.n(v),n(97)),y=(n.n(g),n(89)),b=(n.n(y),n(96)),w=(n.n(b),n(93)),x=(n.n(w),n(90)),_=(n.n(x),function(){for(var t=arguments.length,e=new Array(t),n=0;n-1},isSelected:function(t){var e=this.trackBy?t[this.trackBy]:t;return this.valueKeys.indexOf(e)>-1},isOptionDisabled:function(t){return!!t.$isDisabled},getOptionLabel:function(t){if(r(t))return"";if(t.isTag)return t.label;if(t.$isLabel)return t.$groupLabel;var e=this.customLabel(t,this.label);return r(e)?"":e},select:function(t,e){if(t.$isLabel&&this.groupSelect)this.selectGroup(t);else if(!(-1!==this.blockKeys.indexOf(e)||this.disabled||t.$isDisabled||t.$isLabel)&&(!this.max||!this.multiple||this.internalValue.length!==this.max)&&("Tab"!==e||this.pointerDirty)){if(t.isTag)this.$emit("tag",t.label,this.id),this.search="",this.closeOnSelect&&!this.multiple&&this.deactivate();else{if(this.isSelected(t))return void("Tab"!==e&&this.removeElement(t));this.$emit("select",t,this.id),this.multiple?this.$emit("input",this.internalValue.concat([t]),this.id):this.$emit("input",t,this.id),this.clearOnSelect&&(this.search="")}this.closeOnSelect&&this.deactivate()}},selectGroup:function(t){var e=this,n=this.options.find((function(n){return n[e.groupLabel]===t.$groupLabel}));if(n)if(this.wholeGroupSelected(n)){this.$emit("remove",n[this.groupValues],this.id);var r=this.internalValue.filter((function(t){return-1===n[e.groupValues].indexOf(t)}));this.$emit("input",r,this.id)}else{var o=n[this.groupValues].filter((function(t){return!(e.isOptionDisabled(t)||e.isSelected(t))}));this.$emit("select",o,this.id),this.$emit("input",this.internalValue.concat(o),this.id)}},wholeGroupSelected:function(t){var e=this;return t[this.groupValues].every((function(t){return e.isSelected(t)||e.isOptionDisabled(t)}))},wholeGroupDisabled:function(t){return t[this.groupValues].every(this.isOptionDisabled)},removeElement:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if(!this.disabled&&!t.$isDisabled){if(!this.allowEmpty&&this.internalValue.length<=1)return void this.deactivate();var r="object"===n.i(l.a)(t)?this.valueKeys.indexOf(t[this.trackBy]):this.valueKeys.indexOf(t);if(this.$emit("remove",t,this.id),this.multiple){var o=this.internalValue.slice(0,r).concat(this.internalValue.slice(r+1));this.$emit("input",o,this.id)}else this.$emit("input",null,this.id);this.closeOnSelect&&e&&this.deactivate()}},removeLastElement:function(){-1===this.blockKeys.indexOf("Delete")&&0===this.search.length&&Array.isArray(this.internalValue)&&this.internalValue.length&&this.removeElement(this.internalValue[this.internalValue.length-1],!1)},activate:function(){var t=this;this.isOpen||this.disabled||(this.adjustPosition(),this.groupValues&&0===this.pointer&&this.filteredOptions.length&&(this.pointer=1),this.isOpen=!0,this.searchable?(this.preserveSearch||(this.search=""),this.$nextTick((function(){return t.$refs.search.focus()}))):this.$el.focus(),this.$emit("open",this.id))},deactivate:function(){this.isOpen&&(this.isOpen=!1,this.searchable?this.$refs.search.blur():this.$el.blur(),this.preserveSearch||(this.search=""),this.$emit("close",this.getValue(),this.id))},toggle:function(){this.isOpen?this.deactivate():this.activate()},adjustPosition:function(){if("undefined"!=typeof window){var t=this.$el.getBoundingClientRect().top,e=window.innerHeight-this.$el.getBoundingClientRect().bottom;e>this.maxHeight||e>t||"below"===this.openDirection||"bottom"===this.openDirection?(this.preferredOpenDirection="below",this.optimizedHeight=Math.min(e-40,this.maxHeight)):(this.preferredOpenDirection="above",this.optimizedHeight=Math.min(t-40,this.maxHeight))}}}}},function(t,e,n){"use strict";var r=n(54),o=(n.n(r),n(31));n.n(o),e.a={data:function(){return{pointer:0,pointerDirty:!1}},props:{showPointer:{type:Boolean,default:!0},optionHeight:{type:Number,default:40}},computed:{pointerPosition:function(){return this.pointer*this.optionHeight},visibleElements:function(){return this.optimizedHeight/this.optionHeight}},watch:{filteredOptions:function(){this.pointerAdjust()},isOpen:function(){this.pointerDirty=!1}},methods:{optionHighlight:function(t,e){return{"multiselect__option--highlight":t===this.pointer&&this.showPointer,"multiselect__option--selected":this.isSelected(e)}},groupHighlight:function(t,e){var n=this;if(!this.groupSelect)return["multiselect__option--group","multiselect__option--disabled"];var r=this.options.find((function(t){return t[n.groupLabel]===e.$groupLabel}));return r&&!this.wholeGroupDisabled(r)?["multiselect__option--group",{"multiselect__option--highlight":t===this.pointer&&this.showPointer},{"multiselect__option--group-selected":this.wholeGroupSelected(r)}]:"multiselect__option--disabled"},addPointerElement:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Enter",e=t.key;this.filteredOptions.length>0&&this.select(this.filteredOptions[this.pointer],e),this.pointerReset()},pointerForward:function(){this.pointer0?(this.pointer--,this.$refs.list.scrollTop>=this.pointerPosition&&(this.$refs.list.scrollTop=this.pointerPosition),this.filteredOptions[this.pointer]&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerBackward()):this.filteredOptions[this.pointer]&&this.filteredOptions[0].$isLabel&&!this.groupSelect&&this.pointerForward(),this.pointerDirty=!0},pointerReset:function(){this.closeOnSelect&&(this.pointer=0,this.$refs.list&&(this.$refs.list.scrollTop=0))},pointerAdjust:function(){this.pointer>=this.filteredOptions.length-1&&(this.pointer=this.filteredOptions.length?this.filteredOptions.length-1:0),this.filteredOptions.length>0&&this.filteredOptions[this.pointer].$isLabel&&!this.groupSelect&&this.pointerForward()},pointerSet:function(t){this.pointer=t,this.pointerDirty=!0}}}},function(t,e,n){"use strict";var r=n(36),o=n(74),i=n(15),a=n(18);t.exports=n(72)(Array,"Array",(function(t,e){this._t=a(t),this._i=0,this._k=e}),(function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,o(1)):o(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])}),"values"),i.Arguments=i.Array,r("keys"),r("values"),r("entries")},function(t,e,n){"use strict";var r=n(31),o=(n.n(r),n(32)),i=n(33);e.a={name:"vue-multiselect",mixins:[o.a,i.a],props:{name:{type:String,default:""},selectLabel:{type:String,default:"Press enter to select"},selectGroupLabel:{type:String,default:"Press enter to select group"},selectedLabel:{type:String,default:"Selected"},deselectLabel:{type:String,default:"Press enter to remove"},deselectGroupLabel:{type:String,default:"Press enter to deselect group"},showLabels:{type:Boolean,default:!0},limit:{type:Number,default:99999},maxHeight:{type:Number,default:300},limitText:{type:Function,default:function(t){return"and ".concat(t," more")}},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},openDirection:{type:String,default:""},showNoOptions:{type:Boolean,default:!0},showNoResults:{type:Boolean,default:!0},tabindex:{type:Number,default:0}},computed:{isSingleLabelVisible:function(){return(this.singleValue||0===this.singleValue)&&(!this.isOpen||!this.searchable)&&!this.visibleValues.length},isPlaceholderVisible:function(){return!(this.internalValue.length||this.searchable&&this.isOpen)},visibleValues:function(){return this.multiple?this.internalValue.slice(0,this.limit):[]},singleValue:function(){return this.internalValue[0]},deselectLabelText:function(){return this.showLabels?this.deselectLabel:""},deselectGroupLabelText:function(){return this.showLabels?this.deselectGroupLabel:""},selectLabelText:function(){return this.showLabels?this.selectLabel:""},selectGroupLabelText:function(){return this.showLabels?this.selectGroupLabel:""},selectedLabelText:function(){return this.showLabels?this.selectedLabel:""},inputStyle:function(){if(this.searchable||this.multiple&&this.value&&this.value.length)return this.isOpen?{width:"100%"}:{width:"0",position:"absolute",padding:"0"}},contentStyle:function(){return this.options.length?{display:"inline-block"}:{display:"block"}},isAbove:function(){return"above"===this.openDirection||"top"===this.openDirection||"below"!==this.openDirection&&"bottom"!==this.openDirection&&"above"===this.preferredOpenDirection},showSearchInput:function(){return this.searchable&&(!this.hasSingleSelectedSlot||!this.visibleSingleValue&&0!==this.visibleSingleValue||this.isOpen)}}}},function(t,e,n){var r=n(1)("unscopables"),o=Array.prototype;null==o[r]&&n(8)(o,r,{}),t.exports=function(t){o[r][t]=!0}},function(t,e,n){var r=n(18),o=n(19),i=n(85);t.exports=function(t){return function(e,n,a){var s,l=r(e),c=o(l.length),u=i(a,c);if(t&&n!=n){for(;c>u;)if((s=l[u++])!=s)return!0}else for(;c>u;u++)if((t||u in l)&&l[u]===n)return t||u||0;return!t&&-1}}},function(t,e,n){var r=n(9),o=n(1)("toStringTag"),i="Arguments"==r(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:i?r(e):"Object"==(a=r(e))&&"function"==typeof e.callee?"Arguments":a}},function(t,e,n){"use strict";var r=n(2);t.exports=function(){var t=r(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){var r=n(0).document;t.exports=r&&r.documentElement},function(t,e,n){t.exports=!n(4)&&!n(7)((function(){return 7!=Object.defineProperty(n(21)("div"),"a",{get:function(){return 7}}).a}))},function(t,e,n){var r=n(9);t.exports=Array.isArray||function(t){return"Array"==r(t)}},function(t,e,n){"use strict";function r(t){var e,n;this.promise=new t((function(t,r){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=r})),this.resolve=o(e),this.reject=o(n)}var o=n(14);t.exports.f=function(t){return new r(t)}},function(t,e,n){var r=n(2),o=n(76),i=n(22),a=n(27)("IE_PROTO"),s=function(){},l=function(){var t,e=n(21)("iframe"),r=i.length;for(e.style.display="none",n(40).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write(" + + + + + + + diff --git a/for_parse/h2hHandball.fsf b/for_parse/h2hHandball.fsf new file mode 100644 index 0000000..f919e12 --- /dev/null +++ b/for_parse/h2hHandball.fsf @@ -0,0 +1 @@ +KA÷Overall¬~KB÷Last matches: HSG WETZLAR¬~KC÷1602781200¬KP÷vsGq0iSC¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Bergischer¬KK÷*HSG Wetzlar¬KL÷20:22¬KN÷w¬KS÷away¬~KC÷1602347400¬KP÷ATOUnshd¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Kiel¬KL÷31:22¬KN÷w¬KS÷home¬~KC÷1602090000¬KP÷Qyone5pG¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Minden¬KK÷*HSG Wetzlar¬KL÷24:29¬KN÷w¬KS÷away¬~KC÷1601820000¬KP÷YNo5NQOp¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Flensburg-H.¬KL÷27:29¬KN÷l¬KS÷home¬~KC÷1583610300¬KP÷dMnnwA89¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:26¬KN÷l¬KS÷away¬~KC÷1583344800¬KP÷dSHU0hqJ¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Goppingen¬KL÷31:30¬KN÷w¬KS÷home¬~KC÷1582826400¬KP÷W6upkep7¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Lemgo¬KK÷HSG Wetzlar¬KL÷32:27¬KN÷l¬KS÷away¬~KC÷1582470000¬KP÷jR04cYfH¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Flensburg-H.¬KK÷HSG Wetzlar¬KL÷31:28¬KN÷l¬KS÷away¬~KC÷1581616800¬KP÷SEMcwboe¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Rhein-Neckar¬KL÷27:27¬KN÷d¬KS÷home¬~KC÷1581251400¬KP÷27iC0Uni¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Nordhorn-Lingen¬KK÷*HSG Wetzlar¬KL÷25:31¬KN÷w¬KS÷away¬~KC÷1580578200¬KP÷8WCZnBIi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Bergischer¬KL÷27:24¬KN÷w¬KS÷home¬~KC÷1577622600¬KP÷2VNsGUmU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*SC Magdeburg¬KK÷HSG Wetzlar¬KL÷34:27¬KN÷l¬KS÷away¬~KC÷1577379600¬KP÷YkWQJCl5¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Ludwigshafen¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1577026800¬KP÷Gljr9VgT¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Kiel¬KK÷*HSG Wetzlar¬KL÷20:27¬KN÷w¬KS÷away¬~KC÷1576778400¬KP÷p4lERmOj¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Fuchse Berlin¬KK÷HSG Wetzlar¬KL÷32:27¬KN÷l¬KS÷away¬~KC÷1576422000¬KP÷fTAeSQD8¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Leipzig¬KK÷*HSG Wetzlar¬KL÷26:29¬KN÷w¬KS÷away¬~KC÷1575747000¬KP÷YasEFmU2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Stuttgart¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1575212400¬KP÷IV5nzLAg¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Erlangen¬KK÷*HSG Wetzlar¬KL÷25:31¬KN÷w¬KS÷away¬~KC÷1574964000¬KP÷4KqlvR7d¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Goppingen¬KK÷HSG Wetzlar¬KL÷26:21¬KN÷l¬KS÷away¬~KC÷1574538300¬KP÷Eyn6nk0G¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Minden¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1573398000¬KP÷bmQWEAvo¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Hannover-Burgdorf¬KL÷25:25¬KN÷d¬KS÷home¬~KC÷1571331600¬KP÷MLs1ONBs¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷26:30¬KN÷l¬KS÷home¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬KN÷l¬KS÷home¬~KC÷1570370400¬KP÷hWzM27kL¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Rhein-Neckar¬KK÷HSG Wetzlar¬KL÷29:26¬KN÷l¬KS÷away¬~KC÷1570039200¬KP÷C4ZscbdG¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷25:26¬KN÷l¬KS÷home¬~KC÷1569517200¬KP÷Ohvo1fEG¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷SC Magdeburg¬KL÷29:28¬KN÷w¬KS÷home¬~KC÷1568912400¬KP÷zTVH16mU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HBW Balingen-Weilstetten¬KK÷*HSG Wetzlar¬KL÷33:34¬KN÷w¬KS÷away¬~KC÷1568556000¬KP÷vszc6UYb¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Nordhorn-Lingen¬KL÷34:27¬KN÷w¬KS÷home¬~KC÷1567951200¬KP÷vwSZd6h6¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Bergischer¬KK÷HSG Wetzlar¬KL÷33:30¬KN÷l¬KS÷away¬~KC÷1567530000¬KP÷I9bhpT80¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Flensburg-H.¬KL÷27:27¬KN÷d¬KS÷home¬~KC÷1567098000¬KP÷juSNUm9D¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷*HSG Wetzlar¬KL÷25:31¬KN÷w¬KS÷away¬~KC÷1566493200¬KP÷2J9yJjA1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Lemgo¬KL÷28:32¬KN÷l¬KS÷home¬~KC÷1566136800¬KP÷zNWp0n2Q¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷Grosswallstadt¬KK÷*HSG Wetzlar¬KL÷27:30¬KN÷w¬KS÷away¬~KC÷1566061200¬KP÷6oyScN48¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HBW Balingen-Weilstetten¬KK÷*HSG Wetzlar¬KL÷28:36¬KN÷w¬KS÷away¬~KC÷1565357400¬KP÷CbUyv8TA¬KF÷Club Friendly¬KG÷8¬KH÷World¬KI÷CF¬KJ÷*HSG Wetzlar¬KK÷St. Raphael¬KL÷29:26¬KN÷w¬KS÷home¬~KC÷1560085200¬KP÷n3we0WKq¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Fuchse Berlin¬KK÷*HSG Wetzlar¬KL÷25:27¬KN÷w¬KS÷away¬~KC÷1559154600¬KP÷bw579zbc¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Stuttgart¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1558026000¬KP÷CMtQdcEi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Goppingen¬KK÷*HSG Wetzlar¬KL÷22:24¬KN÷w¬KS÷away¬~KC÷1557671400¬KP÷QTGo4K4K¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*SC Magdeburg¬KK÷HSG Wetzlar¬KL÷30:25¬KN÷l¬KS÷away¬~KC÷1557421200¬KP÷IuXfCHds¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷23:27¬KN÷l¬KS÷home¬~KC÷1556816400¬KP÷2krvoubr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Gummersbach¬KL÷30:23¬KN÷w¬KS÷home¬~KC÷1556211600¬KP÷O4AHTwT7¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Bietigheim-Metterzimmern¬KK÷HSG Wetzlar¬KL÷26:26¬KN÷d¬KS÷away¬~KC÷1555855200¬KP÷U7GZIMEk¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Lemgo¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1554031800¬KP÷vuTWLkVT¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Hannover-Burgdorf¬KK÷*HSG Wetzlar¬KL÷23:25¬KN÷w¬KS÷away¬~KC÷1552834800¬KP÷rVSgKxfP¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Erlangen¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1552586400¬KP÷lWBxCE15¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Rhein-Neckar¬KK÷HSG Wetzlar¬KL÷31:21¬KN÷l¬KS÷away¬~KC÷1551555000¬KP÷tpXg1cmm¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷*HSG Wetzlar¬KL÷25:29¬KN÷w¬KS÷away¬~KC÷1550772000¬KP÷ritq6nZE¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Minden¬KL÷31:27¬KN÷w¬KS÷home¬~KC÷1550415600¬KP÷Y1dtnRsq¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Bergischer¬KK÷HSG Wetzlar¬KL÷26:22¬KN÷l¬KS÷away¬~KC÷1549562400¬KP÷QX4Uf19G¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Flensburg-H.¬KL÷23:30¬KN÷l¬KS÷home¬~KB÷Last matches: MT MELSUNGEN¬~KC÷1602959400¬KP÷2em6Hhcm¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷Minden¬KL÷24:24¬KN÷d¬KS÷home¬~KC÷1602424800¬KP÷p0tfO3E2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Erlangen¬KK÷MT Melsungen¬KL÷31:21¬KN÷l¬KS÷away¬~KC÷1602003600¬KP÷jBYRUW7p¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Lemgo¬KL÷27:21¬KN÷w¬KS÷home¬~KC÷1601820000¬KP÷0UwioUGi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HBW Balingen-Weilstetten¬KK÷*MT Melsungen¬KL÷23:25¬KN÷w¬KS÷away¬~KC÷1599400800¬KP÷pGz0VhfP¬KF÷EHF European League¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷MT Melsungen¬KK÷*Bjerringbro/Silkeborg¬KL÷24:26¬KN÷l¬KS÷home¬~KC÷1598805000¬KP÷d0sI69HO¬KF÷EHF European League¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Bjerringbro/Silkeborg¬KK÷MT Melsungen¬KL÷31:27¬KN÷l¬KS÷away¬~KC÷1583610300¬KP÷dMnnwA89¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:26¬KN÷w¬KS÷home¬~KC÷1583344800¬KP÷MkN56dFs¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Flensburg-H.¬KK÷MT Melsungen¬KL÷30:23¬KN÷l¬KS÷away¬~KC÷1583005500¬KP÷2u9Dsj4m¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*MT Melsungen¬KK÷Bjerringbro/Silkeborg¬KL÷35:33¬KN÷w¬KS÷home¬~KC÷1582826400¬KP÷lrjujyV0¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Bergischer¬KL÷28:25¬KN÷w¬KS÷home¬~KC÷1582470000¬KP÷tInXic0l¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷MT Melsungen¬KL÷25:25¬KN÷d¬KS÷away¬~KC÷1582134300¬KP÷reStmCtQ¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Bjerringbro/Silkeborg¬KK÷MT Melsungen¬KL÷35:31¬KN÷l¬KS÷away¬~KC÷1581783300¬KP÷GlzeP8lJ¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Benfica¬KK÷MT Melsungen¬KL÷29:26¬KN÷l¬KS÷away¬~KC÷1581616800¬KP÷006HcSW9¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*Stuttgart¬KL÷21:26¬KN÷l¬KS÷home¬~KC÷1581256800¬KP÷fZonRUJ6¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*MT Melsungen¬KK÷Gwardia Opole¬KL÷26:21¬KN÷w¬KS÷home¬~KC÷1581012000¬KP÷MgJkqTHG¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Rhein-Neckar¬KK÷*MT Melsungen¬KL÷30:33¬KN÷w¬KS÷away¬~KC÷1577622600¬KP÷zJhdZilh¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Erlangen¬KK÷*MT Melsungen¬KL÷25:30¬KN÷w¬KS÷away¬~KC÷1577365200¬KP÷WQZ9Nfkt¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HBW Balingen-Weilstetten¬KL÷36:23¬KN÷w¬KS÷home¬~KC÷1577017800¬KP÷0YPu7Gs0¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*SC Magdeburg¬KK÷MT Melsungen¬KL÷26:25¬KN÷l¬KS÷away¬~KC÷1576173600¬KP÷pbT4536e¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Stuttgart¬KK÷MT Melsungen¬KL÷31:28¬KN÷l¬KS÷away¬~KC÷1575568800¬KP÷h44Ripxd¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Ludwigshafen¬KL÷26:25¬KN÷w¬KS÷home¬~KC÷1575396000¬KP÷jJODLrAA¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷*MT Melsungen¬KK÷Fuchse Berlin¬KL÷33:30¬KN÷w¬KS÷home¬~KC÷1574964000¬KP÷6ZQpu7hj¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Fuchse Berlin¬KK÷MT Melsungen¬KL÷28:22¬KN÷l¬KS÷away¬~KC÷1574611200¬KP÷x2Bc9uJ5¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷Olympiacos SFP¬KK÷*MT Melsungen¬KL÷19:20¬KN÷w¬KS÷away¬~KC÷1574359200¬KP÷I9hclBV3¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Goppingen¬KL÷30:17¬KN÷w¬KS÷home¬~KC÷1573927200¬KP÷bBCgAL3a¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*MT Melsungen¬KK÷Olympiacos SFP¬KL÷32:28¬KN÷w¬KS÷home¬~KC÷1573754400¬KP÷pt6Rzh14¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Minden¬KK÷*MT Melsungen¬KL÷27:29¬KN÷w¬KS÷away¬~KC÷1573327800¬KP÷4n8bXIfC¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*Leipzig¬KL÷31:34¬KN÷l¬KS÷home¬~KC÷1572544800¬KP÷n9bRCDf4¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Kiel¬KK÷MT Melsungen¬KL÷38:26¬KN÷l¬KS÷away¬~KC÷1571331600¬KP÷441UTqlK¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Erlangen¬KL÷28:27¬KN÷w¬KS÷home¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬KN÷w¬KS÷away¬~KC÷1570370400¬KP÷8dticoDr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Hannover-Burgdorf¬KL÷31:25¬KN÷w¬KS÷home¬~KC÷1569949200¬KP÷MFtVa0Cc¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷Leipzig¬KK÷*MT Melsungen¬KL÷27:30¬KN÷w¬KS÷away¬~KC÷1569517200¬KP÷p2us2zaA¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Rhein-Neckar¬KL÷31:26¬KN÷w¬KS÷home¬~KC÷1569160800¬KP÷fDnU4xFi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Nordhorn-Lingen¬KK÷*MT Melsungen¬KL÷24:31¬KN÷w¬KS÷away¬~KC÷1568307600¬KP÷4Osp9Wlt¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷SC Magdeburg¬KL÷31:29¬KN÷w¬KS÷home¬~KC÷1567951200¬KP÷CUrCwIio¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HBW Balingen-Weilstetten¬KK÷MT Melsungen¬KL÷36:23¬KN÷l¬KS÷away¬~KC÷1567616400¬KP÷4Q04sRhJ¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Lemgo¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1567098000¬KP÷fDYEW9v1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Bergischer¬KK÷MT Melsungen¬KL÷24:24¬KN÷d¬KS÷away¬~KC÷1566741600¬KP÷IRiOtf28¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*Flensburg-H.¬KL÷19:24¬KN÷l¬KS÷home¬~KC÷1566133200¬KP÷lQdKEoHJ¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷*MT Melsungen¬KK÷Bietigheim-Metterzimmern¬KL÷31:25¬KN÷w¬KS÷home¬~KC÷1566052200¬KP÷n3i8wgJg¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷*MT Melsungen¬KK÷Rimpar¬KL÷31:24¬KN÷w¬KS÷home¬~KC÷1560085200¬KP÷KUj2bAkd¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Lemgo¬KL÷31:27¬KN÷w¬KS÷home¬~KC÷1559154600¬KP÷Kn63AGri¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Erlangen¬KK÷*MT Melsungen¬KL÷24:25¬KN÷w¬KS÷away¬~KC÷1558630800¬KP÷6qtUeHTc¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Hannover-Burgdorf¬KL÷28:25¬KN÷w¬KS÷home¬~KC÷1558026000¬KP÷EDyPHwZJ¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Flensburg-H.¬KK÷MT Melsungen¬KL÷30:24¬KN÷l¬KS÷away¬~KC÷1557657000¬KP÷IRiMcIsl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*Rhein-Neckar¬KL÷23:26¬KN÷l¬KS÷home¬~KC÷1556816400¬KP÷x8zirwr1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷*MT Melsungen¬KL÷22:27¬KN÷w¬KS÷away¬~KC÷1556389800¬KP÷fPI0XLTr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷Minden¬KL÷26:21¬KN÷w¬KS÷home¬~KC÷1555785000¬KP÷vwbQupM2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Bergischer¬KK÷MT Melsungen¬KL÷25:24¬KN÷l¬KS÷away¬~KB÷Head-to-head matches: HSG WETZLAR - MT MELSUNGEN¬~KC÷1583610300¬KP÷dMnnwA89¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:26¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬~KC÷1545933600¬KP÷6BbZztIp¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷26:24¬~KC÷1539712800¬KP÷bBpgzwm9¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷20:28¬~KC÷1536858000¬KP÷E11BEwmN¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:34¬~KC÷1524402000¬KP÷0xYx8M1M¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷31:28¬~KC÷1510428600¬KP÷YZBexVbA¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷29:22¬~KC÷1486576800¬KP÷jVjCOhHg¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷27:22¬~KC÷1479319200¬KP÷xd4lSnVr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*HSG Wetzlar¬KL÷25:28¬~KC÷1456596000¬KP÷pb72eiSo¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷29:22¬~KC÷1449859500¬KP÷dWkCwTaU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:25¬~KC÷1424286900¬KP÷tCROd2Kl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷29:31¬~KC÷1411822800¬KP÷zkDBSFDH¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:28¬~KC÷1394306100¬KP÷SKszKBta¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷*HSG Wetzlar¬KL÷24:32¬~KC÷1381072500¬KP÷zm4wwZDl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:30¬~KC÷1361118600¬KP÷IyebvHbk¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:26¬~KC÷1347128100¬KP÷IHUw1vwU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:25¬~KC÷1335013200¬KP÷z1Cy5DOa¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:26¬~KC÷1322413200¬KP÷0Wabyyv4¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷HSG Wetzlar¬KL÷30:30¬~KC÷1307197800¬KP÷OAMNGRlA¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷0:0¬~KC÷1293045300¬KP÷44ftzWep¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷26:24¬~KC÷1275152400¬KP÷CSURLFho¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷32:30¬~KC÷1261595700¬KP÷Wn0nvgZp¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷30:27¬~KC÷1239462000¬KP÷fmPDlo0Q¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷31:27¬~KC÷1225029600¬KP÷Cv096zhH¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷30:30¬~KC÷1204387200¬KP÷tAx675se¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷MT Melsungen¬KK÷HSG Wetzlar¬KL÷28:28¬~KC÷1191164400¬KP÷CGkuwTda¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷34:23¬~KC÷1172325600¬KP÷0MPBXxpt¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷37:30¬~KC÷1157895900¬KP÷S054rouF¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷22:26¬~KC÷1143310500¬KP÷xMLqbEHm¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*MT Melsungen¬KK÷HSG Wetzlar¬KL÷36:32¬~KC÷1129474800¬KP÷trdRTyXi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷24:27¬~KA÷HSG Wetzlar - Home¬~KB÷Last matches: HSG WETZLAR¬~KC÷1602347400¬KP÷ATOUnshd¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Kiel¬KL÷31:22¬KN÷w¬KS÷home¬~KC÷1601820000¬KP÷YNo5NQOp¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Flensburg-H.¬KL÷27:29¬KN÷l¬KS÷home¬~KC÷1583344800¬KP÷dSHU0hqJ¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Goppingen¬KL÷31:30¬KN÷w¬KS÷home¬~KC÷1581616800¬KP÷SEMcwboe¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Rhein-Neckar¬KL÷27:27¬KN÷d¬KS÷home¬~KC÷1580578200¬KP÷8WCZnBIi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Bergischer¬KL÷27:24¬KN÷w¬KS÷home¬~KC÷1577379600¬KP÷YkWQJCl5¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Ludwigshafen¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1575747000¬KP÷YasEFmU2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Stuttgart¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1574538300¬KP÷Eyn6nk0G¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Minden¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1573398000¬KP÷bmQWEAvo¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Hannover-Burgdorf¬KL÷25:25¬KN÷d¬KS÷home¬~KC÷1571331600¬KP÷MLs1ONBs¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷26:30¬KN÷l¬KS÷home¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬KN÷l¬KS÷home¬~KC÷1570039200¬KP÷C4ZscbdG¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷25:26¬KN÷l¬KS÷home¬~KC÷1569517200¬KP÷Ohvo1fEG¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷SC Magdeburg¬KL÷29:28¬KN÷w¬KS÷home¬~KC÷1568556000¬KP÷vszc6UYb¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Nordhorn-Lingen¬KL÷34:27¬KN÷w¬KS÷home¬~KC÷1567530000¬KP÷I9bhpT80¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷Flensburg-H.¬KL÷27:27¬KN÷d¬KS÷home¬~KC÷1566493200¬KP÷2J9yJjA1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Lemgo¬KL÷28:32¬KN÷l¬KS÷home¬~KC÷1565357400¬KP÷CbUyv8TA¬KF÷Club Friendly¬KG÷8¬KH÷World¬KI÷CF¬KJ÷*HSG Wetzlar¬KK÷St. Raphael¬KL÷29:26¬KN÷w¬KS÷home¬~KC÷1559154600¬KP÷bw579zbc¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Stuttgart¬KL÷26:23¬KN÷w¬KS÷home¬~KC÷1557421200¬KP÷IuXfCHds¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Kiel¬KL÷23:27¬KN÷l¬KS÷home¬~KC÷1556816400¬KP÷2krvoubr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Gummersbach¬KL÷30:23¬KN÷w¬KS÷home¬~KC÷1555855200¬KP÷U7GZIMEk¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Lemgo¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1552834800¬KP÷rVSgKxfP¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Erlangen¬KL÷27:28¬KN÷l¬KS÷home¬~KC÷1550772000¬KP÷ritq6nZE¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷Minden¬KL÷31:27¬KN÷w¬KS÷home¬~KC÷1549562400¬KP÷QX4Uf19G¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*Flensburg-H.¬KL÷23:30¬KN÷l¬KS÷home¬~KB÷Head-to-head matches: HSG WETZLAR - MT MELSUNGEN¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬~KC÷1539712800¬KP÷bBpgzwm9¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷20:28¬~KC÷1536858000¬KP÷E11BEwmN¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:34¬~KC÷1524402000¬KP÷0xYx8M1M¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷31:28¬~KC÷1486576800¬KP÷jVjCOhHg¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷27:22¬~KC÷1449859500¬KP÷dWkCwTaU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:25¬~KC÷1424286900¬KP÷tCROd2Kl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷29:31¬~KC÷1381072500¬KP÷zm4wwZDl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:30¬~KC÷1361118600¬KP÷IyebvHbk¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:26¬~KC÷1335013200¬KP÷z1Cy5DOa¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:26¬~KC÷1307197800¬KP÷OAMNGRlA¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷0:0¬~KC÷1275152400¬KP÷CSURLFho¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷32:30¬~KC÷1225029600¬KP÷Cv096zhH¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷30:30¬~KC÷1191164400¬KP÷CGkuwTda¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷34:23¬~KC÷1157895900¬KP÷S054rouF¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷22:26¬~KC÷1129474800¬KP÷trdRTyXi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷24:27¬~KA÷MT Melsungen - Away¬~KB÷Last matches: MT MELSUNGEN¬~KC÷1602424800¬KP÷p0tfO3E2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Erlangen¬KK÷MT Melsungen¬KL÷31:21¬KN÷l¬KS÷away¬~KC÷1601820000¬KP÷0UwioUGi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HBW Balingen-Weilstetten¬KK÷*MT Melsungen¬KL÷23:25¬KN÷w¬KS÷away¬~KC÷1598805000¬KP÷d0sI69HO¬KF÷EHF European League¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Bjerringbro/Silkeborg¬KK÷MT Melsungen¬KL÷31:27¬KN÷l¬KS÷away¬~KC÷1583344800¬KP÷MkN56dFs¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Flensburg-H.¬KK÷MT Melsungen¬KL÷30:23¬KN÷l¬KS÷away¬~KC÷1582470000¬KP÷tInXic0l¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷MT Melsungen¬KL÷25:25¬KN÷d¬KS÷away¬~KC÷1582134300¬KP÷reStmCtQ¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Bjerringbro/Silkeborg¬KK÷MT Melsungen¬KL÷35:31¬KN÷l¬KS÷away¬~KC÷1581783300¬KP÷GlzeP8lJ¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷*Benfica¬KK÷MT Melsungen¬KL÷29:26¬KN÷l¬KS÷away¬~KC÷1581012000¬KP÷MgJkqTHG¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Rhein-Neckar¬KK÷*MT Melsungen¬KL÷30:33¬KN÷w¬KS÷away¬~KC÷1577622600¬KP÷zJhdZilh¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Erlangen¬KK÷*MT Melsungen¬KL÷25:30¬KN÷w¬KS÷away¬~KC÷1577017800¬KP÷0YPu7Gs0¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*SC Magdeburg¬KK÷MT Melsungen¬KL÷26:25¬KN÷l¬KS÷away¬~KC÷1576173600¬KP÷pbT4536e¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Stuttgart¬KK÷MT Melsungen¬KL÷31:28¬KN÷l¬KS÷away¬~KC÷1574964000¬KP÷6ZQpu7hj¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Fuchse Berlin¬KK÷MT Melsungen¬KL÷28:22¬KN÷l¬KS÷away¬~KC÷1574611200¬KP÷x2Bc9uJ5¬KF÷EHF Cup¬KG÷6¬KH÷Europe¬KI÷EHF¬KJ÷Olympiacos SFP¬KK÷*MT Melsungen¬KL÷19:20¬KN÷w¬KS÷away¬~KC÷1573754400¬KP÷pt6Rzh14¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Minden¬KK÷*MT Melsungen¬KL÷27:29¬KN÷w¬KS÷away¬~KC÷1572544800¬KP÷n9bRCDf4¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Kiel¬KK÷MT Melsungen¬KL÷38:26¬KN÷l¬KS÷away¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬KN÷w¬KS÷away¬~KC÷1569949200¬KP÷MFtVa0Cc¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷Leipzig¬KK÷*MT Melsungen¬KL÷27:30¬KN÷w¬KS÷away¬~KC÷1569160800¬KP÷fDnU4xFi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Nordhorn-Lingen¬KK÷*MT Melsungen¬KL÷24:31¬KN÷w¬KS÷away¬~KC÷1567951200¬KP÷CUrCwIio¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HBW Balingen-Weilstetten¬KK÷MT Melsungen¬KL÷36:23¬KN÷l¬KS÷away¬~KC÷1567098000¬KP÷fDYEW9v1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Bergischer¬KK÷MT Melsungen¬KL÷24:24¬KN÷d¬KS÷away¬~KC÷1559154600¬KP÷Kn63AGri¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Erlangen¬KK÷*MT Melsungen¬KL÷24:25¬KN÷w¬KS÷away¬~KC÷1558026000¬KP÷EDyPHwZJ¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Flensburg-H.¬KK÷MT Melsungen¬KL÷30:24¬KN÷l¬KS÷away¬~KC÷1556816400¬KP÷x8zirwr1¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷Ludwigshafen¬KK÷*MT Melsungen¬KL÷22:27¬KN÷w¬KS÷away¬~KC÷1555785000¬KP÷vwbQupM2¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*Bergischer¬KK÷MT Melsungen¬KL÷25:24¬KN÷l¬KS÷away¬~KB÷Head-to-head matches: HSG WETZLAR - MT MELSUNGEN¬~KC÷1570975200¬KP÷URINA4sr¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:31¬~KC÷1539712800¬KP÷bBpgzwm9¬KF÷DHB Pokal¬KG÷81¬KH÷Germany¬KI÷DHB¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷20:28¬~KC÷1536858000¬KP÷E11BEwmN¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷26:34¬~KC÷1524402000¬KP÷0xYx8M1M¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷31:28¬~KC÷1486576800¬KP÷jVjCOhHg¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷27:22¬~KC÷1449859500¬KP÷dWkCwTaU¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:25¬~KC÷1424286900¬KP÷tCROd2Kl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷29:31¬~KC÷1381072500¬KP÷zm4wwZDl¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:30¬~KC÷1361118600¬KP÷IyebvHbk¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷29:26¬~KC÷1335013200¬KP÷z1Cy5DOa¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷25:26¬~KC÷1307197800¬KP÷OAMNGRlA¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷0:0¬~KC÷1275152400¬KP÷CSURLFho¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷32:30¬~KC÷1225029600¬KP÷Cv096zhH¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷MT Melsungen¬KL÷30:30¬~KC÷1191164400¬KP÷CGkuwTda¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷*HSG Wetzlar¬KK÷MT Melsungen¬KL÷34:23¬~KC÷1157895900¬KP÷S054rouF¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷22:26¬~KC÷1129474800¬KP÷trdRTyXi¬KF÷Bundesliga¬KG÷81¬KH÷Germany¬KI÷BUN¬KJ÷HSG Wetzlar¬KK÷*MT Melsungen¬KL÷24:27¬~A1÷¬~ \ No newline at end of file diff --git a/for_parse/jsVarEnvironment.json b/for_parse/jsVarEnvironment.json new file mode 100644 index 0000000..6b39d63 --- /dev/null +++ b/for_parse/jsVarEnvironment.json @@ -0,0 +1,4532 @@ +{ + "event_id_c": "jNIHX4mo", + "trans": { + "TRANS_DC_INCIDENT_SUBTYPE_31": "ERS", + "TRANS_DC_INCIDENT_SUBTYPE_32": "Fuel system", + "TRANS_DC_INCIDENT_SUBTYPE_33": "Accident", + "TRANS_DC_INCIDENT_SUBTYPE_34": "Engine", + "TRANS_DC_INCIDENT_SUBTYPE_35": "Oil pressure", + "TRANS_DC_INCIDENT_SUBTYPE_36": "Power unit", + "TRANS_DC_INCIDENT_SUBTYPE_37": "Gearbox", + "TRANS_DC_INCIDENT_SUBTYPE_38": "Retired", + "TRANS_DC_INCIDENT_SUBTYPE_39": "Turbo", + "TRANS_DC_INCIDENT_SUBTYPE_40": "Clutch", + "TRANS_DC_INCIDENT_SUBTYPE_41": "Oil leak", + "TRANS_DC_INCIDENT_SUBTYPE_42": "Brakes", + "TRANS_DC_INCIDENT_SUBTYPE_43": "Exhaust", + "TRANS_DC_INCIDENT_SUBTYPE_44": "Fuel pump", + "TRANS_DC_INCIDENT_SUBTYPE_45": "Rear wing", + "TRANS_DC_INCIDENT_SUBTYPE_46": "Suspension", + "TRANS_DC_INCIDENT_SUBTYPE_47": "Drive train", + "TRANS_DC_INCIDENT_SUBTYPE_48": "Ignition", + "TRANS_DC_INCIDENT_SUBTYPE_49": "Cooling", + "TRANS_DC_INCIDENT_SUBTYPE_50": "Electrical", + "TRANS_DC_INCIDENT_SUBTYPE_51": "Wheel", + "TRANS_DC_INCIDENT_SUBTYPE_52": "KERS", + "TRANS_DC_INCIDENT_SUBTYPE_53": "Front wing", + "TRANS_DC_INCIDENT_SUBTYPE_54": "Tyre", + "TRANS_DC_INCIDENT_SUBTYPE_55": "Hydraulics", + "TRANS_DC_INCIDENT_SUBTYPE_56": "Mechanical", + "TRANS_DC_INCIDENT_SUBTYPE_57": "Alternator", + "TRANS_DC_INCIDENT_SUBTYPE_58": "Steering", + "TRANS_DC_INCIDENT_SUBTYPE_59": "Differential", + "TRANS_DC_INCIDENT_SUBTYPE_60": "Throttle", + "TRANS_DC_INCIDENT_SUBTYPE_61": "Not enough laps completed", + "TRANS_DC_INCIDENT_SUBTYPE_62": "Airbox", + "TRANS_DC_INCIDENT_SUBTYPE_63": "Injury", + "TRANS_DC_INCIDENT_SUBTYPE_64": "Technical problem", + "TRANS_DC_INCIDENT_SUBTYPE_65": "Team decision", + "TRANS_DC_INCIDENT_SUBTYPE_158": "Pass", + "TRANS_DC_INCIDENT_SUBTYPE_159": "Run", + "TRANS_DC_INCIDENT_SUBTYPE_160": "Turnover", + "TRANS_DC_CUT_OFF": "Cut-Off", + "TRANS_DC_SHORT_CUT_OFF": "CUT", + "TRANS_DC_DISQUALIFIED": "Disqualified", + "TRANS_DC_SHORT_DISQUALIFIED": "DSQ", + "TRANS_DC_DID_NOT_START": "Did Not Start", + "TRANS_DC_SHORT_DID_NOT_START": "DNS", + "TRANS_DC_DID_NOT_FINISH": "Did Not Finish", + "TRANS_DC_SHORT_DID_NOT_FINISH": "DNF", + "TRANS_DC_MADE_CUT_DID_NOT_FINISH": "Made Cut, Did Not Finish", + "TRANS_DC_SHORT_MADE_CUT_DID_NOT_FINISH": "MDF", + "TRANS_DC_WITHDRAWN": "Withdrawn", + "TRANS_DC_SHORT_WITHDRAWN": "WD", + "TRANS_DC_RETIRED": "Retired", + "TRANS_DC_SHORT_RETIRED": "RET", + "TRANS_DC_DID_NOT_CLASSIFIED": "Not Classified", + "TRANS_DC_SHORT_DID_NOT_CLASSIFIED": "NC", + "TRANS_DC_NOT_QUALIFIED": "Not Qualified", + "TRANS_DC_SHORT_NOT_QUALIFIED": "DNQ", + "TRANS_DC_OWNER_POINTS": "Owner Points", + "TRANS_DC_SHORT_OWNER_POINTS": "OP", + "TRANS_DC_NON_RUNNER": "Non Runner", + "TRANS_DC_SHORT_NON_RUNNER": "NR", + "TRANS_DC_PULLED_UP": "Pulled Up", + "TRANS_DC_SHORT_PULLED_UP": "PU", + "TRANS_DC_UNSEATED_RIDER": "Unseated Rider", + "TRANS_DC_SHORT_UNSEATED_RIDER": "UR", + "TRANS_DC_RAN_OUT": "Ran Out", + "TRANS_DC_SHORT_RAN_OUT": "RO", + "TRANS_DC_FALL": "Fell", + "TRANS_DC_SHORT_FALL": "F", + "TRANS_DC_BROUGHT_DOWN": "Brought Down", + "TRANS_DC_SHORT_BROUGHT_DOWN": "BD", + "TRANS_DC_HIT_RAILS": "Hit Rails", + "TRANS_DC_SHORT_HIT_RAILS": "HR", + "TRANS_DC_REFUSED_TO_RACE": "Refused To Race", + "TRANS_DC_SHORT_REFUSED_TO_RACE": "RTR", + "TRANS_DC_SLIPPED_UP": "Slipped Up", + "TRANS_DC_SHORT_SLIPPED_UP": "SU", + "TRANS_ADVERTISEMENT": "advertisement", + "TRANS_AMERICAN_FOOTBALL_TEAM_ON_BALL": "Ball possesion", + "TRANS_AUSSIE_RULES_BEHINDS": "Behinds", + "TRANS_AUSSIE_RULES_GOALS": "Goals", + "TRANS_AUSSIE_RULES_POINTS": "Points", + "TRANS_TENNIS_LOST_SERVE": "LOST SERVE", + "TRANS_TENNIS_SHORT_BREAK_POINT": "BP", + "TRANS_TENNIS_SHORT_MATCH_POINT": "MP", + "TRANS_TENNIS_BREAK_POINT": "Break point", + "TRANS_TENNIS_MATCH_POINT": "Match point", + "TRANS_TENNIS_SET_POINT": "Set point", + "TRANS_TENNIS_SHORT_SET_POINT": "SP", + "TRANS_AUSSIE_RULES_SUPER_GOALS": "Super Goals", + "TRANS_BADMINTON_SERVING_PLAYER": "Serving player", + "TRANS_VOLLEYBALL_SERVING_TEAM": "Serving team", + "TRANS_BEACH_VOLLEYBALL_SERVING_TEAM": "Serving team", + "TRANS_BASEBALL_BATTING_TEAM": "Batting team", + "TRANS_BASEBALL_ERRORS": "Errors", + "TRANS_BASEBALL_HITS": "Hits", + "TRANS_BASEBALL_MATCH_STATUS_": "TRANS_BASEBALL_MATCH_STATUS_", + "TRANS_LOST_SHORT": "L", + "TRANS_BASEBALL_PITCHERS": "Pitchers", + "TRANS_WIN_SHORT": "W", + "TRANS_DRAW_SHORT": "D", + "TRANS_BASEBALL_PITCHING_TEAM": "Pitching team", + "TRANS_BASEBALL_RUNS": "Runs", + "TRANS_BASEBALL_SHORT_ERRORS": "E", + "TRANS_BASEBALL_SHORT_HITS": "H", + "TRANS_BASEBALL_SHORT_RUNS": "R", + "TRANS_PESAPALLO_SHORT_1HF": "H1", + "TRANS_PESAPALLO_SHORT_2HF": "H2", + "TRANS_PESAPALLO_BATTING_TEAM": "Batting team", + "TRANS_PESAPALLO_PITCHING_TEAM": "Pitching team", + "TRANS_PESAPALLO_MATCH_STATUS_EINN": "Extra Inning", + "TRANS_PESAPALLO_SHORT_EINN": "EI", + "TRANS_PESAPALLO_MATCH_STATUS_PEN": "Penalties", + "TRANS_PESAPALLO_SHORT_PEN": "P", + "TRANS_BLOCK_LABEL_PARTNERS": "Partners", + "TRANS_BOOKMARK_ALL": "All Games", + "TRANS_BOOKMARK_CUSTOMIZE": "My Games", + "TRANS_BOOKMARK_FIN": "Finished", + "TRANS_BOOKMARK_LATEST_SCORES": "Latest Scores", + "TRANS_BOOKMARK_LIVE": "LIVE Games", + "TRANS_BOOKMARK_ODDS": "Odds", + "TRANS_BOOKMARK_SCHED": "Scheduled", + "TRANS_BOOKMARK_SHORT_ALL": "All", + "TRANS_BOOKMARK_SHORT_CUSTOMIZE": "My", + "TRANS_BOOKMARK_SHORT_LIVE": "LIVE", + "TRANS_BOXING_DRAW": "Draw", + "TRANS_BOXING_RESULT_KO": "KO", + "TRANS_BOXING_RESULT_POINTS": "Points", + "TRANS_BOXING_RESULT_TKO": "Technical KO", + "TRANS_BOXING_RESULT_SUBMISSION": "Submission", + "TRANS_BOXING_RESULT_NO_CONTEST": "No Contest", + "TRANS_BOXING_RESULT_DISQUALIFIED": "Disqualified", + "TRANS_BOXING_RESULT_SHORT_KO": "KO", + "TRANS_BOXING_RESULT_SHORT_POINTS": "PTS", + "TRANS_BOXING_RESULT_SHORT_TKO": "TKO", + "TRANS_BOXING_RESULT_SHORT_SUBMISSION": "SUBM", + "TRANS_BOXING_RESULT_SHORT_NO_CONTEST": "NC", + "TRANS_BOXING_RESULT_SHORT_DISQUALIFIED": "DSQ", + "TRANS_BOXING_RESULT_PUNCHES": "Punches", + "TRANS_BOXING_RESULT_UNANIMOUS": "Unanimous", + "TRANS_BOXING_RESULT_SPLIT": "Split", + "TRANS_BOXING_RESULT_PUNCH": "Punch", + "TRANS_BOXING_RESULT_GUILLOTINE_CHOKE": "Guillotine choke", + "TRANS_BOXING_RESULT_FLYING_KNEE": "Flying knee", + "TRANS_BOXING_RESULT_TRIANGLE_CHOKE": "Triangle choke", + "TRANS_BOXING_RESULT_ARM_TRIANGLE_CHOKE": "Arm-triangle choke", + "TRANS_BOXING_RESULT_SUPLEX_AND_PUNCHES": "Suplex and punches", + "TRANS_BOXING_RESULT_REAR_NAKED_CHOKE": "Rear-naked choke", + "TRANS_BOXING_RESULT_MAJORITY": "Majority", + "TRANS_BOXING_RESULT_ARMBAR": "Armbar", + "TRANS_BOXING_RESULT_STRAIGHT_ARMBAR": "Straight armbar", + "TRANS_BOXING_RESULT_UPKICK": "Upkick", + "TRANS_BOXING_RESULT_BROKEN_EYE_SOCKET": "Broken eye socket", + "TRANS_BOXING_RESULT_CORNER_STOPPAGE": "Corner stoppage", + "TRANS_BOXING_RESULT_KNEE": "Knee", + "TRANS_BOXING_RESULT_KIMURA": "Kimura", + "TRANS_BOXING_RESULT_ELBOW": "Elbow", + "TRANS_BOXING_RESULT_KEYLOCK": "Keylock", + "TRANS_BOXING_RESULT_ILLEGAL_DOWNWARD_ELBOWS": "Illegal downward elbows", + "TRANS_BOXING_RESULT_INJURY": "Injury", + "TRANS_BOXING_RESULT_BRABO_CHOKE": "Brabo choke", + "TRANS_BOXING_RESULT_HEAD_KICK": "Head kick", + "TRANS_BOXING_RESULT_KICK": "Kick", + "TRANS_BOXING_RESULT_CUT": "Cut", + "TRANS_BOXING_RESULT_DOCTOR_STOPPAGE": "Doctor stoppage", + "TRANS_BOXING_RESULT_SOCCER_KICKS": "Soccer kicks", + "TRANS_BOXING_RESULT_NECK_CRANK": "Neck crank", + "TRANS_BOXING_RESULT_KICK_AND_PUNCHES": "Kick and punches", + "TRANS_BOXING_RESULT_ELBOWS_AND_PUNCHES": "Elbows and punches", + "TRANS_BOXING_RESULT_HEAD_KICK_AND_PUNCHES": "Head kick and punches", + "TRANS_BOXING_RESULT_KICK_TO_THE_BODY": "Kick to the body", + "TRANS_BOXING_RESULT_JUDGING_ERROR": "Judging error", + "TRANS_BOXING_RESULT_ARMLOCK": "Armlock", + "TRANS_BOXING_RESULT_LEGLOCK": "Leglock", + "TRANS_BOXING_RESULT_HEEL_HOOK": "Heel hook", + "TRANS_BOXING_RESULT_SHOULDER_CHOKE": "Shoulder choke", + "TRANS_BOXING_RESULT_CALF_SLICER": "Calf slicer", + "TRANS_BOXING_RESULT_OVERTURNED_BY_CSAC": "Overturned by CSAC", + "TRANS_BOXING_RESULT_ILLEGAL_KICK": "Illegal kick", + "TRANS_BOXING_RESULT_KNEE_TO_THE_BODY": "Knee to the body", + "TRANS_BOXING_RESULT_KNEE_AND_PUNCHES": "Knee and punches", + "TRANS_BOXING_RESULT_RETIREMENT": "Retirement", + "TRANS_BOXING_RESULT_NORTH_SOUTH_CHOKE": "North-south choke", + "TRANS_BOXING_RESULT_ACHILLES_LOCK": "Achilles lock", + "TRANS_BOXING_RESULT_OMOPLATA": "Omoplata", + "TRANS_BOXING_RESULT_SPINNING_HEEL_KICK": "Spinning heel kick", + "TRANS_BOXING_RESULT_FRONT_KICK_AND_PUNCHES": "Front kick and punches", + "TRANS_BOXING_RESULT_FRONT_KICK": "Front kick", + "TRANS_BOXING_RESULT_KNEE_TO_THE_RIBS": "Knee to the ribs", + "TRANS_BOXING_RESULT_KNEEBAR": "Kneebar", + "TRANS_BOXING_RESULT_STOMPS": "Stomps", + "TRANS_BOXING_RESULT_ANACONDA_CHOKE": "Anaconda choke", + "TRANS_BOXING_RESULT_CHOKE": "Choke", + "TRANS_BOXING_RESULT_FLYING_KNEE_AND_PUNCHES": "Flying knee and punches", + "TRANS_BOXING_RESULT_BODY_KICK_AND_PUNCHES": "Body kick and punches", + "TRANS_BOXING_RESULT_JAPANESE_NECKTIE": "Japanese necktie", + "TRANS_BOXING_RESULT_SPLIT_DECISION": "Split decision", + "TRANS_BOXING_RESULT_MAJORITY_DECISION": "Majority decision", + "TRANS_BOXING_RESULT_UNANIMOUS_DECISION": "Unanimous decision", + "TRANS_BOXING_RESULT_SPLIT_DECISION_DRAW": "Split decision draw", + "TRANS_BOXING_RESULT_MAJORITY_DRAW": "Majority draw", + "TRANS_BOXING_RESULT_TECHNICAL_DECISION": "Technical decision", + "TRANS_BOXING_ROUND": "Round %s", + "TRANS_CLICK_FOR_MATCH_DETAIL": "Click for match detail!", + "TRANS_CLICK_FOR_DETAIL": "Click for details!", + "TRANS_CLICK_FOR_PLAYER_CARD": "Click for player card!", + "TRANS_CLICK_FOR_LIST_OF_MATCHES": "Click to view a list of matches", + "TRANS_CLICK_FOR_MORE_SPORT_GAMES": "More games from [sport]", + "TRANS_CLICK_FOR_ODDS_COMPARISON": "Click for odds comparison!", + "TRANS_CLICK_TO_SEE_LINEUPS": "Click to see lineups!", + "TRANS_CLICK_TO_WATCH_VIDEO_HIGHLIGHTS": "Click to watch video highlights!", + "TRANS_CLOSE_WINDOW": "close window", + "TRANS_UPDATE_CORRECTION": "CORRECTION", + "TRANS_CORRECTION_FOUL": "Foul", + "TRANS_CORRECTION_HANDBALL": "handball", + "TRANS_CORRECTION_OFFSIDE": "offside", + "TRANS_CORRECTION_VIDEO_REVIEW": "video review", + "TRANS_CORRECTION_COACHS_CHALLENGE": "coach's challenge", + "TRANS_CORRECTION_VAR": "VAR", + "TRANS_NOTIFICATION_MESSAGE_CORRECTION_INCIDENT_VIDEO_REVIEW_FOUL": "VAR - foul", + "TRANS_NOTIFICATION_MESSAGE_CORRECTION_INCIDENT_VIDEO_REVIEW_OFFSIDE": "VAR - offside", + "TRANS_NOTIFICATION_MESSAGE_CORRECTION_INCIDENT_VIDEO_REVIEW_HANDBALL": "VAR - handball", + "TRANS_CRICKET_2_DAY_MATCH": "2-day match.", + "TRANS_CRICKET_3_DAY_MATCH": "3-day match.", + "TRANS_CRICKET_4_DAY_MATCH": "4-day match.", + "TRANS_CRICKET_5_DAY_MATCH": "5-day match.", + "TRANS_CRICKET_BATSMAN": "Batsman", + "TRANS_CRICKET_BATTING_TEAM": "Batting team", + "TRANS_CRICKET_BOWLER": "Bowler", + "TRANS_CRICKET_BOWLING_TEAM": "Bowling team", + "TRANS_CRICKET_DAY_1": "Day 1.", + "TRANS_CRICKET_DAY_2": "Day 2.", + "TRANS_CRICKET_DAY_3": "Day 3.", + "TRANS_CRICKET_DAY_4": "Day 4.", + "TRANS_CRICKET_DAY_5": "Day 5.", + "TRANS_CRICKET_LAST_SIX_BALLS": "Last six balls", + "TRANS_CRICKET_OVERS": "Overs", + "TRANS_CRICKET_RECENT_OVERS": "Recent overs", + "TRANS_CRICKET_RUNS": "Runs", + "TRANS_CRICKET_SHORT_RUNS": "R", + "TRANS_CRICKET_WICKETS": "Wickets", + "TRANS_CRICKET_WICKET": "Wicket", + "TRANS_CRICKET_RUN_RATE_TITLE": "Run rate", + "TRANS_CYCLING_BOOKMARK_ALL": "All Races", + "TRANS_CYCLING_BOOKMARK_LIVE": "LIVE", + "TRANS_CYCLING_BOOKMARK_FIN": "Finished", + "TRANS_CYCLING_BOOKMARK_SCHED": "Scheduled", + "TRANS_CYCLING_STAGE_TYPE_FLAT": "flat stage", + "TRANS_CYCLING_STAGE_TYPE_MEDIUM_MOUNTAIN": "medium-mountain stage", + "TRANS_CYCLING_STAGE_TYPE_MOUNTAIN": "mountain stage", + "TRANS_CYCLING_STAGE_TYPE_INDIVIDUAL_TIME_TRIAL": "individual time trial", + "TRANS_CYCLING_STAGE_TYPE_TEAM_TIME_TRIAL": "team time trial", + "TRANS_DARTS_BEGINNING_PLAYER": "Beginning player", + "TRANS_DARTS_PLAYING_PLAYER": "Throwing now", + "TRANS_DARTS_BEST_OF_LEGS": "Best of %s legs", + "TRANS_DARTS_BEST_OF_LEGS_IFRAME": "%s L", + "TRANS_DARTS_BEST_OF_SETS": "Best of %s sets", + "TRANS_DARTS_BEST_OF_SETS_IFRAME": "%s S", + "TRANS_DARTS_LEG_NUMBER": "Leg %s", + "TRANS_DARTS_SET_NUMBER": "Set %s", + "TRANS_DARTS_LEGS": "Legs", + "TRANS_DARTS_SHORT_LEGS": "Legs", + "TRANS_DARTS_SETS": "Sets", + "TRANS_DARTS_SHORT_SETS": "Sets", + "TRANS_DARTS_CURRENT_POINTS": "Points", + "TRANS_DARTS_SHORT_CURRENT_POINTS": "Points", + "TRANS_DARTS_LOST_SERVE": "Lost throw", + "TRANS_DARTS_CURRENT_LEG": "Current leg", + "TRANS_DARTS_STATISTICS_180": "180 thrown", + "TRANS_DARTS_STATISTICS_140": "140+ thrown", + "TRANS_DARTS_DEFAULT_MATCH_STATUS_SET1": "Set 1", + "TRANS_DARTS_DEFAULT_MATCH_STATUS_IFRAME_SET1": "Set 1", + "TRANS_DARTS_DEFAULT_MATCH_STATUS_IFRAME_SHORT_SET1": "S1", + "TRANS_BIG_CHANCE": "Big chance!", + "TRANS_DAY_FRI": "Friday", + "TRANS_DAY_MON": "Monday", + "TRANS_DAY_NEXT": "Next day", + "TRANS_DAY_PREVIOUS": "Previous day", + "TRANS_DAY_SAT": "Saturday", + "TRANS_DAY_SHORT_FRI": "Fr", + "TRANS_DAY_SHORT_MON": "Mo", + "TRANS_DAY_SHORT_SAT": "Sa", + "TRANS_DAY_SHORT_SUN": "Su", + "TRANS_DAY_SHORT_THU": "Th", + "TRANS_DAY_SHORT_TUE": "Tu", + "TRANS_DAY_SHORT_WED": "We", + "TRANS_DAY_SUN": "Sunday", + "TRANS_DAY_THU": "Thursday", + "TRANS_DAY_TODAY": "Today", + "TRANS_DAY_TUE": "Tuesday", + "TRANS_DAY_WED": "Wednesday", + "TRANS_MOTORSPORT_LEADER": "LEADER", + "TRANS_MOTORSPORT_WINNER": "Winner", + "TRANS_DEFAULT_MATCH_STATUS_1INN": "1st Inning", + "TRANS_DEFAULT_MATCH_STATUS_2INN": "2nd Inning", + "TRANS_DEFAULT_MATCH_STATUS_3INN": "3rd Inning", + "TRANS_DEFAULT_MATCH_STATUS_4INN": "4th Inning", + "TRANS_DEFAULT_MATCH_STATUS_5INN": "5th Inning", + "TRANS_DEFAULT_MATCH_STATUS_6INN": "6th Inning", + "TRANS_DEFAULT_MATCH_STATUS_7INN": "7th Inning", + "TRANS_DEFAULT_MATCH_STATUS_8INN": "8th Inning", + "TRANS_DEFAULT_MATCH_STATUS_9INN": "9th Inning", + "TRANS_DEFAULT_MATCH_STATUS_EINN": "Extra Inning", + "TRANS_DEFAULT_MATCH_STATUS_FIRST_ROUND": "Round 1", + "TRANS_DEFAULT_MATCH_STATUS_SECOND_ROUND": "Round 2", + "TRANS_DEFAULT_MATCH_STATUS_THIRD_ROUND": "Round 3", + "TRANS_DEFAULT_MATCH_STATUS_FOURTH_ROUND": "Round 4", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_ROUND1": "After round 1", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_ROUND2": "After round 2", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_ROUND3": "After round 3", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY1": "After day 1", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY2": "After day 2", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY3": "After day 3", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY4": "After day 4", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY5": "After day 5", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY6": "After day 6", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY7": "After day 7", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY8": "After day 8", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY9": "After day 9", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_DAY10": "After day 10", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_STAGE": "After Stage %s", + "TRANS_DEFAULT_MATCH_STATUS_AFTER_SS": "After SS %s", + "TRANS_DEFAULT_MATCH_STATUS_SHORT_EINN": "EI", + "TRANS_DEFAULT_MATCH_STATUS_FINISHED": "Finished", + "TRANS_DEFAULT_MATCH_STATUS_INTERRUPTED": "Interrupted", + "TRANS_DEFAULT_MATCH_STATUS_DELAYED": "Delayed", + "TRANS_DEFAULT_MATCH_STATUS_RET": "Finished \/ retired", + "TRANS_DEFAULT_MATCH_STATUS_WALK": "Walkover", + "TRANS_DEFAULT_MATCH_STATUS_POSTPONED": "Postponed", + "TRANS_DEFAULT_MATCH_STATUS_ABANDONED": "Abandoned", + "TRANS_DEFAULT_MATCH_STATUS_PAUSE": "Break Time", + "TRANS_DEFAULT_MATCH_STATUS_AWARDED": "Awarded", + "TRANS_DEFAULT_MATCH_STATUS_PENDING": "Awaiting updates", + "TRANS_DEFAULT_MATCH_STATUS_TO_FINISH": "To finish", + "TRANS_DEFAULT_MATCH_STATUS_LIVE": "Live", + "TRANS_DEFAULT_MATCH_STATUS_1HF": "1st Half", + "TRANS_DEFAULT_MATCH_STATUS_2HF": "2nd Half", + "TRANS_DEFAULT_MATCH_STATUS_CANCELED": "Cancelled", + "TRANS_SOCCER_MATCH_STATUS_FIN_APEN": "After Penalties", + "TRANS_SOCCER_MATCH_STATUS_FIN_AET": "After Extra Time", + "TRANS_DEFAULT_MATCH_STATUS_1PER": "1st Period", + "TRANS_DEFAULT_MATCH_STATUS_2PER": "2nd Period", + "TRANS_DEFAULT_MATCH_STATUS_3PER": "3rd Period", + "TRANS_DEFAULT_MATCH_STATUS_1QRT": "1st Quarter", + "TRANS_DEFAULT_MATCH_STATUS_2QRT": "2nd Quarter", + "TRANS_DEFAULT_MATCH_STATUS_3QRT": "3rd Quarter", + "TRANS_DEFAULT_MATCH_STATUS_4QRT": "4th Quarter", + "TRANS_DEFAULT_MATCH_STATUS_SET1": "Set 1", + "TRANS_DEFAULT_MATCH_STATUS_SET2": "Set 2", + "TRANS_DEFAULT_MATCH_STATUS_SET3": "Set 3", + "TRANS_DEFAULT_MATCH_STATUS_SET4": "Set 4", + "TRANS_DEFAULT_MATCH_STATUS_SET5": "Set 5", + "TRANS_DEFAULT_MATCH_STATUS_SET1_TIEBREAK": "Set 1 - Tiebreak", + "TRANS_DEFAULT_MATCH_STATUS_SET2_TIEBREAK": "Set 2 - Tiebreak", + "TRANS_DEFAULT_MATCH_STATUS_SET3_TIEBREAK": "Set 3 - Tiebreak", + "TRANS_DEFAULT_MATCH_STATUS_SET4_TIEBREAK": "Set 4 - Tiebreak", + "TRANS_DEFAULT_MATCH_STATUS_SET5_TIEBREAK": "Set 5 - Tiebreak", + "TRANS_DEFAULT_MATCH_STATUS_IFRAME_SET1": "Set 1", + "TRANS_DEFAULT_MATCH_STATUS_IFRAME_LIVE": "Live", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_LINEUPS": "lineups", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_ODDS_COMPARISON": "odds-comparison", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_STATISTICS": "match-statistics", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_SUMMARY": "match-summary", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_TV": "tv", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_VIDEO_HIGHLIGHTS": "video", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_PHOTOREPORT": "photos", + "TRANS_DETAIL_WATCH_VIDEO": "Watch video!", + "TRANS_DETAIL_BOOKMARK_H2H": "H2H", + "TRANS_DETAIL_BOOKMARK_LINEUPS": "Lineups", + "TRANS_DETAIL_BOOKMARK_LIVE_CENTRE": "Live Centre", + "TRANS_DETAIL_BOOKMARK_LIVE_COMMENTARY": "Commentary", + "TRANS_DETAIL_BOOKMARK_LIVE_TABLE": "LIVE Table", + "TRANS_DETAIL_BOOKMARK_MATCH": "Match", + "TRANS_DETAIL_BOOKMARK_MATCH_HISTORY": "Match History", + "TRANS_DETAIL_BOOKMARK_MATCH_HISTORY_DARTS": "Match History", + "TRANS_DETAIL_BOOKMARK_MATCH_HISTORY_TENNIS": "Point by Point", + "TRANS_DETAIL_BOOKMARK_MATCH_SUMMARY": "Match Summary", + "TRANS_DETAIL_BOOKMARK_MATCH_SUMMARY_2": "Match Summary", + "TRANS_DETAIL_BOOKMARK_ODDS_COMPARISON": "Odds Comparison", + "TRANS_DETAIL_BOOKMARK_PLAYER_STATISTICS": "Player Statistics", + "TRANS_DETAIL_BOOKMARK_PLAYER_STATISTICS_CRICKET": "Scorecard", + "TRANS_DETAIL_BOOKMARK_PLAYER_STATISTICS_GOLF": "Statistics", + "TRANS_DETAIL_BOOKMARK_FALL_OF_WICKETS": "Fall of Wickets", + "TRANS_DETAIL_BOOKMARK_OVERS": "Ball by Ball", + "TRANS_DETAIL_BOOKMARK_PLAYER_CARD": "Player Card", + "TRANS_DETAIL_BOOKMARK_PRE_MATCH_ODDS": "Pre-match odds", + "TRANS_DETAIL_BOOKMARK_LIVE_ODDS": "Live odds", + "TRANS_DETAIL_BOOKMARK_ROUND_RESULTS": "Round Results", + "TRANS_DETAIL_BOOKMARK_STATISTICS": "Statistics", + "TRANS_DETAIL_BOOKMARK_TV_SCHEDULE": "TV", + "TRANS_DETAIL_BOOKMARK_TV_LIVE_STREAMING": "TV \/ Live Streaming", + "TRANS_DETAIL_BOOKMARK_VIDEO_HIGHLIGHTS": "Video", + "TRANS_DETAIL_BOOKMARK_PHOTOREPORT": "Photos", + "TRANS_DETAIL_BOOKMARK_PLAYER_RESULTS": "Results", + "TRANS_DETAIL_BOOKMARK_ODDS": "Odds", + "TRANS_DETAIL_BOOKMARK_PRE_MATCH_ODDS_UNCLICKABLE": "Odds", + "TRANS_DETAIL_INFORMATION_AVAILABLE_LATER": "Information will be available later.", + "TRANS_DETAIL_MATCH_SUMMARY_NO_DATA_SCHED": "No live score information available now, the match has not started yet.", + "TRANS_DETAIL_MATCH_MATCH_INFORMATION": "Match Information", + "TRANS_DETAIL_MATCH_ATTENDANCE": "Attendance", + "TRANS_DETAIL_MATCH_REFEREE": "Referee", + "TRANS_DETAIL_MATCH_VENUE": "Venue", + "TRANS_DETAIL_RACE_SUMMARY_NO_DATA_SCHED": "No live score information available.", + "TRANS_DETAIL_TOURNAMENT_SUMMARY_NO_DATA_SCHED": "No live score information available, the tournament has not started yet.", + "TRANS_DETAIL_TV_WATCH_STREAM_FREE": "TRANS_DETAIL_TV_WATCH_STREAM_FREE", + "TRANS_DETAIL_TV_WATCH_STREAM_LIVE_FREE": "TRANS_DETAIL_TV_WATCH_STREAM_LIVE_FREE", + "TRANS_LSTV_DETAIL_HIDE_SCORE": "TRANS_LSTV_DETAIL_HIDE_SCORE", + "TRANS_LSTV_DETAIL_SHOW_SCORE": "TRANS_LSTV_DETAIL_SHOW_SCORE", + "TRANS_STANDINGS_DRAW": "Draw", + "TRANS_STANDINGS_TABLE": "Standings", + "TRANS_DETAIL_BOOKMARK_STANDINGS_TABLE": "Standings", + "TRANS_DETAIL_BOOKMARK_STANDINGS_DRAW": "Draw", + "TRANS_ERROR_AVAILABLE_ONLY_FOR_LOGGED_USER": "You must be logged in to use this feature.", + "TRANS_ERROR_AVAILABLE_ONLY_FOR_LOGGED_USER_LOGIN_LINK": "You must be logged in to use this feature. You can log in here!<\/a>", + "TRANS_FINAL_RESULT_ONLY": "Final result only.", + "TRANS_FINAL_RESULT_ONLY_SHORT": "FRO", + "TRANS_FOOTER_TOP_ARROW": "Top", + "TRANS_GOAL_UNDER_REVIEW": "Goal under review", + "TRANS_GOLF_MATCH_STATUS_": "TRANS_GOLF_MATCH_STATUS_", + "TRANS_GOLF_PAR": "Par", + "TRANS_GOLF_HOLE": "Hole", + "TRANS_GOLF_HOLE_COL": "Thru", + "TRANS_GOLF_RANK": "Rank", + "TRANS_GOLF_SHORT_PAR": "Par", + "TRANS_GOLF_SHORT_TOTAL": "Total", + "TRANS_GOLF_TOTAL": "Total", + "TRANS_GOLF_BOOKMARK_ALL": "All Tournaments", + "TRANS_GOLF_BOOKMARK_LIVE": "LIVE", + "TRANS_GOLF_BOOKMARK_FIN": "Finished", + "TRANS_GOLF_BOOKMARK_SCHED": "Scheduled", + "TRANS_HOCKEY_CORRECTION_VIDEO_REFEREE": "Video referee", + "TRANS_HOCKEY_GOAL": "GOAL", + "TRANS_LINK_TO_PARENT_PROJECT_STANDINGS": "More info on %s", + "TRANS_LIVE_BETTING_ICON_TITLE_SCHEDULED": "This match will be available for LIVE betting!", + "TRANS_LIVE_BETTING_ICON_TITLE_LIVE": "Bet on this match now LIVE!", + "TRANS_LIVE_CENTRE_ICON_TITLE": "Click to see a detailed match info in our Live Centre!", + "TRANS_LIVE_CENTRE_ICON_TITLE_FUTURE": "Detailed match info will be available after start of the match.", + "TRANS_MATCH_LIST_NOT_FOUND": "No match found.", + "TRANS_MATCH_LIST_NOT_FOUND_LIVE": "No match is being played right now.", + "TRANS_MATCH_LIST_NOT_FOUND_PLAN_NEXT_GAME": "Next match day: [time]", + "TRANS_MATCH_LIST_NOT_FOUND_PLAN_NO_NEXT_GAME": "There is no match scheduled for the next %s days.", + "TRANS_MATCH_LIST_NOT_FOUND_PLAN_NO_PAST_GAME": "There was no match played in the last %s days.", + "TRANS_MATCH_LIST_NOT_FOUND_PLAN_PAST_GAME": "Previous match day: [time]", + "TRANS_MATCH_LIST_NOT_FOUND_TODAY": "There are no [sport] matches taking place today.", + "TRANS_MATCH_LIST_NOT_FOUND_TODAY_INFO_1": "You can follow scores from other sports. The most visited sections on [project_name] are SOCCER<\/a> and TENNIS<\/a>.", + "TRANS_MATCH_LIST_NOT_FOUND_TODAY_INFO_2": "We offer live scores, final results, standings and match details from [sport_count] sports.", + "TRANS_MATCH_LIST_NOT_FOUND_TODAY_INFO_3": "", + "TRANS_MATCH_SUMMARY_LABEL_SCORE": "Score", + "TRANS_RACE_LIST_NOT_FOUND": "No race found.", + "TRANS_RACE_LIST_NOT_FOUND_LIVE": "No race is being held right now.", + "TRANS_RACE_LIST_NOT_FOUND_PLAN_NEXT_GAME": "Next racing day: [time]", + "TRANS_RACE_LIST_NOT_FOUND_PLAN_NO_NEXT_GAME": "There is no race scheduled for the next %s days.", + "TRANS_RACE_LIST_NOT_FOUND_PLAN_NO_PAST_GAME": "There was no race held in the last %s days.", + "TRANS_RACE_LIST_NOT_FOUND_PLAN_PAST_GAME": "Previous racing day: [time]", + "TRANS_RACE_LIST_NOT_FOUND_TODAY": "There are no races taking place today.", + "TRANS_HORSE_RACE_LIST_NOT_FOUND": "No race found.", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_LIVE": "No race is being held right now.", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_PLAN_NEXT_GAME": "Next racing day: [time]", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_PLAN_NO_NEXT_GAME": "There is no race scheduled for the next %s days.", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_PLAN_NO_PAST_GAME": "There was no race held in the last %s days.", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_PLAN_PAST_GAME": "Previous racing day: [time]", + "TRANS_HORSE_RACE_LIST_NOT_FOUND_TODAY": "There are no races taking place today.", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND": "No race found.", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_LIVE": "No race is being held right now.", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_PLAN_NEXT_GAME": "Next racing day: [time]", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_PLAN_NO_NEXT_GAME": "There is no race scheduled for the next %s days.", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_PLAN_NO_PAST_GAME": "There was no race held in the last %s days.", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_PLAN_PAST_GAME": "Previous racing day: [time]", + "TRANS_WINTER_SPORTS_RACE_LIST_NOT_FOUND_TODAY": "There are no races taking place today.", + "TRANS_TOURNAMENT_LIST_NOT_FOUND": "No tournament found.", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_LIVE": "No tournament is being played right now.", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_PLAN_NEXT_GAME": "Next tournament day: [time]", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_PLAN_NO_NEXT_GAME": "There is no tournament scheduled for the next %s days.", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_PLAN_NO_PAST_GAME": "There was no tournament played in the last %s days.", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_PLAN_PAST_GAME": "Previous tournament day: [time]", + "TRANS_TOURNAMENT_LIST_NOT_FOUND_TODAY": "There are no tournaments taking place today.", + "TRANS_MOTORSPORT_AUTO_RACING_RANK": "Rank", + "TRANS_MOTORSPORT_AUTO_RACING_NUMBER": "No", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_NUMBER": "No", + "TRANS_MOTORSPORT_AUTO_RACING_PLAYER": "Driver", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_PLAYER": "Driver", + "TRANS_MOTORSPORT_AUTO_RACING_TEAM": "Team", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_TEAM": "Team", + "TRANS_MOTORSPORT_AUTO_RACING_LAPS": "Laps", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_LAPS": "Laps", + "TRANS_MOTORSPORT_AUTO_RACING_TIME": "Time", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_TIME": "Time", + "TRANS_MOTORSPORT_AUTO_RACING_GRID": "Grid", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_GRID": "Grid", + "TRANS_MOTORSPORT_MOTO_RACING_RANK": "Rank", + "TRANS_MOTORSPORT_MOTO_RACING_NUMBER": "No", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_NUMBER": "No", + "TRANS_MOTORSPORT_MOTO_RACING_PLAYER": "Driver", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_PLAYER": "Driver", + "TRANS_MOTORSPORT_MOTO_RACING_TEAM": "Team", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_TEAM": "Team", + "TRANS_MOTORSPORT_MOTO_RACING_LAPS": "Laps", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_LAPS": "Laps", + "TRANS_MOTORSPORT_MOTO_RACING_TIME": "Time", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_TIME": "Time", + "TRANS_MOTORSPORT_MOTO_RACING_GRID": "Grid", + "TRANS_MOTORSPORT_MOTO_RACING_SHORT_GRID": "Grid", + "TRANS_MOTORSPORT_AUTO_RACING_PITSTOPS": "Pitstops", + "TRANS_MOTORSPORT_AUTO_RACING_SHORT_PITSTOPS": "Pit", + "TRANS_MOTORSPORT_AUTO_RACING_ONE_LAP": "TRANS_MOTORSPORT_AUTO_RACING_ONE_LAP", + "TRANS_MOTORSPORT_ONE_LAP": "lap", + "TRANS_MOTORSPORT_LAP_SHORT": "l.", + "TRANS_MOTORSPORT_LAPS_TOTAL": "laps", + "TRANS_MOTORSPORT_KM": "km", + "TRANS_MOTORSPORT_NO_TIME": "No time", + "TRANS_MOTORSPORT_BOOKMARK_ALL": "All Races", + "TRANS_MOTORSPORT_BOOKMARK_LIVE": "LIVE", + "TRANS_MOTORSPORT_BOOKMARK_FIN": "Finished", + "TRANS_MOTORSPORT_BOOKMARK_SCHED": "Scheduled", + "TRANS_MOTORSPORT_TIME_SECOND_SHORT": "s", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_TARMAC": "tarmac", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_SNOW": "snow", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_GRAVEL": "gravel", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_SNOW_AND_TARMAC": "snow and tarmac", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_TARMAC_AND_GRAVEL": "tarmac and gravel", + "TRANS_MOTORSPORT_AUTO_RACING_SURFACE_GRAVEL_AND_SNOW": "gravel and snow", + "TRANS_MMA_DRAW": "Draw", + "TRANS_MMA_RESULT_KO": "KO", + "TRANS_MMA_RESULT_POINTS": "Points", + "TRANS_MMA_RESULT_TKO": "Technical KO", + "TRANS_MMA_RESULT_SUBMISSION": "Submission", + "TRANS_MMA_RESULT_NO_CONTEST": "No Contest", + "TRANS_MMA_RESULT_DISQUALIFIED": "Disqualified", + "TRANS_MMA_RESULT_SHORT_KO": "KO", + "TRANS_MMA_RESULT_SHORT_POINTS": "PTS", + "TRANS_MMA_RESULT_SHORT_TKO": "TKO", + "TRANS_MMA_RESULT_SHORT_SUBMISSION": "SUBM", + "TRANS_MMA_RESULT_SHORT_NO_CONTEST": "NC", + "TRANS_MMA_RESULT_SHORT_DISQUALIFIED": "DSQ", + "TRANS_MMA_ROUND": "Round %s", + "TRANS_MMA_RESULT_PUNCHES": "Punches", + "TRANS_MMA_RESULT_UNANIMOUS": "Unanimous", + "TRANS_MMA_RESULT_SPLIT": "Split", + "TRANS_MMA_RESULT_PUNCH": "Punch", + "TRANS_MMA_RESULT_GUILLOTINE_CHOKE": "Guillotine choke", + "TRANS_MMA_RESULT_FLYING_KNEE": "Flying knee", + "TRANS_MMA_RESULT_TRIANGLE_CHOKE": "Triangle choke", + "TRANS_MMA_RESULT_ARM_TRIANGLE_CHOKE": "Arm-triangle choke", + "TRANS_MMA_RESULT_SUPLEX_AND_PUNCHES": "Suplex and punches", + "TRANS_MMA_RESULT_REAR_NAKED_CHOKE": "Rear-naked choke", + "TRANS_MMA_RESULT_MAJORITY": "Majority", + "TRANS_MMA_RESULT_ARMBAR": "Armbar", + "TRANS_MMA_RESULT_STRAIGHT_ARMBAR": "Straight armbar", + "TRANS_MMA_RESULT_UPKICK": "Upkick", + "TRANS_MMA_RESULT_BROKEN_EYE_SOCKET": "Broken eye socket", + "TRANS_MMA_RESULT_CORNER_STOPPAGE": "Corner stoppage", + "TRANS_MMA_RESULT_KNEE": "Knee", + "TRANS_MMA_RESULT_KIMURA": "Kimura", + "TRANS_MMA_RESULT_ELBOW": "Elbow", + "TRANS_MMA_RESULT_KEYLOCK": "Keylock", + "TRANS_MMA_RESULT_ILLEGAL_DOWNWARD_ELBOWS": "Illegal downward elbows", + "TRANS_MMA_RESULT_INJURY": "Injury", + "TRANS_MMA_RESULT_BRABO_CHOKE": "Brabo choke", + "TRANS_MMA_RESULT_HEAD_KICK": "Head kick", + "TRANS_MMA_RESULT_KICK": "Kick", + "TRANS_MMA_RESULT_CUT": "Cut", + "TRANS_MMA_RESULT_DOCTOR_STOPPAGE": "Doctor stoppage", + "TRANS_MMA_RESULT_SOCCER_KICKS": "Soccer kicks", + "TRANS_MMA_RESULT_NECK_CRANK": "Neck crank", + "TRANS_MMA_RESULT_KICK_AND_PUNCHES": "Kick and punches", + "TRANS_MMA_RESULT_ELBOWS_AND_PUNCHES": "Elbows and punches", + "TRANS_MMA_RESULT_HEAD_KICK_AND_PUNCHES": "Head kick and punches", + "TRANS_MMA_RESULT_KICK_TO_THE_BODY": "Kick to the body", + "TRANS_MMA_RESULT_JUDGING_ERROR": "Judging error", + "TRANS_MMA_RESULT_ARMLOCK": "Armlock", + "TRANS_MMA_RESULT_LEGLOCK": "Leglock", + "TRANS_MMA_RESULT_HEEL_HOOK": "Heel hook", + "TRANS_MMA_RESULT_SHOULDER_CHOKE": "Shoulder choke", + "TRANS_MMA_RESULT_CALF_SLICER": "Calf slicer", + "TRANS_MMA_RESULT_OVERTURNED_BY_CSAC": "Overturned by CSAC", + "TRANS_MMA_RESULT_ILLEGAL_KICK": "Illegal kick", + "TRANS_MMA_RESULT_KNEE_TO_THE_BODY": "Knee to the body", + "TRANS_MMA_RESULT_KNEE_AND_PUNCHES": "Knee and punches", + "TRANS_MMA_RESULT_RETIREMENT": "Retirement", + "TRANS_MMA_RESULT_NORTH_SOUTH_CHOKE": "North-south choke", + "TRANS_MMA_RESULT_ACHILLES_LOCK": "Achilles lock", + "TRANS_MMA_RESULT_OMOPLATA": "Omoplata", + "TRANS_MMA_RESULT_SPINNING_HEEL_KICK": "Spinning heel kick", + "TRANS_MMA_RESULT_FRONT_KICK_AND_PUNCHES": "Front kick and punches", + "TRANS_MMA_RESULT_FRONT_KICK": "Front kick", + "TRANS_MMA_RESULT_KNEE_TO_THE_RIBS": "Knee to the ribs", + "TRANS_MMA_RESULT_KNEEBAR": "Kneebar", + "TRANS_MMA_RESULT_STOMPS": "Stomps", + "TRANS_MMA_RESULT_ANACONDA_CHOKE": "Anaconda choke", + "TRANS_MMA_RESULT_CHOKE": "Choke", + "TRANS_MMA_RESULT_FLYING_KNEE_AND_PUNCHES": "Flying knee and punches", + "TRANS_MMA_RESULT_BODY_KICK_AND_PUNCHES": "Body kick and punches", + "TRANS_MMA_RESULT_JAPANESE_NECKTIE": "Japanese necktie", + "TRANS_MMA_RESULT_SPLIT_DECISION": "Split decision", + "TRANS_MMA_RESULT_MAJORITY_DECISION": "Majority decision", + "TRANS_MMA_RESULT_UNANIMOUS_DECISION": "Unanimous decision", + "TRANS_MMA_RESULT_SPLIT_DECISION_DRAW": "Split decision draw", + "TRANS_MMA_RESULT_MAJORITY_DRAW": "Majority draw", + "TRANS_MMA_RESULT_TECHNICAL_DECISION": "Technical decision", + "TRANS_MOD_REWRITE_STANDINGS_TABLE": "standings", + "TRANS_MY_GAMES_ADD": "Add this game to My Games!", + "TRANS_MY_GAMES_ADD_DEFAULT": "Add to My Games!", + "TRANS_MY_GAMES_ADD_ALL": "Add all games of this competition to My Games!", + "TRANS_MY_GAMES_MATCH_LIST_NOT_FOUND": "You haven't selected any game yet.
    To select your games just click the [+] icon located next to games across [project_name].", + "TRANS_MY_GAMES_MATCH_LIST_NOT_FOUND_PART1": "You haven't selected any game yet.", + "TRANS_MY_GAMES_MATCH_LIST_NOT_FOUND_PART2": "To select your games just click the icon located next to games across [project_name].", + "TRANS_MY_GAMES_REMOVE": "Remove this game from My Games!", + "TRANS_MY_GAMES_REMOVE_DEFAULT": "Remove from My Games!", + "TRANS_MY_GAMES_REMOVE_ALL": "Remove all games of this competition from My Games!", + "TRANS_MY_GAMES_ADD_EVENT": "Add this event to My Games!", + "TRANS_MY_GAMES_REMOVE_EVENT": "Remove this event from My Games!", + "TRANS_MY_GAMES_SELECT_GROUP": "Select the group!", + "TRANS_MY_GAMES_REMOVE_FROM_GROUP": "Remove from group.", + "TRANS_MY_GAMES_GROUP": "Group %s", + "TRANS_MY_GAMES_GROUP_INFO_PART1": "Have you placed multiple bets? Now you can sort your games into groups.", + "TRANS_MY_GAMES_GROUP_INFO_PART2": " Switch this feature on in your settings!", + "TRANS_MY_GAMES_GROUPS_MOBILE_INFO_TEXT": "If you want to sort your matches into groups, switch to the desktop version.", + "TRANS_MY_LEAGUES_ADD": "Add this league to My Leagues!", + "TRANS_MY_LEAGUES_LEFT_MENU_TEXT": "To select your leagues just click the [*] icon located next to league names.", + "TRANS_MY_LEAGUES_REMOVE": "Remove this league from My Leagues!", + "TRANS_MY_TEAMS_ADD": "Add to My Teams!", + "TRANS_MY_TEAMS_REMOVE": "Remove from My Teams!", + "TRANS_MY_TEAMS_LEFT_MENU_TEXT": "To select your teams, just click the [*] icon located next to the name of the team.", + "TRANS_MY_TEAMS_MATCH_LIST_NOT_FOUND": "You haven't selected any team yet.
    To select your teams, just click the [*] icon located next to the name of the team.", + "TRANS_MY_TEAMS_LIMIT_REACHED": "You have reached the maximum number of My Teams.", + "TRANS_MY_GAMES_MOVE_TO": "Move to:", + "TRANS_MY_GAMES_COPY_TO": "Copy to:", + "TRANS_ODDS_ADD_TO_BOOKMAKER_BETSLIP": "Add this match to bet slip on %s!", + "TRANS_ODDS_BONUS_TITLE": "Click to claim your bonus!", + "TRANS_ODDS_COMPARISON_ASIAN_HANDICAP": "Asian handicap", + "TRANS_ODDS_COMPARISON_ASIAN_HANDICAP_IFRAME_SHORT": "AH", + "TRANS_ODDS_COMPARISON_NO": "No", + "TRANS_ODDS_COMPARISON_YES": "Yes", + "TRANS_ODDS_CLICK_TO_BET_MATCH": "Click to bet this match with %s!", + "TRANS_ODDS_FORMAT_SWITCH": "Switch odds format:", + "TRANS_ODDS_FORMAT_TITLE_EU": "EU Odds (1.50)", + "TRANS_ODDS_FORMAT_TITLE_UK": "UK Odds (1\/2)", + "TRANS_ODDS_FORMAT_TITLE_US": "US Odds (-200)", + "TRANS_ODDS_FORMAT_TITLE_HK": "Hong Kong (0.50)", + "TRANS_ODDS_FORMAT_TITLE_MA": "Malay (0.50)", + "TRANS_ODDS_FORMAT_TITLE_IN": "Indonesian (-2.00)", + "TRANS_ODDS_FORMAT_IFRAME_EU": "EU", + "TRANS_ODDS_FORMAT_IFRAME_UK": "UK", + "TRANS_ODDS_FORMAT_IFRAME_US": "US", + "TRANS_ODDS_FORMAT_IFRAME_HK": "HK", + "TRANS_ODDS_FORMAT_IFRAME_MA": "MA", + "TRANS_ODDS_FORMAT_IFRAME_IN": "IN", + "TRANS_ODDS_FORMAT_DETAIL_EU": "EU", + "TRANS_ODDS_FORMAT_DETAIL_UK": "UK", + "TRANS_ODDS_FORMAT_DETAIL_US": "US", + "TRANS_ODDS_FORMAT_DETAIL_HK": "HK", + "TRANS_ODDS_FORMAT_DETAIL_MA": "MA", + "TRANS_ODDS_FORMAT_DETAIL_IN": "IN", + "TRANS_ODDS_REMOVED_BY_BOOKMAKER": "Odds removed by bookmaker.", + "TRANS_ODDS_TYPE_0": "X", + "TRANS_ODDS_TYPE_HOME_AWAY": "Home\/Away", + "TRANS_ODDS_TYPE_OVER_UNDER": "Over\/Under", + "TRANS_ODDS_POWERED_BY": "Odds displayed are advertising content from the listed bookmakers.", + "TRANS_ODDS_POWERED_BY_IN_LIVE_TABLE": "Tato sekce je komer\u010dn\u00ed prezentac\u00ed kurzov\u00e9 nab\u00eddky spole\u010dnost\u00ed: %s", + "TRANS_PLAYER": "Player", + "TRANS_POINTS": "Points", + "TRANS_POWERED_BY": "Live scores powered by
    FlashScore.com<\/a>
    Get your own free livescore now - register at
    LIVESCORE.in<\/a>", + "TRANS_PROJECT_NAME": "FlashScore.com", + "TRANS_SCOREBOARD_HOME_NO_MATCH_SPORT_NAME": "TRANS_SCOREBOARD_HOME_NO_MATCH_SPORT_NAME", + "TRANS_ODDS_COMPARISON_BASEBALL_SPREAD": "", + "TRANS_ODDS_COMPARISON_BASEBALL_SPREAD_IFRAME_SHORT": "", + "TRANS_ODDS_COMPARISON_HOCKEY_SPREAD": "", + "TRANS_ODDS_COMPARISON_HOCKEY_SPREAD_IFRAME_SHORT": "", + "TRANS_ODDS_EVEN_SHORT": "", + "TRANS_SWAP_TEAM_AT_IFRAME": "", + "TRANS_SEARCH_ACTION": "Search", + "TRANS_SEARCH_CANCEL": "Cancel", + "TRANS_SEARCH_NOUN": "Search", + "TRANS_SEARCH_TITLE": "Search", + "TRANS_SEARCH_INSERT_TEXT": "Type your search here", + "TRANS_SEARCH_COMPETITIONS": "Competitions", + "TRANS_SEARCH_TEAMS": "Teams", + "TRANS_SEARCH_SPORT": "Sport", + "TRANS_SEARCH_ALL_SPORTS": "All sports", + "TRANS_SEARCH_DEFAULT_TEXT_EMPTY_QUERY": "Please type at least %s characters. The results will start displaying here immediately.", + "TRANS_SEARCH_NO_RESULTS": "No result found.", + "TRANS_SEARCH_MORE_RESULTS_AVAILABLE_TEXT": "Your search term was too broad. We recommend that you make your search more specific.", + "TRANS_SEARCH_LAST_SEARCH": "Your last searches", + "TRANS_SEARCH_MOST_POPULAR_SEARCHES": "Most popular searches", + "TRANS_SETTINGS": "Settings", + "TRANS_SETTINGS_LIVESCORE": "Settings", + "TRANS_SETTINGS_LIVESCORE_ORDER_BY_LEAGUE_NAME": "League name", + "TRANS_SETTINGS_LIVESCORE_ORDER_BY_MATCH_START_TIME": "Match start time", + "TRANS_SETTINGS_LIVESCORE_ORDER_MATCHES_BY": "Order matches by", + "TRANS_SETTINGS_LIVESCORE_RESTORE_DEFAULT": "Restore all settings", + "TRANS_SETTINGS_LIVESCORE_RESTORE_DEFAULT_CONFIRM": "Really want to restore all settings?", + "TRANS_SETTINGS_LIVESCORE_SHOW_MY_LEAGUES_ON_TOP": "Show My Leagues on top", + "TRANS_SETTINGS_LIVESCORE_MYGAMES_DISPLAY_GROUPS": "Enable sorting into groups:", + "TRANS_SETTINGS_LIVESCORE_DISPLAY_NOTIFICATIONS_BOTTOM_LEFT": "Display notifications in the bottom left corner of the screen:", + "TRANS_SETTINGS_LIVESCORE_NOTIFICATIONS_SOUND_EFFECT_ON": "Yes, with sound effects", + "TRANS_SETTINGS_LIVESCORE_NOTIFICATIONS_SOUND_EFFECT_OFF": "Yes, without sound effects", + "TRANS_SETTINGS_LIVESCORE_GENERAL_SETTINGS": "General Settings", + "TRANS_USER_BUTTON_BACK": "Back", + "TRANS_TIMEZONE": "Time zone", + "TRANS_NOTIFICATION_SETTINGS_MY_GAMES": "My Games", + "TRANS_SNOOKER_BEST_OF_FRAMES": "Best of %s frames", + "TRANS_SNOOKER_BEST_OF_FRAMES_IFRAME": "%s F", + "TRANS_SNOOKER_FRAME_NUMBER": "Frame %s", + "TRANS_SOCCER_CORRECTION_OFFSIDE": "Offside", + "TRANS_SOCCER_GOAL": "GOAL", + "TRANS_FUTSAL_GOAL": "GOAL", + "TRANS_SOUND_OFF": "Turn off sound", + "TRANS_SOUND_ON": "Turn on sound", + "TRANS_START_TIME": "Start time", + "TRANS_STANDINGS_LIVE_TABLE": "Live Standings", + "TRANS_SUB_BOOKMARK_LIVE_ODDS": "LIVE Odds", + "TRANS_SUB_BOOKMARK_MAIN": "Results", + "TRANS_SUB_BOOKMARK_ODDS": "bet365 Odds", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_H2H_PART_1": "The H2H feature is currently unavailable.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_H2H_PART_2": "We are working hard to correct this. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_LC_PART_1": "The Live Centre feature is currently unavailable.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_LC_PART_2": "We are working hard to correct this. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_LIVE_CENTRE_PART_1": "Detailed Live Centre information may be delayed or unavailable due to technical reasons.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_LIVE_CENTRE_PART_2": "We should fix this problem within 10 minutes. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_MY_GAMES_PART_1": "The My Games feature is currently unavailable.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_MY_GAMES_PART_2": "We are working hard to correct this. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_STANDINGS_PART_1": "Standings are currently unavailable.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_STANDINGS_PART_2": "We are working hard to correct this. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_UPDATES_PART_1": "A technical error is currently causing delays to some updates.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_UPDATES_PART_2": "We are working hard to fix the problem as soon as possible. Thank you for your understanding.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_ODDS_PART_1": "Betting odds are currently unavailable.", + "TRANS_SYSTEM_ERROR_UNAVAILABLE_ODDS_PART_2": "We are working hard to correct this. Thank you for understanding.", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_PART_1": "Your browser doesn't support features that allow us to display the website faster.", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_PART_2": "As a result, some parts of the website might not work correctly.", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_PART_2a": "Please use any of the more up-to-date browsers listed below for following our live scores.", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_PART_4": "We recommend:", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_EDGE": "Edge", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_FIREFOX": "Firefox", + "TRANS_SYSTEM_ERROR_UNSUPPORTED_BROWSER_CHROME": "Chrome", + "TRANS_TABLE_TENNIS_SERVING_PLAYER": "Serving player", + "TRANS_TENNIS_CORRECTION_HAWK_EYE": "Hawk-Eye", + "TRANS_TENNIS_SERVING_PLAYER": "Serving player", + "TRANS_TENNIS_SET": "SET", + "TRANS_TOURNAMENT_PAGE_TODAYS_MATCHES": "Today's Matches", + "TRANS_TOURNAMENT_PAGE_RESULTS": "Results", + "TRANS_UNAUTHORIZED_WEBSITE": "This website is unauthorized.
    Create your own customized free livescore at
    LIVESCORE.in<\/a>!", + "TRANS_UNAUTHORIZED_WEBSITE_URL": "https:\/\/www.enetpulse.com\/freelivescore", + "TRANS_UNVERIFIED_SOURCE_INFO_NOTE": "Updates for this match can be delayed.", + "TRANS_URL_BOOKMAKER_LINK": "\/bookmaker\/", + "TRANS_URL_IDENT_TOURNAMENT_ARCHIVE": "archive", + "TRANS_URL_IDENT_TOURNAMENT_FIXTURES": "fixtures", + "TRANS_URL_IDENT_TOURNAMENT_RESULTS": "results", + "TRANS_URL_IDENT_TOURNAMENT_NEWS": "news", + "TRANS_URL_MATCH_DETAIL": "\/match\/", + "TRANS_URL_PRIVACY_POLICY": "\/terms\/", + "TRANS_URL_SOCCER": "\/football\/", + "TRANS_URL_STANDINGS_DRAW": "\/draw\/", + "TRANS_URL_TENNIS": "\/tennis\/", + "TRANS_URL_CONTACT": "\/contact\/", + "TRANS_URL_FAQ": "\/faq\/", + "TRANS_USER_ACTIVATION_SUCCESSFUL": "Your account was activated successfully. Now you can log in.", + "TRANS_USER_CAPTCHA_TYPE_TEXT_AGAIN": "Type two words from the picture again, please.", + "TRANS_USER_CHANGE_PASSWORD": "Change password", + "TRANS_USER_CHANGE_PASSWORD_SUCCESSFUL": "Your password was changed successfully.", + "TRANS_USER_DELETE_ACCOUNT": "Account deletion", + "TRANS_USER_DIALOG_DELETE_ACCOUNT_SUCCESSFUL": "The account has been successfully deleted.", + "TRANS_USER_ERROR_ACCOUNT_NOT_VERIFIED": "Your account has not been verified.
    You need to verify your account by following instructions in message that we sent to your e-mail address.", + "TRANS_USER_ERROR_CAPTCHA_NOT_SAME": "Text from the picture was not entered correctly.", + "TRANS_USER_ERROR_EMAIL_NOT_VALID": "E-mail should be in valid form (e.g. name@example.com)", + "TRANS_USER_ERROR_EMAIL_USED": "Your chosen e-mail address is already registered by other user.", + "TRANS_USER_ERROR_I_AGREE_WITH_TERMS": "You must confirm your consent to terms of use.", + "TRANS_USER_ERROR_LOGIN_FAILED": "This username or password does not exist.", + "TRANS_USER_ERROR_PASSWORD_INVALID": "You entered an invalid password.", + "TRANS_USER_ERROR_PASSWORD_MIN_5_CHARACTERS": "Password must be at least 5 characters long.", + "TRANS_USER_ERROR_PASSWORDS_NOT_SAME": "Password and its verification do not match.", + "TRANS_USER_ERROR_VERIFICATION_CODE_INVALID": "Your activation code is not valid.", + "TRANS_USER_FORGOTTEN_PASSWORD_ERROR_NOT_VALID_VERIFICATION_CODE": "Activation code for changing the password is not valid. The password cannot be changed.", + "TRANS_USER_FORGOTTEN_PASSWORD_SEND_INSTRUCTIONS_SUCCESSFUL": "Instructions regarding change of the password were sent to your e-mail address.", + "TRANS_USER_LOGGED_IN": "Logged in", + "TRANS_USER_LOGIN": "Login", + "TRANS_USER_LOGIN_FACEBOOK": "Connect with Facebook", + "TRANS_USER_LOGIN_SUCCESSFUL": "You have logged in successfully.", + "TRANS_USER_LOGOUT": "Logout", + "TRANS_USER_LOGOUT_CONFIRMATION": "Are you sure you want to log out?", + "TRANS_USER_LOGOUT_SUCCESSFUL": "You were logged out successfully.", + "TRANS_USER_REGISTRATION": "Registration", + "TRANS_USER_REGISTRATION_SUCCESSFUL": "You have registered successfully.", + "TRANS_USER_REGISTRATION_SUCCESSFUL_ADDITIONAL_TEXT": "ATTENTION: We have sent you an activation e-mail! Please check your mailbox and click the activation link included in the message.

    If you don't receive our activation e-mail within 20 minutes, you might find our message in the SPAM folder of your mailbox.

    If you fail to find our e-mail anyway, please contact us at [user_support_email].", + "TRANS_USER_SERVER_ERROR": "We are sorry, the requested action cannot be completed due to technical reasons. Please try again later.", + "TRANS_USER_SERVER_LOGOUT": "You were logged out for security reasons. You must log in to complete the action.", + "TRANS_USER_SETTINGS": "Settings", + "TRANS_USER_USER": "User", + "TRANS_USER_DIALOG_REGISTRATION_NOT_ROBOT_CONFIRMATION": "Please confirm you are not a robot.", + "TRANS_USER_DIALOG_REGISTRATION_ALMOST_DONE": "Registration almost done", + "TRANS_USER_DIALOG_REGISTRATION_EMAIL_SENT_TO": "We've just sent you an email to %s.", + "TRANS_USER_DIALOG_REGISTRATION_CONFIRMATION_INFO": "Please check your mailbox and confirm your registration.", + "TRANS_USER_DIALOG_NEW_TERMS_OF_USE_SUCCESSFUL": "Thank you for your agreement with our terms of use.", + "TRANS_WINNER": "Winner", + "TRANS_WINNER_TOOLTIP": "Advancing to next round", + "TRANS_SHOW_MATCH_STATISTICS": "Show match statistics", + "TRANS_SHOW_MORE": "Show more", + "TRANS_SHOW_MORE_MATCHES": "Show more matches", + "TRANS_TOURNAMENT_PAGE_SHOW_MORE_MATCHES": "Show more matches", + "TRANS_SOCCER_MATCH_SCORER_TYPE_PEN": "Penalty", + "TRANS_SOCCER_MATCH_SCORER_TYPE_PEN_MISS": "Penalty missed", + "TRANS_HOCKEY_MATCH_SCORER_TYPE_PEN": "Penalty", + "TRANS_HOCKEY_MATCH_SCORER_TYPE_PEN_MISSED": "Penalty missed", + "TRANS_MY_GAMES_CANNOT_REMOVE": "You can add either the whole event or selected participants to My Games. If the whole event is added to My Games, you cannot remove any participants.", + "TRANS_GOLF_NODUEL_SCHEDULED_INFO": "This list is for informational purposes only. Field is subject to change.", + "TRANS_ANDROID_APPLICATION": "Android application", + "TRANS_SMART_BANNER_FREE": "FREE", + "TRANS_SMART_BANNER_DOWNLOAD_BUTTON": "DOWNLOAD HERE", + "TRANS_SMART_BANNER_ANDROID_APPLICATION": "", + "TRANS_NEW_FEATURE": "NEW", + "TRANS_GOLF_HOLES_PLAYED": "Holes played: %s", + "TRANS_GOLF_TODAY": "Today", + "TRANS_ODDS_COMPARISON_WINNER": "Winner", + "TRANS_ODDS_COMPARISON_WINNER_SHORT": "Winner", + "TRANS_ODDS_COMPARISON_TOP_3": "Top 3", + "TRANS_ODDS_COMPARISON_TOP_3_SHORT": "Top 3", + "TRANS_ODDS_COMPARISON_TOP_5": "Top 5", + "TRANS_ODDS_COMPARISON_TOP_5_SHORT": "Top 5", + "TRANS_ODDS_COMPARISON_TOP_6": "Top 6", + "TRANS_ODDS_COMPARISON_TOP_6_SHORT": "Top 6", + "TRANS_ODDS_COMPARISON_TOP_10": "Top 10", + "TRANS_ODDS_COMPARISON_TOP_10_SHORT": "Top 10", + "TRANS_ODDS_COMPARISON_TOP_20": "Top 20", + "TRANS_ODDS_COMPARISON_TOP_20_SHORT": "Top 20", + "TRANS_ODDS_COMPARISON_EACH_WAY": "Each Way", + "TRANS_ODDS_COMPARISON_EACH_WAY_SHORT": "Each Way", + "TRANS_OTHER": "Other", + "TRANS_HOLE_RESULT_DOUBLE_EAGLE": "Double-Eagle", + "TRANS_HOLE_RESULT_EAGLE": "Eagle", + "TRANS_HOLE_RESULT_BIRDIE": "Birdie", + "TRANS_HOLE_RESULT_PAR": "Par", + "TRANS_HOLE_RESULT_BOGEY": "Bogey", + "TRANS_HOLE_RESULT_DOUBLE_BOGEY": "Double-Bogey", + "TRANS_HOLE_RESULT_TRIPLE_PLUS_BOGEY": "3+ Bogey", + "TRANS_GOLF_RESULT_BETTER_SCORE": "Better score on the hole", + "TRANS_GOLF_INFO_PRIZE_MONEY": "Prize money", + "TRANS_GOLF_INFO_PAR": "Par", + "TRANS_GOLF_INFO_DATE": "Dates", + "TRANS_TOURNAMENT_PAGE_PLAYER_RESULTS": "Results", + "TRANS_LIVE_STREAMING": "Live Streaming", + "TRANS_LIVE_STREAMING_BET365_TEXT": "GEO restrictions apply. Funded account required or to have placed a bet in the last 24 hours. GamblingTherapy.org. 18+", + "TRANS_TV_CHANNEL": "TV channel", + "TRANS_MATCH_ROUND": "Round %d", + "TRANS_DRAW": "Draw", + "TRANS_WIN": "Win", + "TRANS_LOST": "Loss", + "TRANS_NOTIFICATION_MESSAGE_GOAL": "Goal!", + "TRANS_NOTIFICATION_MESSAGE_MATCH_FINISHED": "Finished.", + "TRANS_LOADING": "Loading...", + "TRANS_CYCLING_KM": "km", + "TRANS_NAME": "Name", + "TRANS_CYCLING_RANK": "Rank", + "TRANS_CYCLING_TEAM": "Team", + "TRANS_CYCLING_SHORT_TEAM": "Team", + "TRANS_CYCLING_LAPS": "Laps", + "TRANS_CYCLING_SHORT_LAPS": "Laps", + "TRANS_CYCLING_TIME": "Time", + "TRANS_CYCLING_SHORT_TIME": "Time", + "TRANS_CYCLING_GAP": "Gap", + "TRANS_CYCLING_SHORT_GAP": "Gap", + "TRANS_CYCLING_GENERAL_LEADER": "General leader", + "TRANS_CYCLING_POINTS_LEADER": "Points leader", + "TRANS_CYCLING_MOUNTAINS_LEADER": "Mountains leader", + "TRANS_CYCLING_YOUTH_LEADER": "Youth leader", + "TRANS_CYCLING_LAST_IN_RACE": "Last in race", + "TRANS_CYCLING_CURRENT_WORLD_CHAMPION": "Current world champion", + "TRANS_HORSE_RACING_HORSE": "Horse", + "TRANS_HORSE_RACING_JOCKEY": "Jockey", + "TRANS_HORSE_RACING_TRAINER": "Trainer", + "TRANS_HORSE_RACING_AGE": "Age", + "TRANS_HORSE_RACING_AGE_OF_HORSE": "Age of horse", + "TRANS_HORSE_RACING_WEIGHT": "Weight", + "TRANS_HORSE_RACING_WEIGHT_CARRYING_IN_STONES_AND_LBS": "Weight carrying in stones and lbs", + "TRANS_HORSE_RACING_DIST": "Dist.", + "TRANS_HORSE_RACING_DISTANCE_BEHIND_HORSE_AHEAD": "Distance behind horse ahead", + "TRANS_HORSE_RACING_SP": "SP", + "TRANS_HORSE_RACING_STARTING_PRICE": "Starting price", + "TRANS_HORSE_RACING_NR": "NR", + "TRANS_HORSE_RACING_NON_RUNNER": "Non-runner", + "TRANS_HORSE_RACING_CLASS": "Class", + "TRANS_HORSE_RACING_WINNER": "Winner", + "TRANS_HORSE_RACING_GOING": "Going", + "TRANS_HORSE_RACING_MILES": "Miles", + "TRANS_HORSE_RACING_FURLONGS": "Furlongs", + "TRANS_HORSE_RACING_YARDS": "Yards", + "TRANS_HORSE_RACING_BOOKMARK_ALL": "All Races", + "TRANS_HORSE_RACING_BOOKMARK_LIVE": "LIVE", + "TRANS_HORSE_RACING_BOOKMARK_FIN": "Finished", + "TRANS_HORSE_RACING_BOOKMARK_SCHED": "Scheduled", + "TRANS_RANK": "Rank", + "TRANS_RANKINGS": "Rankings", + "TRANS_RANKINGS_COLUMN_NAME": "Name", + "TRANS_RANKINGS_COLUMN_NATIONALITY": "Nationality", + "TRANS_RANKINGS_COLUMN_AVG": "Average", + "TRANS_RANKINGS_COLUMN_POINTS": "Points", + "TRANS_RANKINGS_COLUMN_TOTAL_POINTS": "Total points", + "TRANS_RANKINGS_COLUMN_SHORT_TOTAL_POINTS": "Total pts.", + "TRANS_RANKINGS_COLUMN_POINTS_NEXT_ROUND": "Next points", + "TRANS_RANKINGS_COLUMN_SHORT_POINTS_NEXT_ROUND": "Next pts.", + "TRANS_RANKINGS_COLUMN_POINTS_WINNER": "Maximum points", + "TRANS_RANKINGS_COLUMN_SHORT_POINTS_WINNER": "Max pts.", + "TRANS_RANKINGS_COLUMN_CURRENT_TOURNAMENT_NAME": "Current tournament", + "TRANS_RANKINGS_COLUMN_TOURNAMENTS": "Tournaments", + "TRANS_RANKINGS_COLUMN_PRICE_MONEY": "Money", + "TRANS_RANKINGS_NAME_SEARCH": "Search", + "TRANS_RANKINGS_NATIONALITY_SEARCH": "nationality", + "TRANS_RANKINGS_LIVE_SEARCH": "Live rankings", + "TRANS_MOTORSPORT_RANKINGS_TEAM": "team", + "TRANS_WINTER_SPORTS_SKI_JUMPING_JUMP_LENGTH_1": "Jump 1", + "TRANS_WINTER_SPORTS_SKI_JUMPING_JUMP_LENGTH_2": "Jump 2", + "TRANS_WINTER_SPORTS_SKI_JUMPING_POINTS_1": "Points 1", + "TRANS_WINTER_SPORTS_SKI_JUMPING_POINTS_2": "Points 2", + "TRANS_WINTER_SPORTS_SKI_JUMPING_POINTS_TOTAL": "Total", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_RUN_1": "Round 1", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_RUN_2": "Round 2", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_TOTAL": "Total", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_DIFF": "Diff.", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_DIFFERENCE": "Difference", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_TIME": "Time", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_DIFF": "Diff.", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_DIFFERENCE": "Difference", + "TRANS_WINTER_SPORTS_BIATHLON_SHOOTING": "Shooting", + "TRANS_WINTER_SPORTS_BIATHLON_DIFF": "Diff.", + "TRANS_WINTER_SPORTS_BIATHLON_DIFFERENCE": "Difference", + "TRANS_WINTER_SPORTS_BIATHLON_TIME": "Time", + "TRANS_WINTER_SPORTS_BOOKMARK_ALL": "All Races", + "TRANS_WINTER_SPORTS_BOOKMARK_LIVE": "LIVE", + "TRANS_WINTER_SPORTS_BOOKMARK_FIN": "Finished", + "TRANS_WINTER_SPORTS_BOOKMARK_SCHED": "Scheduled", + "TRANS_WINTER_SPORTS_SKI_JUMPING_BOOKMARK_ALL": "All Races", + "TRANS_WINTER_SPORTS_SKI_JUMPING_BOOKMARK_LIVE": "LIVE", + "TRANS_WINTER_SPORTS_SKI_JUMPING_BOOKMARK_FIN": "Finished", + "TRANS_WINTER_SPORTS_SKI_JUMPING_BOOKMARK_SCHED": "Scheduled", + "TRANS_WINTER_SPORTS_SKI_JUMPING_HILL_SIZE": "HS", + "TRANS_WINTER_SPORTS_SKI_JUMPING_JUMP_COUNT": "Jumps", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_BOOKMARK_ALL": "All Races", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_BOOKMARK_LIVE": "LIVE", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_BOOKMARK_FIN": "Finished", + "TRANS_WINTER_SPORTS_ALPINE_SKIING_BOOKMARK_SCHED": "Scheduled", + "TRANS_WINTER_SPORTS_BIATHLON_BOOKMARK_ALL": "All Races", + "TRANS_WINTER_SPORTS_BIATHLON_BOOKMARK_LIVE": "LIVE", + "TRANS_WINTER_SPORTS_BIATHLON_BOOKMARK_FIN": "Finished", + "TRANS_WINTER_SPORTS_BIATHLON_BOOKMARK_SCHED": "Scheduled", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_BOOKMARK_ALL": "All Races", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_BOOKMARK_LIVE": "LIVE", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_BOOKMARK_FIN": "Finished", + "TRANS_WINTER_SPORTS_CROSS_COUNTRY_BOOKMARK_SCHED": "Scheduled", + "TRANS_WINTER_SPORTS_KM": "km", + "TRANS_WINTER_SPORTS_LAP_SHORT": "l.", + "TRANS_WINTER_SPORTS_DISTANCE": "Distance", + "TRANS_PLAYER_CAREER_SHOW_DETAILS": "Show details", + "TRANS_PLAYER_CAREER_HIDE_DETAILS": "Hide details", + "TRANS_MOTORSPORT_MOTO_RACING_RIDES": "Rides", + "TRANS_MOTORSPORT_MOTO_RACING_WINS": "Wins", + "TRANS_MOTORSPORT_MOTO_RACING_POINTS": "Points", + "TRANS_CRICKET_MATCH_STATUS_IFRAME_3CHARINN": "%s Innings", + "TRANS_CRICKET_MATCH_STATUS_3CHARINN": "%s Innings", + "TRANS_GAMBLE_RESPONSIBLY_FOOTER": "Gamble Responsibly.
    Gambling Therapy<\/a>. 18+", + "TRANS_LIVE_COMMENTARY_PREMATCH": "Prematch", + "TRANS_MATCH_PREVIEW_SHOW_MORE": "Show full preview", + "TRANS_MATCH_PREVIEW_TITLE": "Click to see match preview!", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_MATCH_HISTORY_TENNIS": "point-by-point", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_H2H": "h2h", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_LIVE_COMMENTARY": "live-commentary", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_LIVE_TABLE": "live-table", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_STANDINGS": "standings", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_STANDINGS_DRAW": "draw", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_PLAYER_STATISTICS": "player-statistics", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_FALL_OF_WICKETS": "fall-of-wickets", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_OVERS": "ball-by-ball", + "TRANS_DETAIL_BOOKMARK_BONUS_OFFERS": "Bonus offers", + "TRANS_DETAIL_BOOKMARK_NEWS_FEED": "News", + "TRANS_DETAIL_BOOKMARK_URL_IDENT_NEWS_FEED": "news", + "TRANS_COLLAPSE_LEAGUE_IFRAME": "Hide all matches of this league!", + "TRANS_EXPAND_LEAGUE_IFRAME": "Display all matches of this league!", + "TRANS_EXPAND_LEAGUE_LINK_IFRAME": "display matches", + "TRANS_NEWSFEED_CATEGORY_REACTION": "Reaction", + "TRANS_NEWSFEED_CATEGORY_REPORT": "Report", + "TRANS_NEWSFEED_CATEGORY_PREMATCH": "Pre-Match", + "TRANS_MY_TEAMS_LABEL": "My Teams", + "TRANS_MY_TEAMS_NO_MATCH_SCHEDULED": "%s_team has no match scheduled for the next %s_days days.", + "TRANS_TEAM_TRANSFERS": "Transfers", + "TRANS_TEAM_TRANSFERS_ALL": "All", + "TRANS_TEAM_TRANSFERS_IN": "Arrivals", + "TRANS_TEAM_TRANSFERS_OUT": "Departures", + "TRANS_PLAYER_CAREER_DATE": "Date", + "TRANS_PLAYER_CAREER_FROM": "From", + "TRANS_PLAYER_CAREER_TO": "To", + "TRANS_PLAYER_CAREER_TYPE": "Type", + "TRANS_PLAYER_PROFILE_NO_DATA": "The requested data is not available. We will keep adding the historical data to our database. ", + "TRANS_TENNIS_SINGLES": "Singles", + "TRANS_TENNIS_DOUBLES": "Doubles", + "TRANS_TENNIS_MIXED_DOUBLES": "Mixed Doubles", + "TRANS_BOOKMARK_LATEST_TOURNAMENTS": "Previous Tournaments", + "TRANS_BOOKMARK_SCHED_TOURNAMENTS": "Upcoming Tournaments", + "TRANS_URL_IDENT_TOURNAMENT_TRANSFERS": "transfers", + "TRANS_NEWSFEED_NO_NEWS": "No news found.", + "TRANS_SPORT_SOCCER": "Football", + "TRANS_SPORT_TENNIS": "Tennis", + "TRANS_SPORT_BASKETBALL": "Basketball", + "TRANS_SPORT_HOCKEY": "Hockey", + "TRANS_SPORT_AMERICAN_FOOTBALL": "American football", + "TRANS_SPORT_BASEBALL": "Baseball", + "TRANS_SPORT_MOTORSPORT": "Motorsport", + "TRANS_SPORT_HANDBALL": "Handball", + "TRANS_SPORT_RUGBY_UNION": "Rugby Union", + "TRANS_SPORT_FLOORBALL": "Floorball", + "TRANS_SPORT_BANDY": "Bandy", + "TRANS_SPORT_FUTSAL": "Futsal", + "TRANS_SPORT_AUSSIE_RULES": "Aussie rules", + "TRANS_SPORT_VOLLEYBALL": "Volleyball", + "TRANS_SPORT_RUGBY_LEAGUE": "Rugby League", + "TRANS_SPORT_CRICKET": "Cricket", + "TRANS_SPORT_DARTS": "Darts", + "TRANS_SPORT_SNOOKER": "Snooker", + "TRANS_SPORT_BOXING": "Boxing", + "TRANS_SPORT_BEACH_VOLLEYBALL": "Beach volleyball", + "TRANS_SPORT_BADMINTON": "Badminton", + "TRANS_SPORT_WATER_POLO": "Water polo", + "TRANS_SPORT_GOLF": "Golf", + "TRANS_SPORT_FIELD_HOCKEY": "Field hockey", + "TRANS_SPORT_TABLE_TENNIS": "Table tennis", + "TRANS_SPORT_BEACH_SOCCER": "Beach soccer", + "TRANS_SPORT_MMA": "MMA", + "TRANS_SPORT_NETBALL": "Netball", + "TRANS_SPORT_PESAPALLO": "Pes\u00e4pallo", + "TRANS_SPORT_ESPORTS": "eSports", + "TRANS_SPORT_HORSE_RACING": "Horse racing", + "TRANS_SPORT_WINTER_SPORTS": "Winter Sports", + "TRANS_SPORT_CYCLING": "Cycling", + "TRANS_SPORT_KABADDI": "Kabaddi", + "TRANS_NOTIFICATION_SETTINGS_NOTIFICATION_SETTINGS": "Notifications settings", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_FINAL_RESULT": "Final result", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_MATCH_START": "Match start", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START": "Reminder before start", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START_5_MINS": "Reminder before start (5 mins)", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START_15_MINS": "Reminder before start (15 mins)", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START_30_MINS": "Reminder before start (30 mins)", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START_1_HOUR": "Reminder before start (1 hour)", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_BEFORE_START_3_HOURS": "Reminder before start (3 hours)", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_5_MINS": "5 mins", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_15_MINS": "15 mins", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_30_MINS": "30 mins", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_1_HOUR": "1 hour", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_REMINDER_3_HOURS": "3 hours", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_HALF_TIME_SCORE": "Half-time score", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_END_OF_PERIOD": "End of period", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_END_OF_QUARTER": "End of quarter", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_END_OF_SET": "End of set", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_END_OF_DAY": "End of day", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_START_OF_2ND_HALF": "Start of 2nd half", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_START_OF_PERIOD": "Start of period", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_START_OF_3RD_QUARTER": "Start of 3rd quarter", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_GOAL": "Goal", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_GOAL_SCORER": "Goalscorer", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_RED_CARD": "Red card", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_YELLOW_CARD": "Yellow card", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_SUBSTITUTION": "Substitution", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_LINEUPS": "Lineups", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_SCORE_CHANGE": "Score change", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_WICKET": "Wicket", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_HIGHLIGHT": "Video", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_RACE_START": "Race start", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_RACE_END": "Race end", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_TOURNAMENT_START": "Tournament start", + "TRANS_NOTIFICATION_DETAILED_SETTINGS_TOURNAMENT_END": "Tournament end", + "TRANS_NOTIFICATION_FAVOURITE_SPORTS": "-", + "TRANS_NOTIFICATIONS_ARE_ON": "Notifications are enabled", + "TRANS_NOTIFICATIONS_ARE_OFF": "Notifications are switched off", + "TRANS_NOTIFICATION_TURN_ON_ALL_NOTIFICATIONS": "Enable all notifications", + "TRANS_NOTIFICATIONS_PROMPT": "If you want to know about all the important moments, enable them.", + "TRANS_NOTIFICATIONS_SET": "Set", + "TRANS_NOTIFICATIONS_BLOCKED_BY_BROWSER": "Notifications are blocked by the browser", + "TRANS_NOTIFICATIONS_BLOCKED_PROMPT": "With its current settings, we cannot send you notifications.", + "TRANS_MOD_REWRITE_MATCH_DETAIL": "match", + "TRANS_BOOKMAKER": "Bookmaker", + "TRANS_CLICK_TO_AUDIO_COMMENTS": "Audio commentary is available for this match", + "TRANS_AUDIO_START": "Start audio commentary", + "TRANS_AUDIO_PAUSE": "Stop audio commentary", + "TRANS_AUDIO_BEFORE_START": "Audio commentary starts at %s", + "TRANS_GAMBLE_RESPONSIBLY_DETAIL": "Gamble Responsibly. Gambling Therapy<\/a>. 18+", + "TRANS_DETAIL_TITLE_SHOW_PROFILE": "Show profile", + "TRANS_LSTV_BUY_DIALOG_SUB_TITLE": "TRANS_LSTV_BUY_DIALOG_SUB_TITLE", + "TRANS_LSTV_BUY_DIALOG_FEATURE1": "TRANS_LSTV_BUY_DIALOG_FEATURE1", + "TRANS_LSTV_BUY_DIALOG_FEATURE2": "TRANS_LSTV_BUY_DIALOG_FEATURE2", + "TRANS_LSTV_BUY_DIALOG_FEATURE3": "TRANS_LSTV_BUY_DIALOG_FEATURE3", + "TRANS_LSTV_BUY_DIALOG_REMEMBER_CARD": "TRANS_LSTV_BUY_DIALOG_REMEMBER_CARD", + "TRANS_LSTV_BUY_BUTTON_SCHEDULED": "TRANS_LSTV_BUY_BUTTON_SCHEDULED", + "TRANS_LSTV_BUY_BUTTON_LIVE_FORMAT_WITH_CHANNEL": "TRANS_LSTV_BUY_BUTTON_LIVE_FORMAT_WITH_CHANNEL", + "TRANS_LSTV_PAYMENT_CONFIRMATION_TITLE": "TRANS_LSTV_PAYMENT_CONFIRMATION_TITLE", + "TRANS_LSTV_PAYMENT_CONFIRMATION_BUTTON": "TRANS_LSTV_PAYMENT_CONFIRMATION_BUTTON", + "TRANS_LSTV_PAYMENT_CONFIRMATION_MSG": "TRANS_LSTV_PAYMENT_CONFIRMATION_MSG", + "TRANS_LSTV_PAYMENT_FAILED_TITLE": "TRANS_LSTV_PAYMENT_FAILED_TITLE", + "TRANS_LSTV_PAYMENT_FAILED_TEXT": "TRANS_LSTV_PAYMENT_FAILED_TEXT", + "TRANS_LSTV_PAYMENT_TRY_AGAIN": "TRANS_LSTV_PAYMENT_TRY_AGAIN", + "TRANS_LSTV_BUY_DIALOG_CHANNEL_PROVIDER_MSG_FORMAT": "TRANS_LSTV_BUY_DIALOG_CHANNEL_PROVIDER_MSG_FORMAT", + "TRANS_LSTV_BUY_DIALOG_CHANNEL_PROVIDER_MSG_FORMAT_FREE": "TRANS_LSTV_BUY_DIALOG_CHANNEL_PROVIDER_MSG_FORMAT_FREE", + "TRANS_LSTV_BUY_DIALOG_BUY_BUTTON": "TRANS_LSTV_BUY_DIALOG_BUY_BUTTON", + "TRANS_LSTV_BUY_DIALOG_BUY_BUTTON_FREE": "TRANS_LSTV_BUY_DIALOG_BUY_BUTTON_FREE", + "TRANS_LSTV_BUY_DIALOG_ACCEPT_TERMS_FREE_WITH_LOGIN": "TRANS_LSTV_BUY_DIALOG_ACCEPT_TERMS_FREE_WITH_LOGIN", + "TRANS_USER_LOGIN_BLOCK_FORGOTTEN_PASSWORD_TEXT": "Did you forget your password?", + "TRANS_USER_DIALOG_LOGIN_LOG_IN": "Log In", + "TRANS_USER_DIALOG_REGISTRATION_SIGN_UP": "Sign Up", + "TRANS_USER_EMAIL": "E-mail", + "TRANS_LSTV_LOGIN_PURPOSE": "TRANS_LSTV_LOGIN_PURPOSE", + "TRANS_USER_DIALOG_RESET_PASSWORD_HEADER": "Reset Password", + "TRANS_USER_DIALOG_RESET_PASSWORD_TEXT": "Don't worry. Just enter your email address below and we'll send you some instructions.", + "TRANS_USER_BUTTON_SEND": "Send", + "TRANS_LSTV_REDIRECT_TO_PAYMENT_GATEWAY": "TRANS_LSTV_REDIRECT_TO_PAYMENT_GATEWAY", + "TRANS_USER_PASSWORD": "Password", + "TRANS_USER_EMAIL_REGISTRATION_CONFIRM": "Confirm", + "TRANS_LSTV_BUY_DIALOG_TITLE": "TRANS_LSTV_BUY_DIALOG_TITLE", + "TRANS_LSTV_GO_TO_PAYMENT": "TRANS_LSTV_GO_TO_PAYMENT", + "TRANS_LSTV_FILL_EMAIL_TITLE": "TRANS_LSTV_FILL_EMAIL_TITLE", + "TRANS_LSTV_FILL_EMAIL_MSG": "TRANS_LSTV_FILL_EMAIL_MSG", + "TRANS_TV_USERS_OVERVIEW_CHANNELS_TITLE": "TRANS_TV_USERS_OVERVIEW_CHANNELS_TITLE", + "TRANS_TV_USERS_OVERVIEW_CHANNELS_EMPTY_DATA": "TRANS_TV_USERS_OVERVIEW_CHANNELS_EMPTY_DATA", + "TRANS_TV_USERS_OVERVIEW_CHANNEL_WATCH_FREE": "TRANS_TV_USERS_OVERVIEW_CHANNEL_WATCH_FREE", + "TRANS_TV_USERS_OVERVIEW_CHANNEL_PAID": "TRANS_TV_USERS_OVERVIEW_CHANNEL_PAID", + "TRANS_TV_USERS_OVERVIEW_CHANNEL_PLAY": "TRANS_TV_USERS_OVERVIEW_CHANNEL_PLAY", + "TRANS_TV_USERS_OVERVIEW_PAYMENT_METHOD_TITLE": "TRANS_TV_USERS_OVERVIEW_PAYMENT_METHOD_TITLE", + "TRANS_TV_USERS_OVERVIEW_PAYMENT_SAVED_CARD": "TRANS_TV_USERS_OVERVIEW_PAYMENT_SAVED_CARD", + "TRANS_TV_USERS_OVERVIEW_PAYMENT_EXPIRATION": "TRANS_TV_USERS_OVERVIEW_PAYMENT_EXPIRATION", + "TRANS_TV_USERS_OVERVIEW_PAYMENT_REMOVE_CARD": "TRANS_TV_USERS_OVERVIEW_PAYMENT_REMOVE_CARD", + "TRANS_TV_USERS_OVERVIEW_PURCHASE_HISTORY_TITLE": "TRANS_TV_USERS_OVERVIEW_PURCHASE_HISTORY_TITLE", + "TRANS_TV_USERS_OVERVIEW_NOTE_TEXT": "TRANS_TV_USERS_OVERVIEW_NOTE_TEXT", + "TRANS_TV_USERS_OVERVIEW_TITLE": "TRANS_TV_USERS_OVERVIEW_TITLE", + "TRANS_TV_USERS_OVERVIEW_PURCHASE_HISTORY_EMPTY_DATA": "TRANS_TV_USERS_OVERVIEW_PURCHASE_HISTORY_EMPTY_DATA", + "TRANS_LSTV_WATCH_BROADCAST": "TRANS_LSTV_WATCH_BROADCAST", + "TRANS_CURRENT_GAME": "Current game", + "TRANS_RANKINGS_SHOW_FULL_RANKINGS": "Show full rankings", + "TRANS_TEAM_NEWS": "News", + "TRANS_TEAM_LATEST_NEWS": "The latest news", + "TRANS_TEAM_MORE_NEWS": "View more news", + "TRANS_TV_STREAM_NOT_STARTED_INFO": "TRANS_TV_STREAM_NOT_STARTED_INFO", + "TRANS_TV_STREAM_NOT_STARTED_INFO_WITHOUT_PLAY_BUTTON": "TRANS_TV_STREAM_NOT_STARTED_INFO_WITHOUT_PLAY_BUTTON", + "TRANS_TV_PLAY_LIVE_STREAM": "TRANS_TV_PLAY_LIVE_STREAM", + "TRANS_LSTV_STREAM_SECTION": "TRANS_LSTV_STREAM_SECTION", + "TRANS_LSTV_QUALITY_AUTO": "TRANS_LSTV_QUALITY_AUTO", + "TRANS_LSTV_PICTURE_IN_PICTURE": "TRANS_LSTV_PICTURE_IN_PICTURE", + "TRANS_LSTV_QUALITY": "TRANS_LSTV_QUALITY", + "TRANS_LSTV_AIRPLAY": "TRANS_LSTV_AIRPLAY", + "TRANS_LSTV_VIDEO_QUALITY": "TRANS_LSTV_VIDEO_QUALITY", + "TRANS_LSTV_END_OF_STREAM_INFO": "TRANS_LSTV_END_OF_STREAM_INFO", + "TRANS_LSTV_END_OF_STREAM_INFO_RECORD": "TRANS_LSTV_END_OF_STREAM_INFO_RECORD", + "TRANS_LSTV_PLAY_RECORD": "TRANS_LSTV_PLAY_RECORD", + "TRANS_LSTV_CONTINUE_PLAYING": "TRANS_LSTV_CONTINUE_PLAYING", + "TRANS_LSTV_LIVE": "TRANS_LSTV_LIVE", + "TRANS_LSTV_ERROR_MSG_RETRY_AGAIN": "TRANS_LSTV_ERROR_MSG_RETRY_AGAIN", + "TRANS_LSTV_ERROR_MSG_CONNECTION_ERROR": "TRANS_LSTV_ERROR_MSG_CONNECTION_ERROR", + "TRANS_LSTV_SETTINGS": "TRANS_LSTV_SETTINGS", + "TRANS_LSTV_MUTE": "TRANS_LSTV_MUTE", + "TRANS_LSTV_FULLSCREEN": "TRANS_LSTV_FULLSCREEN", + "TRANS_LSTV_EXIT_FULLSCREEN": "TRANS_LSTV_EXIT_FULLSCREEN", + "TRANS_LSTV_PLAY_PAUSE": "TRANS_LSTV_PLAY_PAUSE", + "TRANS_LSTV_FORWARD": "TRANS_LSTV_FORWARD", + "TRANS_LSTV_BACK": "TRANS_LSTV_BACK", + "TRANS_LSTV_BUY_DIALOG_NOTE": "TRANS_LSTV_BUY_DIALOG_NOTE", + "TRANS_LSTV_DELETE_CARD_DESC": "TRANS_LSTV_DELETE_CARD_DESC", + "TRANS_STANDINGS_LIVE_POSITION_CHANGE": "Position change", + "TRANS_STAGE_PREVIOUS": "Previous stage", + "TRANS_STAGE_NEXT": "Next stage", + "TRANS_DETAIL_TITLE_KEY_MOMENTS": "Key moments", + "TRANS_MISSING_PLAYERS": "Missing Players", + "TRANS_LAST_MATCHES": "Last Matches", + "TRANS_LAST_MATCHES_MINUTES_PLAYED": "Minutes Played", + "TRANS_PLAYER_CAREER_GOALS_SCORED": "Goals Scored", + "TRANS_PLAYER_CAREER_YELLOW_CARDS": "Yellow Cards", + "TRANS_PLAYER_CAREER_RED_CARDS": "Red Cards", + "TRANS_USER_GDPR_CONSENT_DIALOG_SET_PRIVACY": "Set privacy", + "TRANS_LSTV_PAYMENT_BACK_TO_OVERVIEW": "TRANS_LSTV_PAYMENT_BACK_TO_OVERVIEW", + "TRANS_LSTV_PAYMENT_BACK_TO_LSTV_SECTION": "TRANS_LSTV_PAYMENT_BACK_TO_LSTV_SECTION", + "TRANS_TV_USERS_OVERVIEW_BOUGHT_ALL_BUNDLES": "TRANS_TV_USERS_OVERVIEW_BOUGHT_ALL_BUNDLES", + "TRANS_TV_USERS_OVERVIEW_BUNDLES_TITLE": "TRANS_TV_USERS_OVERVIEW_BUNDLES_TITLE", + "TRANS_TV_USERS_OVERVIEW_BUNDLE_BUY": "TRANS_TV_USERS_OVERVIEW_BUNDLE_BUY", + "TRANS_TV_USERS_OVERVIEW_BUNDLE_PRICE_PER_PERIOD": "TRANS_TV_USERS_OVERVIEW_BUNDLE_PRICE_PER_PERIOD", + "TRANS_SHOW": "Zobrazit", + "TRANS_ADDED_TO_MYFS": "P\u0159id\u00e1no do sekce MOJE", + "TRANS_REMOVED_FROM_MYFS": "Odebr\u00e1no ze sekce MOJE", + "TRANS_URL_MYFS": "\/my\/", + "TRANS_AUDIO_LOGIN_PURPOSE": "Login or register to listen to the broadcast", + "TRANS_DETAIL_MATCH_TIME": "Match time" + }, + "eventStageTranslations": { + "1": " ", + "45": "To finish", + "42": "Awaiting updates", + "2": "Live", + "12": "1st Half", + "38": "Half Time", + "13": "2nd Half", + "6": "Extra Time", + "7": "Penalties", + "46": "Break Time", + "3": "Finished", + "10": "After Extra Time", + "11": "After Penalties", + "9": "Walkover", + "43": "Delayed", + "36": "Interrupted", + "4": "Postponed", + "5": "Cancelled", + "37": "Abandoned", + "54": "Awarded" + }, + "config": { + "css_serial": "1548000000", + "js_serial": "1868000000", + "js_framework_serial": 39, + "app": { + "lang": { + "charset": "en_US", + "web": "en", + "dc": 1 + }, + "lang_combo": { + "js_redirect": false, + "project_list": { + "--": 2, + "pl": 800, + "hu": 801, + "ru": 802, + "de": 803, + "el": 804, + "tr": 805, + "fr": 806 + } + }, + "layout": "standard", + "noduel_events": { + "mygames": 10, + "main": { + "default": 40, + "golf": 30, + "motorsport-auto-racing": 40, + "motorsport-moto-racing": 40, + "cycling": 10, + "winter-sports-ski-jumping": 10, + "winter-sports-alpine-skiing": 10, + "winter-sports-cross-country": 10, + "winter-sports-biathlon": 10 + }, + "tournament_page": { + "winter-sports-ski-jumping": 1000, + "winter-sports-alpine-skiing": 1000, + "winter-sports-cross-country": 1000, + "winter-sports-biathlon": 1000 + }, + "participant_page": { + "meetings": { + "winter-sports-ski-jumping": 5, + "winter-sports-alpine-skiing": 5, + "winter-sports-cross-country": 5, + "winter-sports-biathlon": 5 + }, + "events": { + "motorsport-auto-racing": 10, + "motorsport-moto-racing": 10, + "cycling": 10 + } + }, + "categories": { + "6576": 10, + "7771": 10 + } + }, + "mygames": { + "enable": true, + "position": "left", + "groups": { + "enable": true + }, + "past_days": 1, + "future_days": 7 + }, + "detail": { + "version": 1, + "experimental_version": 1, + "window_size": { + "width": 565, + "height": 700 + } + }, + "calendar_range": 7, + "google_analytics": { + "event_tracking": true + }, + "video_highlights_live_icon": { + "enable": true + }, + "video_highlights": { + "enable_interval": 24, + "disabled_geoip": ["GB"] + }, + "US_time_format": false, + "project_type": { + "id": 1, + "name": "_fs", + "us_web": false + }, + "popup": false, + "js_redirect": false, + "myteams": { + "enable": true, + "maximum_count": 100 + }, + "has_category_page": [2, 21, 23, 31, 32, 33, 36], + "banner": { + "zone_list": { + "background": { + "id": 1050, + "width_max": 3000, + "height_max": 2000, + "dynamic_background": true, + "element_notice_selector": ".footer__advertBackground" + }, + "background_tennis": { + "id": 1620, + "width_max": 3000, + "height_max": 2000, + "dynamic_background": true, + "element_notice_selector": ".footer__advertBackground", + "condition": { + "height": 1, + "zones": ["background"] + } + }, + "left_menu_1": { + "id": 72, + "width_max": 140, + "height_max": 400 + }, + "left_menu_1_soccer": { + "id": 2965, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_1_basketball": { + "id": 453, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_1_handball": { + "id": 455, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_1_hockey": { + "id": 454, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_1_tennis": { + "id": 452, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_1_horse-racing": { + "id": 2467, + "width_max": 140, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["left_menu_1"] + } + }, + "left_menu_2": { + "id": 73, + "width_max": 140, + "height_max": 400 + }, + "left_menu_3": { + "id": 74, + "width_max": 140, + "height_max": 400 + }, + "right_top": { + "id": 213, + "width_max": 160, + "height_max": 141 + }, + "right_zone_1": { + "id": 70, + "width_max": 200, + "height_max": 1000 + }, + "right_zone_1_exclude_home": { + "id": 1017, + "width_max": 200, + "height_max": 1000 + }, + "right_zone_2": { + "id": 396, + "width_max": 200, + "height_max": 1000 + }, + "right_zone_2_tennis": { + "id": 773, + "width_max": 200, + "height_max": 1000, + "condition": { + "height": 1, + "zones": ["right_zone_2"] + } + }, + "right_zone_2_hockey": { + "id": 774, + "width_max": 200, + "height_max": 1000, + "condition": { + "height": 1, + "zones": ["right_zone_2"] + } + }, + "right_zone_2_basketball": { + "id": 775, + "width_max": 200, + "height_max": 1000, + "condition": { + "height": 1, + "zones": ["right_zone_2"] + } + }, + "right_zone_2_horse-racing": { + "id": 2468, + "width_max": 200, + "height_max": 1000, + "condition": { + "height": 1, + "zones": ["right_zone_2"] + } + }, + "right_zone_3": { + "id": 397, + "width_max": 200, + "height_max": 1000 + }, + "right_criteo": { + "id": 3132, + "width_max": 200, + "height_max": 1000 + }, + "top": { + "id": 68, + "width_max": 1000, + "height_max": 300, + "vertical": true + }, + "top_basketball": { + "id": 663, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "top_handball": { + "id": 664, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "top_hockey": { + "id": 662, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "top_tennis": { + "id": 661, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "top_volleyball": { + "id": 665, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "top_horse-racing": { + "id": 2469, + "width_max": 1000, + "height_max": 300, + "vertical": true, + "condition": { + "height": 1, + "zones": ["top"] + } + }, + "content_top": { + "id": 2568, + "width_max": 970, + "height_max": 150, + "vertical": true + }, + "content_bottom": { + "id": 256, + "width_max": 660, + "height_max": 400 + }, + "content_bottom_tennis": { + "id": 456, + "width_max": 660, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["content_bottom"] + } + }, + "content_bottom_basketball": { + "id": 457, + "width_max": 660, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["content_bottom"] + } + }, + "content_bottom_hockey": { + "id": 458, + "width_max": 660, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["content_bottom"] + } + }, + "content_bottom_handball": { + "id": 459, + "width_max": 660, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["content_bottom"] + } + }, + "content_bottom_horse-racing": { + "id": 2470, + "width_max": 660, + "height_max": 400, + "condition": { + "height": 1, + "zones": ["content_bottom"] + } + }, + "content_bottom_criteo": { + "id": 3134, + "width_max": 660, + "height_max": 400 + }, + "detail": { + "id": 69, + "width_max": 550, + "height_max": 500 + }, + "detail_tennis": { + "id": 1270, + "width_max": 550, + "height_max": 500, + "condition": { + "height": 1, + "zones": ["detail"] + } + }, + "detail_basketball": { + "id": 1271, + "width_max": 550, + "height_max": 500, + "condition": { + "height": 1, + "zones": ["detail"] + } + }, + "detail_hockey": { + "id": 1272, + "width_max": 550, + "height_max": 500, + "condition": { + "height": 1, + "zones": ["detail"] + } + }, + "detail_criteo": { + "id": 3133, + "width_max": 550, + "height_max": 500 + }, + "standings_top": { + "id": 549, + "width_max": 500, + "height_max": 60 + }, + "responsive_fixed_bottom_mobile": { + "id": 3476, + "refresh": 45, + "width_max": 320, + "height_max": 50, + "body_class": "mobile_ad", + "condition": { + "breakpoint": [320, 727] + } + }, + "responsive_detail_fixed_bottom_mobile": { + "id": 3478, + "refresh": 45, + "width_max": 320, + "height_max": 50, + "body_class": "mobile_ad", + "condition": { + "breakpoint": [320, 727] + } + }, + "responsive_fixed_bottom_tablet": { + "id": 3477, + "refresh": 45, + "width_max": 728, + "height_max": 90, + "body_class": "tablet_ad", + "condition": { + "breakpoint": [728, 999] + } + }, + "responsive_detail_fixed_bottom_tablet": { + "id": 3479, + "refresh": 45, + "width_max": 728, + "height_max": 90, + "body_class": "tablet_ad", + "condition": { + "breakpoint": [728, 999] + } + } + } + }, + "icon-scrolling-enable": true, + "project": { + "id": 2, + "name": "FlashScore.com" + }, + "odds": { + "layout": "default", + "format": "eu", + "format_switch_enable": { + "iframe": true + }, + "ah_override": false, + "us_handicap": false, + "enable": true, + "iframe": true, + "hide_tab": false, + "odds_disabled_countries": ["IT"], + "finished_matches_clickable": false, + "betslip": false, + "betslip_detail_window": false, + "betslip_window_size": [], + "bookmakers_sp_allowed": [16], + "betting_light_version": false, + "light_live_bet_icon": false, + "hide_live_bet_icon": false, + "odds_comparison_show_copyright": true + }, + "redirector": { + "types": { + "event": 1, + "tournament_template": 2, + "participant": 3, + "player": 4, + "detail_page": 5 + } + }, + "fs_stats": { + "enable": true, + "url": { + "mygames": "remote-stats.flashscore.com\/mg", + "adblocked": "", + "search_stats": "remote-stats.flashscore.com\/ss", + "full_feed_duration": "remote-stats.flashscore.com\/ffd" + } + }, + "measure_full_feed": { + "chance": 20, + "sports": [1] + }, + "empty_logo_small_path": { + "logo_team": "image\/empty-logo-team-small.png" + }, + "game_notification_push": { + "enable": true + }, + "user_functions": { + "server_domain": "lsid.eu", + "serverAPI": "http:\/\/lsid.edrive.intra:82\/", + "enable": true, + "use_only_local": true, + "namespace": "flashscore", + "server": "https:\/\/lsid.eu\/", + "apple_client_id": "com.flashscore.siwa", + "apple_redirect_uri": "https:\/\/www.lsid.eu:8443\/apple-proxy\/", + "facebook_app_id": "555890894461938", + "google_client_id": "33270257411-p5mm2q46djddp4dhiucmmmaeuv2k4u2i.apps.googleusercontent.com" + }, + "user_function": { + "use_only_local": false + }, + "registration": { + "version": 1, + "no_remote": false, + "sign_out_in_drop_down": true, + "captcha_sitekey": "6LdnlAoTAAAAAIzaLLR8ezPKKnLeM2LozP6OQKj_" + }, + "european_union_states": { + "codes": ["BE", "BG", "CZ", "DK", "EE", "FI", "FR", "HR", "IE", "IT", "CY", "LT", "LV", "LU", "HU", "MT", "DE", "NL", "PL", "PT", "AT", "RO", "GR", "SK", "SI", "GB", "ES", "SE"] + }, + "url_prefix": "", + "project_moved": [], + "sports_without_detail": [35], + "tournament_pages": { + "disabled_sports": [], + "block_summary_match_limit": 10, + "data_part_match_limit": 100 + }, + "new_mobile_page": { + "enable": true + }, + "box-over-content": { + "scrolling-enable": true + }, + "detail_live_betting_strip": { + "rotation_time": 30000 + }, + "sports_with_participant_no_duel_page": [38, 39, 40, 41, 32, 33, 34], + "match_comments": { + "enable": true, + "sports": [1, 2, 13, 18, 8, 19] + }, + "new_live_betting_icon": { + "enable": true, + "version": 1 + }, + "live_streaming": { + "disabled_bookmakers_by_geoip": [] + }, + "facelift": { + "main_class": "flat" + }, + "timezone": { + "default": 1 + }, + "icon_list": { + "info": true, + "shirt": true, + "tv": true + }, + "react": { + "enabled": false, + "sports": false + }, + "responsive": { + "breakpoint": 800, + "breakpoint_mobile": 639 + }, + "tv_program": { + "enable": true + }, + "mixed_feed": { + "link_to_more_games": false + }, + "team_transfers": { + "sports": [1, 4] + }, + "team_news": { + "enabled": false + }, + "native_notifications": { + "enabled": true, + "lsnp": "https:\/\/lsnp.flashscore.com\/web-", + "firebase": { + "apiKey": "AIzaSyAW9FbqeajkSTftCCbFlcbojPETqu1IThs", + "authDomain": "flashscore-web-notifications.firebaseapp.com", + "databaseURL": "https:\/\/flashscore-web-notifications.firebaseio.com", + "projectId": "flashscore-web-notifications", + "messagingSenderId": "258573697417" + } + }, + "feed_sign": "SW9D1eZo", + "audio_comments": { + "enabled": true, + "authRequired": true + }, + "tv": { + "enabled": false, + "feeds_enabled": false, + "api_service": "https:\/\/lstv-service.livesport.services\/api\/v1", + "payment_gateways": { + "csob": "\/payment-gateways\/csob\/payments" + }, + "payment_redirect": "lstv-payment-proxy", + "license_servers": { + "wv": "https:\/\/wv-keyos.licensekeyserver.com", + "pr": "https:\/\/pr-keyos.licensekeyserver.com\/core\/rightsmanager.asmx", + "fp": "https:\/\/fp-keyos.licensekeyserver.com\/getkey" + }, + "server_certs": { + "wv": "CsECCAMSEBcFuRfMEgSGiwYzOi93KowYgrSCkgUijgIwggEKAoIBAQCZ7Vs7Mn2rXiTvw7YqlbWYUgrVvMs3UD4GRbgU2Ha430BRBEGtjOOtsRu4jE5yWl5KngeVKR1YWEAjp+GvDjipEnk5MAhhC28VjIeMfiG\/+\/7qd+EBnh5XgeikX0YmPRTmDoBYqGB63OBPrIRXsTeo1nzN6zNwXZg6IftO7L1KEMpHSQykfqpdQ4IY3brxyt4zkvE9b\/tkQv0x4b9AsMYE0cS6TJUgpL+X7r1gkpr87vVbuvVk4tDnbNfFXHOggrmWEguDWe3OJHBwgmgNb2fG2CxKxfMTRJCnTuw3r0svAQxZ6ChD4lgvC2ufXbD8Xm7fZPvTCLRxG88SUAGcn1oJAgMBAAE6FGxpY2Vuc2Uud2lkZXZpbmUuY29tEoADrjRzFLWoNSl\/JxOI+3u4y1J30kmCPN3R2jC5MzlRHrPMveoEuUS5J8EhNG79verJ1BORfm7BdqEEOEYKUDvBlSubpOTOD8S\/wgqYCKqvS\/zRnB3PzfV0zKwo0bQQQWz53ogEMBy9szTK\/NDUCXhCOmQuVGE98K\/PlspKkknYVeQrOnA+8XZ\/apvTbWv4K+drvwy6T95Z0qvMdv62Qke4XEMfvKUiZrYZ\/DaXlUP8qcu9u\/r6DhpV51Wjx7zmVflkb1gquc9wqgi5efhn9joLK3\/bNixbxOzVVdhbyqnFk8ODyFfUnaq3fkC3hR3f0kmYgI41sljnXXjqwMoW9wRzBMINk+3k6P8cbxfmJD4\/Paj8FwmHDsRfuoI6Jj8M76H3CTsZCZKDJjM3BQQ6Kb2m+bQ0LMjfVDyxoRgvfF\/\/M\/EEkPrKWyU2C3YBXpxaBquO4C8A0ujVmGEEqsxN1HX9lu6c5OMm8huDxwWFd7OHMs3avGpr7RP7DUnTikXrh6X0", + "fp": "MIIFATCCA+mgAwIBAgIISULhFBgeQkQwDQYJKoZIhvcNAQEFBQAwfzELMAkGA1UEBhMCVVMxEzARBgNVBAoMCkFwcGxlIEluYy4xJjAkBgNVBAsMHUFwcGxlIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MTMwMQYDVQQDDCpBcHBsZSBLZXkgU2VydmljZXMgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTkwODAyMDY1NTU4WhcNMjEwODAyMDY1NTU4WjByMQswCQYDVQQGEwJDWjEcMBoGA1UECgwTTGl2ZXNwb3J0IFRWIHMuci5vLjETMBEGA1UECwwKQzVWVkdKOVA5NjEwMC4GA1UEAwwnRmFpclBsYXkgU3RyZWFtaW5nOiBMaXZlc3BvcnQgVFYgcy5yLm8uMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCkUV6fl4Vm1eL56aUNCRTAjz4zYe4cQe4m3F+k9KSos32jij4ildOt4Pm1SNIS2T91+Zrnqe3LwRK9x2qq8QfbMipFaJRItIT11fMancg9McWBvD8P1Op7tpIxfP7ExI7ZNNM4DgXpD2YFq2+8SCYQhvq+qzRIQZVkGTL\/mndxSQIDAQABo4ICEDCCAgwwDAYDVR0TAQH\/BAIwADAfBgNVHSMEGDAWgBRj5EdUy4VxWUYsg6zMRDFkZwMsvjCB4gYDVR0gBIHaMIHXMIHUBgkqhkiG92NkBQEwgcYwgcMGCCsGAQUFBwICMIG2DIGzUmVsaWFuY2Ugb24gdGhpcyBjZXJ0aWZpY2F0ZSBieSBhbnkgcGFydHkgYXNzdW1lcyBhY2NlcHRhbmNlIG9mIHRoZSB0aGVuIGFwcGxpY2FibGUgc3RhbmRhcmQgdGVybXMgYW5kIGNvbmRpdGlvbnMgb2YgdXNlLCBjZXJ0aWZpY2F0ZSBwb2xpY3kgYW5kIGNlcnRpZmljYXRpb24gcHJhY3RpY2Ugc3RhdGVtZW50cy4wNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2NybC5hcHBsZS5jb20va2V5c2VydmljZXMuY3JsMB0GA1UdDgQWBBTzeP9K0qXyhuCFS4v8dY6R43Za1zAOBgNVHQ8BAf8EBAMCBSAwRwYLKoZIhvdjZAYNAQMBAf8ENQE5ZDl5cnNmZGkwcmVjYXF5ZmZwbGZ2MTJseTJyc3huNjB1bnE3MWl1Zm1jNHRsbnhsZHo5MEcGCyqGSIb3Y2QGDQEEAQH\/BDUBb3JzbDZhdGlmZjB3cnY4ZmJiYndxZ2JmOTF6eGdxa2tnc2RvcmhvcDB5b281NnNhZGFqbTANBgkqhkiG9w0BAQUFAAOCAQEATorStK5zMls476ieK6EFojMEzSlYmrQnUAiSgj\/av76RBBlG4epcNYkEOBs3\/Kvr\/v4VF24sX7hAKrsTGXPeAKP10xBh\/MqprqBrHRLphHLxKrB7L4inBCet5XhcC2Zc\/fK3azv2qYJh0thAlzltFLVzrHqG28wu\/RXFp25DzG86WEaVcgmrwmzgheKt5o+Mf90\/v4qF0Ksh7HAnf45LXR\/FQPBX8AWpVXcJIqPTfoxR5dNLDCjlAmfHVWNDG+10Y\/L0IghGbxEeUuZyg30BE4x\/p49dGT17g6WIzSr4NFKCmXN5JTRY5g8gJZ664O7Qy6Dzc4Dw9JoeshBfSHkFMA==" + }, + "player": { + "move_back": 15, + "move_forward": 15, + "fragment_size": 2, + "buffer_tolerance": 2.2, + "live_tolerance": 2.8 + }, + "transaction_expiration": 604800000, + "currency_code": "CZK" + }, + "apple_sign_in": { + "enable": true + }, + "recombee": { + "enabled": false, + "database_id": "livesport-eu-prod", + "public_token": "FEi4XEiLW3jsljzduaSyR10SOCxIMtgcBY06ssPMenRjEMFut9SeGnOmR7WtICKC", + "scenario": "1" + }, + "advanced_tennis": { + "enable": true, + "point_by_point": true + }, + "reversed_time": { + "enable": false, + "sports": { + "3": { + "stages": [22, 23, 24, 25], + "extra_time_stages": [6], + "stage_time": 10, + "extra_time": 5 + }, + "4": { + "stages": [14, 15, 16], + "extra_time_stages": [6], + "stage_time": 20, + "extra_time": 5 + }, + "5": { + "stages": [22, 23, 24, 25], + "extra_time_stages": [6], + "stage_time": 15, + "extra_time": 15 + } + } + }, + "sports_with_player_profile": [1, 4], + "empty_logo_path": { + "face_man": "image\/empty-face-man-share.gif", + "face_woman": "image\/empty-face-woman-share.gif", + "logo_team": "image\/empty-logo-team-share.gif" + }, + "team_logo": { + "iframe": false + }, + "lang_box": { + "enabled": true, + "redirects": { + "BG": { + "title": "\u0421\u043b\u0435\u0434\u0432\u0430\u0439\u0442\u0435 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438\u0442\u0435 \u043d\u0430 \u0436\u0438\u0432\u043e \u043d\u0430 \u0431\u044a\u043b\u0433\u0430\u0440\u0441\u043a\u0438! ", + "description": "\u041f\u043e\u0441\u0435\u0442\u0435\u0442\u0435 FlashScore.bg<\/a>" + }, + "BR": { + "title": "Acompanhe nossos resultados ao vivo em portugu\u00eas!", + "description": "Acesse FlashScore.com.br<\/a>" + }, + "DE": { + "title": "Folge unseren Livescores auf Deutsch!", + "description": "Gehe zu FlashScore.de<\/a>" + }, + "CH": { + "parent": "DE" + }, + "AT": { + "title": "Folge unseren Livescores auf Deutsch!", + "description": "Gehe zu FlashScore.at<\/a>" + }, + "DK": { + "title": "F\u00f8lg vores livescore p\u00e5 finsk!", + "description": "Bes\u00f8g www.flashscore.dk<\/a>" + }, + "GR": { + "title": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03ae\u03c3\u03c4\u03b5 \u03c4\u03b1 \u03b6\u03c9\u03bd\u03c4\u03b1\u03bd\u03ac \u03bc\u03b1\u03c2 \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03ad\u03c3\u03bc\u03b1\u03c4\u03b1 \u03c3\u03c4\u03b1 \u03b5\u03bb\u03bb\u03b7\u03bd\u03b9\u03ba\u03ac!", + "description": "\u039c\u03b5\u03c4\u03b1\u03b2\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf FlashScore.gr<\/a>" + }, + "ES-ESCT": { + "flag": "cat", + "title": "Segueix tots els resultats en viu en catal\u00e0!", + "description": "Visita FlashScore.cat<\/a>" + }, + "ES": { + "title": "\u00a1Sigue los resultados en directo en espa\u00f1ol!", + "description": "Visita FlashScore.es<\/a>" + }, + "BO": { + "parent": "ES" + }, + "GF": { + "parent": "ES" + }, + "GY": { + "parent": "ES" + }, + "PY": { + "parent": "ES" + }, + "SR": { + "parent": "ES" + }, + "UY": { + "parent": "ES" + }, + "PA": { + "parent": "ES" + }, + "JM": { + "parent": "ES" + }, + "GT": { + "parent": "ES" + }, + "NI": { + "parent": "ES" + }, + "CU": { + "parent": "ES" + }, + "CL": { + "title": "\u00a1Sigue los resultados en directo en espa\u00f1ol!", + "description": "Visita FlashScore.cl<\/a>" + }, + "CO": { + "title": "\u00a1Sigue los resultados en vivo en espa\u00f1ol!", + "description": "Visita FlashScore.co<\/a>" + }, + "AR": { + "title": "\u00a1Segu\u00ed nuestros resultados en vivo en espa\u00f1ol!", + "description": "Visit\u00e1 FlashScore.com.ar<\/a>" + }, + "MX": { + "title": "\u00a1Sigue nuestros resultados en vivo en espa\u00f1ol!", + "description": "Visita FlashScore.com.mx<\/a>" + }, + "VE": { + "title": "\u00a1Sigue nuestros resultados en vivo en espa\u00f1ol!", + "description": "Visita FlashScore.com.ve<\/a>" + }, + "PE": { + "title": "\u00a1Sigue nuestros resultados en vivo en espa\u00f1ol!", + "description": "Visita FlashScore.pe<\/a>" + }, + "FI": { + "title": "Seuraa tuloksiamme liven\u00e4 suomeksi! ", + "description": "Siirry LiveTulokset.com<\/a>-svuille!" + }, + "FR": { + "title": "Suivez nos scores en direct en fran\u00e7ais!", + "description": "Rendez-vous sur \" FlashScore.fr<\/a>" + }, + "GE": { + "title": "\u10ea\u10dd\u10ea\u10ee\u10d0\u10da\u10d8 \u10d0\u10dc\u10d2\u10d0\u10e0\u10d8\u10e8\u10d4\u10d1\u10d8 \u10e5\u10d0\u10e0\u10d7\u10e3\u10da\u10d0\u10d3!", + "description": "FlashScore.ge<\/a>" + }, + "HR": { + "title": "Pratite na\u0161e rezultate u\u017eivo na hrvatskom!", + "description": "Idite na Rezultati.com<\/a>" + }, + "HU": { + "title": "K\u00f6vesd az \u00e9l\u0151 eredm\u00e9nyeket magyar nyelven!", + "description": "Eredmenyek.com<\/a> megnyit\u00e1sa" + }, + "IT": { + "title": "Segui i risultati live in italiano!", + "description": "Vai su FlashScore.it<\/a>" + }, + "ID": { + "title": "Ikutilah Skor langsung kami dalam Bahasa Indonesia!", + "description": "Kunjungilah FlashScore.co.id<\/a>" + }, + "JP": { + "title": "\u305c\u3072\u3001\u79c1\u3069\u3082\u306e\u65e5\u672c\u7248\u30e9\u30a4\u30d6\u30b9\u30b3\u30a2\u3092\u30d5\u30a9\u30ed\u30fc\u304f\u3060\u3055\u3044\uff01", + "description": "Flashscore.co.jp<\/a> \u306f\u3053\u3061\u3089" + }, + "KZ": { + "title": "Live \u043d\u04d9\u0442\u0438\u0436\u0435\u043b\u0435\u0440\u0434\u0456 \u049b\u0430\u0437\u0430\u049b \u0442\u0456\u043b\u0456\u043d\u0434\u0435 \u049b\u0430\u0440\u0430\u04a3\u044b\u0437!", + "description": "FlashScore.kz<\/a> \u0436\u0435\u043b\u0456\u0441\u0456\u043d\u0435 \u04e9\u0442\u0443" + }, + "NL": { + "title": "Volg onze live uitslagen in het Nederlands!", + "description": "Ga naar FlashScore.nl<\/a>" + }, + "PL": { + "title": "\u015aled\u017c nasze wyniki na \u017cywo po polsku.", + "description": "Wejd\u017a na FlashScore.pl<\/a>" + }, + "PT": { + "title": "Segue os resultados ao vivo em Portugu\u00eas!", + "description": "Visita FlashScore.pt<\/a>" + }, + "RO": { + "title": "Urm\u0103re\u0219te scorurile noastre live \u00een Rom\u00e2n\u0103!", + "description": "Mergi la FlashScore.ro<\/a>" + }, + "RU": { + "title": "\u0421\u043b\u0435\u0434\u0438\u0442\u0435 \u0437\u0430 live \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u043e\u043c!", + "description": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 FlashScore.ru<\/a>" + }, + "SK": { + "title": "Sledujte na\u0161e live v\u00fdsledky v sloven\u010dine!", + "description": "Prejs\u0165 na Flashscore.sk<\/a>" + }, + "SI": { + "title": "Spremljajte na\u0161e rezultate v \u017eivo v sloven\u0161\u010dini!", + "description": "Pojdite na FlashScore.si<\/a>" + }, + "SE": { + "title": "F\u00f6lj v\u00e5r livescore p\u00e5 svenska!", + "description": "G\u00e5 till FlashScore.se<\/a>" + }, + "VN": { + "title": "Theo d\u00f5i t\u1ef7 s\u1ed1 tr\u1ef1c ti\u1ebfp b\u1eb1ng Ti\u1ebfng Vi\u1ec7t!", + "description": "H\u00e3y \u0111\u1ebfn FlashScore.vn<\/a>" + }, + "UA": { + "title": "\u0421\u0442\u0435\u0436\u0442\u0435 \u0437\u0430 \u043d\u0430\u0448\u0438\u043c\u0438 live \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u0443\u043a\u0440\u0430\u0457\u043d\u0441\u044c\u043a\u043e\u044e! ", + "description": "\u041f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 FlashScore.ua<\/a>" + }, + "TR": { + "title": "Canl\u0131 skorlar\u0131m\u0131z\u0131 T\u00fcrk\u00e7e takip edin!", + "description": "FlashScore.com.tr<\/a>'ye gidin" + }, + "CZ": { + "title": "Sledujte na\u0161e \u017eiv\u00e9 v\u00fdsledky v \u010de\u0161tin\u011b!", + "description": "P\u0159ej\u00edt na Livesport.cz<\/a>" + }, + "KR": { + "title": "\ud55c\uad6d\uc5b4\ub85c \uc2e4\uc2dc\uac04 \uc2a4\ucf54\uc5b4\ub97c \ud655\uc778\ud558\uc138\uc694!", + "description": "FlashScore.co.kr<\/a> \ubc14\ub85c\uac00\uae30" + } + } + }, + "confirmation_box": { + "enabled": false + }, + "sphinxsearch": { + "server_domain": "s.livesport.services", + "search_path": "\/search\/", + "top_search_path": "\/top\/", + "enable": true, + "client_server": "s.livesport.services\/search\/" + } + }, + "portable_apps": { + "android": { + "enable": true, + "app-id": "eu.livesport.FlashScore_com", + "app-name": "FlashScore", + "url": "\/mobile\/#android", + "header-url": "\/mobile\/#android", + "footer-url": "\/mobile\/#android", + "apk-url": "http:\/\/t.flashscore.com\/android\/flashscore-com.apk", + "context-box-url": "\/mobile\/#android", + "store-url": "https:\/\/play.google.com\/store\/apps\/details?id=eu.livesport.FlashScore_com" + }, + "info": { + "name": "FlashScore", + "developer": "FlashScore" + } + }, + "ajax": { + "sync_time": { + "default": 10, + "update": 5, + "game": 5, + "live_tables": 10 + }, + "goal_duration_time": 60, + "correction_duration_time": 15, + "penalty_duration_time": 60, + "counter_duration_time": 60, + "scores_changed_duration_time": 60 + }, + "timezone": { + "list": { + "-11": "Apia, Midway", + "-10": "Honolulu, Papeete, Avarua", + "-9": "Juneau", + "-8": "Los Angeles", + "-7": "Denver", + "-6": "Chicago", + "-5": "New York", + "-4.5": "Caracas", + "-4": "St. John's, Caracas, Santiago", + "-3.5": "St. John's", + "-3": "Brasilia, Buenos Aires, Nuuk", + "-2": "Mid Atlantic", + "-1": "Ponta Delgada, Praia", + "+0": "London, Dublin, Lisbon", + "+1": "Berlin, Prague, Vienna", + "+2": "Ankara, Athens, Helsinki", + "+3": "Moscow, Riyadh", + "+3.5": "Tehran, Iran Time Zone", + "+4": "Muscat", + "+5": "Islamabad", + "+5.5": "Chennai, Calcutta, Mumbai, New Delhi", + "+5.75": "Kathmandu", + "+6": "New Delhi", + "+6.5": "Yangon (Rangoon)", + "+7": "Jakarta", + "+8": "Beijing, Manila, Kuala Lumpur, Perth", + "+9": "Tokio", + "+9.5": "Australia", + "+10": "Melbourne", + "+10.5": "Lord Howe Island", + "+11": "Honiara, Palikir", + "+12": "Majuro, Suva", + "+13": "DST" + }, + "dst_list": { + "-2.5": "St. John's", + "+4.5": "Tehran, Iran Time Zone", + "+10.5": "Australia", + "+11.5": "Lord Howe Island" + }, + "name_list": false + }, + "cache": { + "feed_x": "x" + }, + "core_debugger": { + "internal": false + } + }, + "stats2_config": { + "tournament": "ddZx0yNP", + "tournamentStage": "lOTx2Yho", + "eventId": "", + "statsTabsConfig": { + "16": { + "name": "Live Standings", + "url": "live", + "sortKey": 1 + }, + "1": { + "name": "Standings", + "url": "table", + "sortKey": 2, + "items": { + "1": { + "name": "Overall", + "url": "overall", + "sortKey": 1 + }, + "2": { + "name": "Home", + "url": "home", + "sortKey": 2 + }, + "3": { + "name": "Away", + "url": "away", + "sortKey": 3 + } + } + }, + "5": { + "name": "Form", + "url": "form", + "sortKey": 3, + "items": { + "5": { + "name": "Overall", + "url": "overall", + "has_sub_items": true, + "sortKey": 1 + }, + "8": { + "name": "Home", + "url": "home", + "has_sub_items": true, + "sortKey": 2 + }, + "9": { + "name": "Away", + "url": "away", + "has_sub_items": true, + "sortKey": 3 + } + } + }, + "6": { + "name": "Over\/Under", + "url": "over_under", + "sortKey": 4, + "items": { + "6": { + "name": "Overall", + "url": "overall", + "has_sub_items": true, + "sortKey": 1 + }, + "17": { + "name": "Home", + "url": "home", + "has_sub_items": true, + "sortKey": 2 + }, + "18": { + "name": "Away", + "url": "away", + "has_sub_items": true, + "sortKey": 3 + } + } + }, + "7": { + "name": "Streaks", + "url": "streaks", + "sortKey": 5 + }, + "-1": { + "name": "Draw", + "url": "draw", + "sortKey": 6 + }, + "13": { + "url": "ht_ft", + "name": "HT\/FT", + "title": "Half Time\/Full Time", + "sortKey": 7, + "items": { + "13": { + "name": "Overall", + "url": "overall", + "sortKey": 1 + }, + "14": { + "name": "Home", + "url": "home", + "sortKey": 2 + }, + "15": { + "name": "Away", + "url": "away", + "sortKey": 3 + } + } + }, + "10": { + "name": "Top Scorers", + "url": "top_scorers", + "sortKey": 8 + } + }, + "statsOverUnderTypes": [] + }, + "common_feed": { + "DA": 1, + "DZ": 1, + "DB": 1, + "DD": 1603629000, + "AW": false, + "DC": 1603629000, + "DS": 0, + "DI": -1, + "DL": 1, + "DM": "", + "DT": false, + "DX": "OD,HH,LT,TA,TV", + "DEI": "https:\/\/www.flashscore.com\/res\/image\/data\/QoXpBXXg-zF1ttUqL-0luqzUjO.png", + "DV": 7, + "EI": false, + "SC": "16", + "SB": "1", + "SD": "bet365" + }, + "final_stage": "", + "event_stage_time": "0:0", + "sport_id": 7, + "sport": "handball", + "header": { + "project_name_class": "flashscore-com-white", + "root_url": "\/", + "flag_id": "81", + "tournament": { + "category": "GERMANY", + "link": "\/handball\/germany\/bundesliga\/", + "tournament": "Bundesliga - Round 5" + } + }, + "participantsData": { + "home": [{ + "id": "63rDfiKQ", + "sport_id": 7, + "name": "HSG Wetzlar", + "image_path": "\/res\/image\/data\/QoXpBXXg-WKmHtE7t.png", + "detail_link": "\/team\/hsg-wetzlar\/63rDfiKQ", + "rank": [], + "country": "" + }], + "away": [{ + "id": "zVrlX9c7", + "sport_id": 7, + "name": "MT Melsungen", + "image_path": "\/res\/image\/data\/SOhLzaDa-0luqzUjO.png", + "detail_link": "\/team\/mt-melsungen\/zVrlX9c7", + "rank": [], + "country": "" + }], + "sport_id": 7 + }, + "eventParticipantEncodedId": "ltB92yKu", + "odds": { + "formats": [{ + "id": 1, + "ident": "eu", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_EU", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_EU", + "name_title": "TRANS_ODDS_FORMAT_TITLE_EU" + }, { + "id": 2, + "ident": "uk", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_UK", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_UK", + "name_title": "TRANS_ODDS_FORMAT_TITLE_UK" + }, { + "id": 3, + "ident": "us", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_US", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_US", + "name_title": "TRANS_ODDS_FORMAT_TITLE_US" + }, { + "id": 4, + "ident": "hk", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_HK", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_HK", + "name_title": "TRANS_ODDS_FORMAT_TITLE_HK" + }, { + "id": 5, + "ident": "ma", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_MA", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_MA", + "name_title": "TRANS_ODDS_FORMAT_TITLE_MA" + }, { + "id": 6, + "ident": "in", + "name_iframe": "TRANS_ODDS_FORMAT_IFRAME_IN", + "name_detail": "TRANS_ODDS_FORMAT_DETAIL_IN", + "name_title": "TRANS_ODDS_FORMAT_TITLE_IN" + }], + "prematchOddsSettings": { + "bookmakersWithLiveOffer": { + "419": "y", + "16": "y", + "417": "y", + "453": "y", + "165": "y", + "471": "y", + "539": "y", + "141": "y", + "24": "y", + "43": "y", + "455": "y", + "27": "y", + "411": "y", + "45": "y", + "33": "y", + "49": "y", + "508": "y", + "544": "y", + "454": "y", + "507": "y", + "392": "y", + "2": "y" + }, + "liveOddsData": { + "tableType": "live-odds", + "tabTitle": "Live odds", + "hasOddsComparison": false, + "defaultColumnWidth": 80, + "isBettingType_TWP": false, + "isBettingType_ASIAN_HANDICAP": false, + "isNotBettingType_HOME_AWAY_DRAW_NO_BET": true, + "tableHeader": [{ + "name": "1" + }, { + "name": "X" + }, { + "name": "2" + }], + "emptyCellChar": "-", + "geoOddsComparisonSettings": { + "default": true, + "GB": true, + "ES": true, + "IT": true, + "FR": true, + "AU": true, + "RU": true, + "KR": true, + "CZ": true, + "DK": true, + "US": false, + "RO": true, + "TR": false, + "PL": true, + "TN": true, + "KE": true, + "ZA": true, + "AZ": true, + "GH": true, + "JP": true, + "LT": true, + "TH": true, + "UG": true, + "VN": true, + "NG": true, + "EE": true, + "ID": true, + "NL": true, + "BE": true, + "BG": true, + "GR": true, + "KZ": true, + "PT": true, + "SK": true, + "UY": true, + "GE": false, + "MX": true, + "UA": true, + "PE": true, + "LV": true, + "CY": true, + "SE": true, + "NO": true, + "AL": false, + "ZM": true, + "TZ": true, + "FI": true, + "US:USNJ": false, + "IN": true, + "CO": true, + "PH": true + } + }, + "prematchOddsData": { + "tableType": "odds", + "tabTitle": "Pre-match odds", + "defaultColumnWidth": 80, + "isBettingType_TWP": false, + "isBettingType_ASIAN_HANDICAP": false, + "isNotBettingType_HOME_AWAY_DRAW_NO_BET": true, + "tableHeader": [{ + "name": "1" + }, { + "name": "X" + }, { + "name": "2" + }], + "hasOddsComparison": true, + "emptyCellChar": "-", + "geoOddsComparisonSettings": { + "default": true, + "GB": true, + "ES": true, + "IT": true, + "FR": true, + "AU": true, + "RU": true, + "KR": true, + "CZ": true, + "DK": true, + "US": false, + "RO": true, + "TR": false, + "PL": true, + "TN": true, + "KE": true, + "ZA": true, + "AZ": true, + "GH": true, + "JP": true, + "LT": true, + "TH": true, + "UG": true, + "VN": true, + "NG": true, + "EE": true, + "ID": true, + "NL": true, + "BE": true, + "BG": true, + "GR": true, + "KZ": true, + "PT": true, + "SK": true, + "UY": true, + "GE": false, + "MX": true, + "UA": true, + "PE": true, + "LV": true, + "CY": true, + "SE": true, + "NO": true, + "AL": false, + "ZM": true, + "TZ": true, + "FI": true, + "US:USNJ": false, + "IN": true, + "CO": true, + "PH": true + } + }, + "oddsBettingTypes": { + "1": 1, + "2": 3, + "3": 3, + "4": 1, + "5": 3, + "6": 3, + "7": 1, + "8": 1, + "9": 1, + "10": 1, + "11": 1, + "12": 3, + "18": 3, + "19": 1, + "13": 3, + "14": 3, + "15": 3, + "16": 1, + "17": 3, + "21": 3, + "22": 1, + "24": 1, + "25": 3, + "26": 1, + "28": 3, + "29": 3, + "30": 1, + "23": 101, + "31": 101, + "32": 101, + "33": 101, + "34": 101, + "35": 16, + "36": 3, + "37": 101, + "38": 101, + "39": 101, + "40": 101, + "41": 101, + "42": 1 + }, + "oddsSportScopeList": { + "1": 2, + "2": 2, + "3": 1, + "4": 2, + "5": 1, + "6": 1, + "7": 2, + "8": 2, + "9": 2, + "10": 2, + "11": 2, + "12": 2, + "18": 1, + "19": 2, + "13": 1, + "14": 2, + "15": 2, + "16": 2, + "17": 2, + "21": 2, + "22": 2, + "24": 2, + "25": 2, + "26": 2, + "28": 2, + "29": 1, + "30": 2, + "23": 2, + "31": 2, + "32": 2, + "33": 2, + "34": 2, + "35": 2, + "36": 2, + "37": 2, + "38": 2, + "39": 2, + "40": 2, + "41": 2, + "42": 2 + }, + "advertNote": "" + }, + "bookmakerGeoGroups": { + "default": { + "geo_ip": "default", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "GB": { + "geo_ip": "GB", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "ES": { + "geo_ip": "ES", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "IT": { + "geo_ip": "IT", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "0", + "all_bookmakers_in_odds_comparison": "1", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "FR": { + "geo_ip": "FR", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "AU": { + "geo_ip": "AU", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "RU": { + "geo_ip": "RU", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "KR": { + "geo_ip": "KR", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "CZ": { + "geo_ip": "CZ", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "DK": { + "geo_ip": "DK", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "US": { + "geo_ip": "US", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "RO": { + "geo_ip": "RO", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "TR": { + "geo_ip": "TR", + "clickable": "0", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "0", + "clickable_bookmaker_logo_in_summary": "0", + "show_odds_comparison_tab": "0", + "show_bookmaker_logo_odds_comparison": "0", + "clickable_bookmaker_logo_odds_comparison": "0" + }, + "PL": { + "geo_ip": "PL", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "TN": { + "geo_ip": "TN", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "KE": { + "geo_ip": "KE", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "ZA": { + "geo_ip": "ZA", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "AZ": { + "geo_ip": "AZ", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "GH": { + "geo_ip": "GH", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "JP": { + "geo_ip": "JP", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "LT": { + "geo_ip": "LT", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "TH": { + "geo_ip": "TH", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "UG": { + "geo_ip": "UG", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "VN": { + "geo_ip": "VN", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "NG": { + "geo_ip": "NG", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "EE": { + "geo_ip": "EE", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "ID": { + "geo_ip": "ID", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "NL": { + "geo_ip": "NL", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "BE": { + "geo_ip": "BE", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "BG": { + "geo_ip": "BG", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "GR": { + "geo_ip": "GR", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "KZ": { + "geo_ip": "KZ", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "PT": { + "geo_ip": "PT", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "SK": { + "geo_ip": "SK", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "UY": { + "geo_ip": "UY", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "GE": { + "geo_ip": "GE", + "clickable": "0", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "0", + "clickable_bookmaker_logo_in_summary": "0", + "show_odds_comparison_tab": "0", + "show_bookmaker_logo_odds_comparison": "0", + "clickable_bookmaker_logo_odds_comparison": "0" + }, + "MX": { + "geo_ip": "MX", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "UA": { + "geo_ip": "UA", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "PE": { + "geo_ip": "PE", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "LV": { + "geo_ip": "LV", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "CY": { + "geo_ip": "CY", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "SE": { + "geo_ip": "SE", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "NO": { + "geo_ip": "NO", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "AL": { + "geo_ip": "AL", + "clickable": "0", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "0", + "clickable_bookmaker_logo_in_summary": "0", + "show_odds_comparison_tab": "0", + "show_bookmaker_logo_odds_comparison": "0", + "clickable_bookmaker_logo_odds_comparison": "0" + }, + "ZM": { + "geo_ip": "ZM", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "TZ": { + "geo_ip": "TZ", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "FI": { + "geo_ip": "FI", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "1", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "US:USNJ": { + "geo_ip": "US:USNJ", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "1", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "IN": { + "geo_ip": "IN", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "CO": { + "geo_ip": "CO", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + }, + "PH": { + "geo_ip": "PH", + "clickable": "1", + "logo_to_text_match_summary": "0", + "logo_to_text_odds_comparison": "0", + "logo_to_text_bonus": "0", + "odds_background_in_odds_comparison": "1", + "all_bookmakers_in_odds_comparison": "0", + "all_prematch_bookmakers_in_match_summary": "0", + "all_live_bookmakers_in_match_summary": "0", + "show_bookmaker_logo_in_summary": "1", + "clickable_bookmaker_logo_in_summary": "1", + "show_odds_comparison_tab": "1", + "show_bookmaker_logo_odds_comparison": "1", + "clickable_bookmaker_logo_odds_comparison": "1" + } + }, + "bookmakersData": { + "default": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "default", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "default", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "default", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "default", + "name": "William Hill", + "premium_status_id": "2" + }], + "GB": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "GB", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "GB", + "name": "William Hill", + "premium_status_id": "2" + }], + "ES": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "ES", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "ES", + "name": "William Hill", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "406", + "project_id": "2", + "geo_ip": "ES", + "name": "Sportium.es", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "392", + "project_id": "2", + "geo_ip": "ES", + "name": "bwin.es", + "premium_status_id": "2" + }], + "IT": [{ + "main_bookmaker_id": "419", + "project_id": "2", + "geo_ip": "IT", + "name": "bet365.it", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "157", + "project_id": "2", + "geo_ip": "IT", + "name": "Unibet.it", + "premium_status_id": "2" + }], + "FR": [{ + "main_bookmaker_id": "141", + "project_id": "2", + "geo_ip": "FR", + "name": "Betclic.fr", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "129", + "project_id": "2", + "geo_ip": "FR", + "name": "bwin.fr", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "398", + "project_id": "2", + "geo_ip": "FR", + "name": "NetBet.fr", + "premium_status_id": "2" + }], + "AU": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "AU", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "158", + "project_id": "2", + "geo_ip": "AU", + "name": "Sportsbet.com.au", + "premium_status_id": "1" + }], + "RU": [{ + "main_bookmaker_id": "453", + "project_id": "2", + "geo_ip": "RU", + "name": "1xStavka.ru", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "454", + "project_id": "2", + "geo_ip": "RU", + "name": "Winline.ru", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "455", + "project_id": "2", + "geo_ip": "RU", + "name": "Leon.ru", + "premium_status_id": "2" + }], + "KR": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "KR", + "name": "1xBet", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "KR", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "KR", + "name": "William Hill", + "premium_status_id": "2" + }], + "CZ": [{ + "main_bookmaker_id": "49", + "project_id": "2", + "geo_ip": "CZ", + "name": "Tipsport.cz", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "46", + "project_id": "2", + "geo_ip": "CZ", + "name": "iFortuna.cz", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "45", + "project_id": "2", + "geo_ip": "CZ", + "name": "Chance.cz", + "premium_status_id": "2" + }], + "DK": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "DK", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "DK", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "429", + "project_id": "2", + "geo_ip": "DK", + "name": "Betfair", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "33", + "project_id": "2", + "geo_ip": "DK", + "name": "NordicBet", + "premium_status_id": "2" + }], + "US": [], + "RO": [{ + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "RO", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "438", + "project_id": "2", + "geo_ip": "RO", + "name": "Fortuna.ro", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "161", + "project_id": "2", + "geo_ip": "RO", + "name": "NetBet", + "premium_status_id": "2" + }], + "TR": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "TR", + "name": "bet365", + "premium_status_id": "2" + }], + "PL": [{ + "main_bookmaker_id": "163", + "project_id": "2", + "geo_ip": "PL", + "name": "eFortuna.pl", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "165", + "project_id": "2", + "geo_ip": "PL", + "name": "STS.pl", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "502", + "project_id": "2", + "geo_ip": "PL", + "name": "Lvbet.pl", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "539", + "project_id": "2", + "geo_ip": "PL", + "name": "Betclic.pl", + "premium_status_id": "2" + }], + "TN": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "TN", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "TN", + "name": "1xBet", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "TN", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "TN", + "name": "William Hill", + "premium_status_id": "2" + }], + "KE": [{ + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "KE", + "name": "Betway Africa", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "544", + "project_id": "2", + "geo_ip": "KE", + "name": "Betika", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "KE", + "name": "bet365", + "premium_status_id": "2" + }], + "ZA": [{ + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "ZA", + "name": "Betway Africa", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "38", + "project_id": "2", + "geo_ip": "ZA", + "name": "Sportingbet", + "premium_status_id": "2" + }], + "AZ": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "AZ", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "AZ", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "AZ", + "name": "William Hill", + "premium_status_id": "2" + }], + "GH": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "GH", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "GH", + "name": "Betway Africa", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "GH", + "name": "bet365", + "premium_status_id": "2" + }], + "JP": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "JP", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "JP", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "JP", + "name": "William Hill", + "premium_status_id": "2" + }], + "LT": [{ + "main_bookmaker_id": "512", + "project_id": "2", + "geo_ip": "LT", + "name": "Betsafe.lt", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "LT", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "LT", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "LT", + "name": "William Hill", + "premium_status_id": "2" + }], + "TH": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "TH", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "TH", + "name": "1xBet", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "TH", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "TH", + "name": "William Hill", + "premium_status_id": "2" + }], + "UG": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "UG", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "UG", + "name": "Betway Africa", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "UG", + "name": "bet365", + "premium_status_id": "2" + }], + "VN": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "VN", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "VN", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "VN", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "VN", + "name": "William Hill", + "premium_status_id": "2" + }], + "NG": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "NG", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "NG", + "name": "Betway Africa", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "161", + "project_id": "2", + "geo_ip": "NG", + "name": "NetBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "509", + "project_id": "2", + "geo_ip": "NG", + "name": "Bet9ja", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "NG", + "name": "bet365", + "premium_status_id": "2" + }], + "EE": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "EE", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "508", + "project_id": "2", + "geo_ip": "EE", + "name": "Betsafe.ee", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "EE", + "name": "Unibet", + "premium_status_id": "2" + }], + "ID": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "ID", + "name": "1xBet", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "ID", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "ID", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "ID", + "name": "William Hill", + "premium_status_id": "2" + }], + "NL": [{ + "main_bookmaker_id": "24", + "project_id": "2", + "geo_ip": "NL", + "name": "Betsafe", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "27", + "project_id": "2", + "geo_ip": "NL", + "name": "888sport", + "premium_status_id": "2" + }], + "BE": [{ + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "BE", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "2", + "project_id": "2", + "geo_ip": "BE", + "name": "bwin", + "premium_status_id": "2" + }], + "BG": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "BG", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "2", + "project_id": "2", + "geo_ip": "BG", + "name": "bwin", + "premium_status_id": "2" + }], + "GR": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "GR", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "409", + "project_id": "2", + "geo_ip": "GR", + "name": "Stoiximan", + "premium_status_id": "2" + }], + "KZ": [{ + "main_bookmaker_id": "471", + "project_id": "2", + "geo_ip": "KZ", + "name": "1xBet.kz", + "premium_status_id": "2" + }], + "PT": [{ + "main_bookmaker_id": "459", + "project_id": "2", + "geo_ip": "PT", + "name": "Bet.pt", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "447", + "project_id": "2", + "geo_ip": "PT", + "name": "Betclic.pt", + "premium_status_id": "2" + }], + "SK": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "SK", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "411", + "project_id": "2", + "geo_ip": "SK", + "name": "Tipsport.sk", + "premium_status_id": "2" + }], + "UY": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "UY", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "2", + "project_id": "2", + "geo_ip": "UY", + "name": "bwin", + "premium_status_id": "2" + }], + "GE": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "GE", + "name": "bet365", + "premium_status_id": "2" + }], + "MX": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "MX", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "MX", + "name": "Unibet", + "premium_status_id": "2" + }], + "UA": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "UA", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "UA", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "UA", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "UA", + "name": "William Hill", + "premium_status_id": "2" + }], + "PE": [{ + "main_bookmaker_id": "43", + "project_id": "2", + "geo_ip": "PE", + "name": "Betsson", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "PE", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "483", + "project_id": "2", + "geo_ip": "PE", + "name": "Inkabet.pe", + "premium_status_id": "2" + }], + "LV": [{ + "main_bookmaker_id": "507", + "project_id": "2", + "geo_ip": "LV", + "name": "Betsafe.lv", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "LV", + "name": "bet365", + "premium_status_id": "2" + }], + "CY": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "CY", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "409", + "project_id": "2", + "geo_ip": "CY", + "name": "Stoiximan", + "premium_status_id": "2" + }], + "SE": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "SE", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "43", + "project_id": "2", + "geo_ip": "SE", + "name": "Betsson", + "premium_status_id": "2" + }], + "NO": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "NO", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "NO", + "name": "Unibet", + "premium_status_id": "2" + }], + "AL": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "AL", + "name": "bet365", + "premium_status_id": "2" + }], + "ZM": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "ZM", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "533", + "project_id": "2", + "geo_ip": "ZM", + "name": "Betway Africa", + "premium_status_id": "2" + }], + "TZ": [{ + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "TZ", + "name": "1xBet", + "premium_status_id": "2" + }], + "FI": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "FI", + "name": "bet365", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "FI", + "name": "Unibet", + "premium_status_id": "1" + }, { + "main_bookmaker_id": "33", + "project_id": "2", + "geo_ip": "FI", + "name": "NordicBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "383", + "project_id": "2", + "geo_ip": "FI", + "name": "ComeOn", + "premium_status_id": "2" + }], + "US:USNJ": [{ + "main_bookmaker_id": "549", + "project_id": "2", + "geo_ip": "US:USNJ", + "name": "bet365.nj", + "premium_status_id": "2" + }], + "IN": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "IN", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "IN", + "name": "1xBet", + "premium_status_id": "2" + }], + "CO": [{ + "main_bookmaker_id": "523", + "project_id": "2", + "geo_ip": "CO", + "name": "Wplay", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "562", + "project_id": "2", + "geo_ip": "CO", + "name": "Yajuego", + "premium_status_id": "2" + }], + "PH": [{ + "main_bookmaker_id": "16", + "project_id": "2", + "geo_ip": "PH", + "name": "bet365", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "5", + "project_id": "2", + "geo_ip": "PH", + "name": "Unibet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "417", + "project_id": "2", + "geo_ip": "PH", + "name": "1xBet", + "premium_status_id": "2" + }, { + "main_bookmaker_id": "15", + "project_id": "2", + "geo_ip": "PH", + "name": "William Hill", + "premium_status_id": "2" + }] + }, + "evaluator": { + "config": { + "BT_1X2": 1, + "BT_OU": 2, + "BT_ML": 3, + "BT_DC": 4, + "BT_AH": 5, + "BT_DNB": 6, + "BT_TQ": 7, + "BT_CS": 8, + "BT_HTFT": 9, + "BT_OE": 10, + "BT_LW": 11, + "OUTCOME_HOME": 1, + "OUTCOME_AWAY": 2, + "OUTCOME_DRAW": 3, + "OUTCOME_OVER": 4, + "OUTCOME_UNDER": 5, + "OUTCOME_AWAYDRAW": 7, + "OUTCOME_HOMEDRAW": 6, + "OUTCOME_HOMEAWAY": 8, + "OUTCOME_YES": 9, + "OUTCOME_NO": 10, + "RESULT_LOST": 1, + "RESULT_WON": 2, + "RESULT_RETURN": 3, + "RESULT_50RETURN50WON": 4, + "RESULT_50RETURN50LOST": 4 + }, + "statusReturnBet": { + "4": 0, + "5": 1, + "8": 2, + "9": 3, + "36": 4, + "37": 5, + "54": 6 + }, + "isSwapped": false + }, + "tabNames": { + "1x2": { + "urlName": "1x2-odds", + "fullName": "1X2 odds" + }, + "moneyline": { + "urlName": "home-away", + "fullName": "Home\/Away" + }, + "under-over": { + "urlName": "over-under", + "fullName": "Over\/Under" + }, + "asian-handicap": { + "urlName": "asian-handicap", + "fullName": "Asian handicap" + }, + "european-handicap": { + "urlName": "european-handicap", + "fullName": "European handicap" + }, + "double-chance": { + "urlName": "double-chance", + "fullName": "Double chance" + }, + "ht-ft": { + "urlName": "ht-ft", + "fullName": "Half Time\/Full Time" + }, + "correct-score": { + "urlName": "correct-score", + "fullName": "Correct score" + }, + "oddeven": { + "urlName": "odd-even", + "fullName": "Odd\/Even" + }, + "to-qualify": { + "urlName": "to-qualify", + "fullName": "To qualify" + }, + "both-teams-to-score": { + "urlName": "both-teams-to-score", + "fullName": "Both teams to score" + } + }, + "subTabNames": { + "ft": { + "urlName": "full-time" + }, + "ft-include-ot": { + "urlName": "ft-including-ot" + }, + "1hf": { + "urlName": "1st-half" + }, + "2hf": { + "urlName": "2nd-half" + }, + "1per": { + "urlName": "1st-period" + }, + "1qrt": { + "urlName": "1st-qrt" + }, + "set1": { + "urlName": "set-1" + }, + "set2": { + "urlName": "set-2" + } + }, + "geoOddsComparisonSettings": { + "default": true, + "GB": true, + "ES": true, + "IT": true, + "FR": true, + "AU": true, + "RU": true, + "KR": true, + "CZ": true, + "DK": true, + "US": false, + "RO": true, + "TR": false, + "PL": true, + "TN": true, + "KE": true, + "ZA": true, + "AZ": true, + "GH": true, + "JP": true, + "LT": true, + "TH": true, + "UG": true, + "VN": true, + "NG": true, + "EE": true, + "ID": true, + "NL": true, + "BE": true, + "BG": true, + "GR": true, + "KZ": true, + "PT": true, + "SK": true, + "UY": true, + "GE": false, + "MX": true, + "UA": true, + "PE": true, + "LV": true, + "CY": true, + "SE": true, + "NO": true, + "AL": false, + "ZM": true, + "TZ": true, + "FI": true, + "US:USNJ": false, + "IN": true, + "CO": true, + "PH": true + } + }, + "banners": { + "criteoSettings": { + "id": 1363226, + "width": 300, + "height": 250, + "class": "ban_envelope", + "nonCriteoZoneName": "detail", + "html": "\"\"<\/a>" + }, + "envelopes": "
    + + + + diff --git a/h2h.json b/h2h.json new file mode 100644 index 0000000..530cece --- /dev/null +++ b/h2h.json @@ -0,0 +1,2652 @@ +[ + { + "KA": "Overall" + }, + { + "KB": "Last matches: HSG WETZLAR" + }, + { + "KC": "1602781200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Bergischer", + "KK": "*HSG Wetzlar", + "KL": "20:22", + "KN": "w", + "KP": "vsGq0iSC", + "KS": "away" + }, + { + "KC": "1602347400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Kiel", + "KL": "31:22", + "KN": "w", + "KP": "ATOUnshd", + "KS": "home" + }, + { + "KC": "1602090000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Minden", + "KK": "*HSG Wetzlar", + "KL": "24:29", + "KN": "w", + "KP": "Qyone5pG", + "KS": "away" + }, + { + "KC": "1601820000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Flensburg-H.", + "KL": "27:29", + "KN": "l", + "KP": "YNo5NQOp", + "KS": "home" + }, + { + "KC": "1583610300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:26", + "KN": "l", + "KP": "dMnnwA89", + "KS": "away" + }, + { + "KC": "1583344800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Goppingen", + "KL": "31:30", + "KN": "w", + "KP": "dSHU0hqJ", + "KS": "home" + }, + { + "KC": "1582826400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Lemgo", + "KK": "HSG Wetzlar", + "KL": "32:27", + "KN": "l", + "KP": "W6upkep7", + "KS": "away" + }, + { + "KC": "1582470000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Flensburg-H.", + "KK": "HSG Wetzlar", + "KL": "31:28", + "KN": "l", + "KP": "jR04cYfH", + "KS": "away" + }, + { + "KC": "1581616800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Rhein-Neckar", + "KL": "27:27", + "KN": "d", + "KP": "SEMcwboe", + "KS": "home" + }, + { + "KC": "1581251400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Nordhorn-Lingen", + "KK": "*HSG Wetzlar", + "KL": "25:31", + "KN": "w", + "KP": "27iC0Uni", + "KS": "away" + }, + { + "KC": "1580578200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Bergischer", + "KL": "27:24", + "KN": "w", + "KP": "8WCZnBIi", + "KS": "home" + }, + { + "KC": "1577622600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*SC Magdeburg", + "KK": "HSG Wetzlar", + "KL": "34:27", + "KN": "l", + "KP": "2VNsGUmU", + "KS": "away" + }, + { + "KC": "1577379600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Ludwigshafen", + "KL": "26:23", + "KN": "w", + "KP": "YkWQJCl5", + "KS": "home" + }, + { + "KC": "1577026800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Kiel", + "KK": "*HSG Wetzlar", + "KL": "20:27", + "KN": "w", + "KP": "Gljr9VgT", + "KS": "away" + }, + { + "KC": "1576778400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Fuchse Berlin", + "KK": "HSG Wetzlar", + "KL": "32:27", + "KN": "l", + "KP": "p4lERmOj", + "KS": "away" + }, + { + "KC": "1576422000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Leipzig", + "KK": "*HSG Wetzlar", + "KL": "26:29", + "KN": "w", + "KP": "fTAeSQD8", + "KS": "away" + }, + { + "KC": "1575747000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Stuttgart", + "KL": "27:28", + "KN": "l", + "KP": "YasEFmU2", + "KS": "home" + }, + { + "KC": "1575212400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Erlangen", + "KK": "*HSG Wetzlar", + "KL": "25:31", + "KN": "w", + "KP": "IV5nzLAg", + "KS": "away" + }, + { + "KC": "1574964000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Goppingen", + "KK": "HSG Wetzlar", + "KL": "26:21", + "KN": "l", + "KP": "4KqlvR7d", + "KS": "away" + }, + { + "KC": "1574538300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Minden", + "KL": "26:23", + "KN": "w", + "KP": "Eyn6nk0G", + "KS": "home" + }, + { + "KC": "1573398000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Hannover-Burgdorf", + "KL": "25:25", + "KN": "d", + "KP": "bmQWEAvo", + "KS": "home" + }, + { + "KC": "1571331600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "26:30", + "KN": "l", + "KP": "MLs1ONBs", + "KS": "home" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KN": "l", + "KP": "URINA4sr", + "KS": "home" + }, + { + "KC": "1570370400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Rhein-Neckar", + "KK": "HSG Wetzlar", + "KL": "29:26", + "KN": "l", + "KP": "hWzM27kL", + "KS": "away" + }, + { + "KC": "1570039200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "25:26", + "KN": "l", + "KP": "C4ZscbdG", + "KS": "home" + }, + { + "KC": "1569517200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "SC Magdeburg", + "KL": "29:28", + "KN": "w", + "KP": "Ohvo1fEG", + "KS": "home" + }, + { + "KC": "1568912400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HBW Balingen-Weilstetten", + "KK": "*HSG Wetzlar", + "KL": "33:34", + "KN": "w", + "KP": "zTVH16mU", + "KS": "away" + }, + { + "KC": "1568556000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Nordhorn-Lingen", + "KL": "34:27", + "KN": "w", + "KP": "vszc6UYb", + "KS": "home" + }, + { + "KC": "1567951200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Bergischer", + "KK": "HSG Wetzlar", + "KL": "33:30", + "KN": "l", + "KP": "vwSZd6h6", + "KS": "away" + }, + { + "KC": "1567530000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Flensburg-H.", + "KL": "27:27", + "KN": "d", + "KP": "I9bhpT80", + "KS": "home" + }, + { + "KC": "1567098000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "*HSG Wetzlar", + "KL": "25:31", + "KN": "w", + "KP": "juSNUm9D", + "KS": "away" + }, + { + "KC": "1566493200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Lemgo", + "KL": "28:32", + "KN": "l", + "KP": "2J9yJjA1", + "KS": "home" + }, + { + "KC": "1566136800", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "Grosswallstadt", + "KK": "*HSG Wetzlar", + "KL": "27:30", + "KN": "w", + "KP": "zNWp0n2Q", + "KS": "away" + }, + { + "KC": "1566061200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HBW Balingen-Weilstetten", + "KK": "*HSG Wetzlar", + "KL": "28:36", + "KN": "w", + "KP": "6oyScN48", + "KS": "away" + }, + { + "KC": "1565357400", + "KF": "Club Friendly", + "KG": "8", + "KH": "World", + "KI": "CF", + "KJ": "*HSG Wetzlar", + "KK": "St. Raphael", + "KL": "29:26", + "KN": "w", + "KP": "CbUyv8TA", + "KS": "home" + }, + { + "KC": "1560085200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Fuchse Berlin", + "KK": "*HSG Wetzlar", + "KL": "25:27", + "KN": "w", + "KP": "n3we0WKq", + "KS": "away" + }, + { + "KC": "1559154600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Stuttgart", + "KL": "26:23", + "KN": "w", + "KP": "bw579zbc", + "KS": "home" + }, + { + "KC": "1558026000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Goppingen", + "KK": "*HSG Wetzlar", + "KL": "22:24", + "KN": "w", + "KP": "CMtQdcEi", + "KS": "away" + }, + { + "KC": "1557671400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*SC Magdeburg", + "KK": "HSG Wetzlar", + "KL": "30:25", + "KN": "l", + "KP": "QTGo4K4K", + "KS": "away" + }, + { + "KC": "1557421200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "23:27", + "KN": "l", + "KP": "IuXfCHds", + "KS": "home" + }, + { + "KC": "1556816400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Gummersbach", + "KL": "30:23", + "KN": "w", + "KP": "2krvoubr", + "KS": "home" + }, + { + "KC": "1556211600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Bietigheim-Metterzimmern", + "KK": "HSG Wetzlar", + "KL": "26:26", + "KN": "d", + "KP": "O4AHTwT7", + "KS": "away" + }, + { + "KC": "1555855200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Lemgo", + "KL": "27:28", + "KN": "l", + "KP": "U7GZIMEk", + "KS": "home" + }, + { + "KC": "1554031800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Hannover-Burgdorf", + "KK": "*HSG Wetzlar", + "KL": "23:25", + "KN": "w", + "KP": "vuTWLkVT", + "KS": "away" + }, + { + "KC": "1552834800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Erlangen", + "KL": "27:28", + "KN": "l", + "KP": "rVSgKxfP", + "KS": "home" + }, + { + "KC": "1552586400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Rhein-Neckar", + "KK": "HSG Wetzlar", + "KL": "31:21", + "KN": "l", + "KP": "lWBxCE15", + "KS": "away" + }, + { + "KC": "1551555000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "*HSG Wetzlar", + "KL": "25:29", + "KN": "w", + "KP": "tpXg1cmm", + "KS": "away" + }, + { + "KC": "1550772000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Minden", + "KL": "31:27", + "KN": "w", + "KP": "ritq6nZE", + "KS": "home" + }, + { + "KC": "1550415600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Bergischer", + "KK": "HSG Wetzlar", + "KL": "26:22", + "KN": "l", + "KP": "Y1dtnRsq", + "KS": "away" + }, + { + "KC": "1549562400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Flensburg-H.", + "KL": "23:30", + "KN": "l", + "KP": "QX4Uf19G", + "KS": "home" + }, + { + "KB": "Last matches: MT MELSUNGEN" + }, + { + "KC": "1602959400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "Minden", + "KL": "24:24", + "KN": "d", + "KP": "2em6Hhcm", + "KS": "home" + }, + { + "KC": "1602424800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Erlangen", + "KK": "MT Melsungen", + "KL": "31:21", + "KN": "l", + "KP": "p0tfO3E2", + "KS": "away" + }, + { + "KC": "1602003600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Lemgo", + "KL": "27:21", + "KN": "w", + "KP": "jBYRUW7p", + "KS": "home" + }, + { + "KC": "1601820000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HBW Balingen-Weilstetten", + "KK": "*MT Melsungen", + "KL": "23:25", + "KN": "w", + "KP": "0UwioUGi", + "KS": "away" + }, + { + "KC": "1599400800", + "KF": "EHF European League", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "MT Melsungen", + "KK": "*Bjerringbro/Silkeborg", + "KL": "24:26", + "KN": "l", + "KP": "pGz0VhfP", + "KS": "home" + }, + { + "KC": "1598805000", + "KF": "EHF European League", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Bjerringbro/Silkeborg", + "KK": "MT Melsungen", + "KL": "31:27", + "KN": "l", + "KP": "d0sI69HO", + "KS": "away" + }, + { + "KC": "1583610300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:26", + "KN": "w", + "KP": "dMnnwA89", + "KS": "home" + }, + { + "KC": "1583344800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Flensburg-H.", + "KK": "MT Melsungen", + "KL": "30:23", + "KN": "l", + "KP": "MkN56dFs", + "KS": "away" + }, + { + "KC": "1583005500", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*MT Melsungen", + "KK": "Bjerringbro/Silkeborg", + "KL": "35:33", + "KN": "w", + "KP": "2u9Dsj4m", + "KS": "home" + }, + { + "KC": "1582826400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Bergischer", + "KL": "28:25", + "KN": "w", + "KP": "lrjujyV0", + "KS": "home" + }, + { + "KC": "1582470000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "MT Melsungen", + "KL": "25:25", + "KN": "d", + "KP": "tInXic0l", + "KS": "away" + }, + { + "KC": "1582134300", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Bjerringbro/Silkeborg", + "KK": "MT Melsungen", + "KL": "35:31", + "KN": "l", + "KP": "reStmCtQ", + "KS": "away" + }, + { + "KC": "1581783300", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Benfica", + "KK": "MT Melsungen", + "KL": "29:26", + "KN": "l", + "KP": "GlzeP8lJ", + "KS": "away" + }, + { + "KC": "1581616800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*Stuttgart", + "KL": "21:26", + "KN": "l", + "KP": "006HcSW9", + "KS": "home" + }, + { + "KC": "1581256800", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*MT Melsungen", + "KK": "Gwardia Opole", + "KL": "26:21", + "KN": "w", + "KP": "fZonRUJ6", + "KS": "home" + }, + { + "KC": "1581012000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Rhein-Neckar", + "KK": "*MT Melsungen", + "KL": "30:33", + "KN": "w", + "KP": "MgJkqTHG", + "KS": "away" + }, + { + "KC": "1577622600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Erlangen", + "KK": "*MT Melsungen", + "KL": "25:30", + "KN": "w", + "KP": "zJhdZilh", + "KS": "away" + }, + { + "KC": "1577365200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HBW Balingen-Weilstetten", + "KL": "36:23", + "KN": "w", + "KP": "WQZ9Nfkt", + "KS": "home" + }, + { + "KC": "1577017800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*SC Magdeburg", + "KK": "MT Melsungen", + "KL": "26:25", + "KN": "l", + "KP": "0YPu7Gs0", + "KS": "away" + }, + { + "KC": "1576173600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Stuttgart", + "KK": "MT Melsungen", + "KL": "31:28", + "KN": "l", + "KP": "pbT4536e", + "KS": "away" + }, + { + "KC": "1575568800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Ludwigshafen", + "KL": "26:25", + "KN": "w", + "KP": "h44Ripxd", + "KS": "home" + }, + { + "KC": "1575396000", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "*MT Melsungen", + "KK": "Fuchse Berlin", + "KL": "33:30", + "KN": "w", + "KP": "jJODLrAA", + "KS": "home" + }, + { + "KC": "1574964000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Fuchse Berlin", + "KK": "MT Melsungen", + "KL": "28:22", + "KN": "l", + "KP": "6ZQpu7hj", + "KS": "away" + }, + { + "KC": "1574611200", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "Olympiacos SFP", + "KK": "*MT Melsungen", + "KL": "19:20", + "KN": "w", + "KP": "x2Bc9uJ5", + "KS": "away" + }, + { + "KC": "1574359200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Goppingen", + "KL": "30:17", + "KN": "w", + "KP": "I9hclBV3", + "KS": "home" + }, + { + "KC": "1573927200", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*MT Melsungen", + "KK": "Olympiacos SFP", + "KL": "32:28", + "KN": "w", + "KP": "bBCgAL3a", + "KS": "home" + }, + { + "KC": "1573754400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Minden", + "KK": "*MT Melsungen", + "KL": "27:29", + "KN": "w", + "KP": "pt6Rzh14", + "KS": "away" + }, + { + "KC": "1573327800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*Leipzig", + "KL": "31:34", + "KN": "l", + "KP": "4n8bXIfC", + "KS": "home" + }, + { + "KC": "1572544800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Kiel", + "KK": "MT Melsungen", + "KL": "38:26", + "KN": "l", + "KP": "n9bRCDf4", + "KS": "away" + }, + { + "KC": "1571331600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Erlangen", + "KL": "28:27", + "KN": "w", + "KP": "441UTqlK", + "KS": "home" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KN": "w", + "KP": "URINA4sr", + "KS": "away" + }, + { + "KC": "1570370400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Hannover-Burgdorf", + "KL": "31:25", + "KN": "w", + "KP": "8dticoDr", + "KS": "home" + }, + { + "KC": "1569949200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "Leipzig", + "KK": "*MT Melsungen", + "KL": "27:30", + "KN": "w", + "KP": "MFtVa0Cc", + "KS": "away" + }, + { + "KC": "1569517200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Rhein-Neckar", + "KL": "31:26", + "KN": "w", + "KP": "p2us2zaA", + "KS": "home" + }, + { + "KC": "1569160800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Nordhorn-Lingen", + "KK": "*MT Melsungen", + "KL": "24:31", + "KN": "w", + "KP": "fDnU4xFi", + "KS": "away" + }, + { + "KC": "1568307600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "SC Magdeburg", + "KL": "31:29", + "KN": "w", + "KP": "4Osp9Wlt", + "KS": "home" + }, + { + "KC": "1567951200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HBW Balingen-Weilstetten", + "KK": "MT Melsungen", + "KL": "36:23", + "KN": "l", + "KP": "CUrCwIio", + "KS": "away" + }, + { + "KC": "1567616400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Lemgo", + "KL": "26:23", + "KN": "w", + "KP": "4Q04sRhJ", + "KS": "home" + }, + { + "KC": "1567098000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Bergischer", + "KK": "MT Melsungen", + "KL": "24:24", + "KN": "d", + "KP": "fDYEW9v1", + "KS": "away" + }, + { + "KC": "1566741600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*Flensburg-H.", + "KL": "19:24", + "KN": "l", + "KP": "IRiOtf28", + "KS": "home" + }, + { + "KC": "1566133200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "*MT Melsungen", + "KK": "Bietigheim-Metterzimmern", + "KL": "31:25", + "KN": "w", + "KP": "lQdKEoHJ", + "KS": "home" + }, + { + "KC": "1566052200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "*MT Melsungen", + "KK": "Rimpar", + "KL": "31:24", + "KN": "w", + "KP": "n3i8wgJg", + "KS": "home" + }, + { + "KC": "1560085200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Lemgo", + "KL": "31:27", + "KN": "w", + "KP": "KUj2bAkd", + "KS": "home" + }, + { + "KC": "1559154600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Erlangen", + "KK": "*MT Melsungen", + "KL": "24:25", + "KN": "w", + "KP": "Kn63AGri", + "KS": "away" + }, + { + "KC": "1558630800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Hannover-Burgdorf", + "KL": "28:25", + "KN": "w", + "KP": "6qtUeHTc", + "KS": "home" + }, + { + "KC": "1558026000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Flensburg-H.", + "KK": "MT Melsungen", + "KL": "30:24", + "KN": "l", + "KP": "EDyPHwZJ", + "KS": "away" + }, + { + "KC": "1557657000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*Rhein-Neckar", + "KL": "23:26", + "KN": "l", + "KP": "IRiMcIsl", + "KS": "home" + }, + { + "KC": "1556816400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "*MT Melsungen", + "KL": "22:27", + "KN": "w", + "KP": "x8zirwr1", + "KS": "away" + }, + { + "KC": "1556389800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "Minden", + "KL": "26:21", + "KN": "w", + "KP": "fPI0XLTr", + "KS": "home" + }, + { + "KC": "1555785000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Bergischer", + "KK": "MT Melsungen", + "KL": "25:24", + "KN": "l", + "KP": "vwbQupM2", + "KS": "away" + }, + { + "KB": "Head-to-head matches: HSG WETZLAR - MT MELSUNGEN" + }, + { + "KC": "1583610300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:26", + "KP": "dMnnwA89" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KP": "URINA4sr" + }, + { + "KC": "1545933600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "26:24", + "KP": "6BbZztIp" + }, + { + "KC": "1539712800", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "20:28", + "KP": "bBpgzwm9" + }, + { + "KC": "1536858000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:34", + "KP": "E11BEwmN" + }, + { + "KC": "1524402000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "31:28", + "KP": "0xYx8M1M" + }, + { + "KC": "1510428600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "29:22", + "KP": "YZBexVbA" + }, + { + "KC": "1486576800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "27:22", + "KP": "jVjCOhHg" + }, + { + "KC": "1479319200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*HSG Wetzlar", + "KL": "25:28", + "KP": "xd4lSnVr" + }, + { + "KC": "1456596000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "29:22", + "KP": "pb72eiSo" + }, + { + "KC": "1449859500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:25", + "KP": "dWkCwTaU" + }, + { + "KC": "1424286900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "29:31", + "KP": "tCROd2Kl" + }, + { + "KC": "1411822800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:28", + "KP": "zkDBSFDH" + }, + { + "KC": "1394306100", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "*HSG Wetzlar", + "KL": "24:32", + "KP": "SKszKBta" + }, + { + "KC": "1381072500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:30", + "KP": "zm4wwZDl" + }, + { + "KC": "1361118600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:26", + "KP": "IyebvHbk" + }, + { + "KC": "1347128100", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:25", + "KP": "IHUw1vwU" + }, + { + "KC": "1335013200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:26", + "KP": "z1Cy5DOa" + }, + { + "KC": "1322413200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "30:30", + "KP": "0Wabyyv4" + }, + { + "KC": "1307197800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "0:0", + "KP": "OAMNGRlA" + }, + { + "KC": "1293045300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "26:24", + "KP": "44ftzWep" + }, + { + "KC": "1275152400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "32:30", + "KP": "CSURLFho" + }, + { + "KC": "1261595700", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "30:27", + "KP": "Wn0nvgZp" + }, + { + "KC": "1239462000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "31:27", + "KP": "fmPDlo0Q" + }, + { + "KC": "1225029600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "30:30", + "KP": "Cv096zhH" + }, + { + "KC": "1204387200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "28:28", + "KP": "tAx675se" + }, + { + "KC": "1191164400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "34:23", + "KP": "CGkuwTda" + }, + { + "KC": "1172325600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "37:30", + "KP": "0MPBXxpt" + }, + { + "KC": "1157895900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "22:26", + "KP": "S054rouF" + }, + { + "KC": "1143310500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*MT Melsungen", + "KK": "HSG Wetzlar", + "KL": "36:32", + "KP": "xMLqbEHm" + }, + { + "KC": "1129474800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "24:27", + "KP": "trdRTyXi" + }, + { + "KA": "HSG Wetzlar - Home" + }, + { + "KB": "Last matches: HSG WETZLAR" + }, + { + "KC": "1602347400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Kiel", + "KL": "31:22", + "KN": "w", + "KP": "ATOUnshd", + "KS": "home" + }, + { + "KC": "1601820000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Flensburg-H.", + "KL": "27:29", + "KN": "l", + "KP": "YNo5NQOp", + "KS": "home" + }, + { + "KC": "1583344800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Goppingen", + "KL": "31:30", + "KN": "w", + "KP": "dSHU0hqJ", + "KS": "home" + }, + { + "KC": "1581616800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Rhein-Neckar", + "KL": "27:27", + "KN": "d", + "KP": "SEMcwboe", + "KS": "home" + }, + { + "KC": "1580578200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Bergischer", + "KL": "27:24", + "KN": "w", + "KP": "8WCZnBIi", + "KS": "home" + }, + { + "KC": "1577379600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Ludwigshafen", + "KL": "26:23", + "KN": "w", + "KP": "YkWQJCl5", + "KS": "home" + }, + { + "KC": "1575747000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Stuttgart", + "KL": "27:28", + "KN": "l", + "KP": "YasEFmU2", + "KS": "home" + }, + { + "KC": "1574538300", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Minden", + "KL": "26:23", + "KN": "w", + "KP": "Eyn6nk0G", + "KS": "home" + }, + { + "KC": "1573398000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Hannover-Burgdorf", + "KL": "25:25", + "KN": "d", + "KP": "bmQWEAvo", + "KS": "home" + }, + { + "KC": "1571331600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "26:30", + "KN": "l", + "KP": "MLs1ONBs", + "KS": "home" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KN": "l", + "KP": "URINA4sr", + "KS": "home" + }, + { + "KC": "1570039200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "25:26", + "KN": "l", + "KP": "C4ZscbdG", + "KS": "home" + }, + { + "KC": "1569517200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "SC Magdeburg", + "KL": "29:28", + "KN": "w", + "KP": "Ohvo1fEG", + "KS": "home" + }, + { + "KC": "1568556000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Nordhorn-Lingen", + "KL": "34:27", + "KN": "w", + "KP": "vszc6UYb", + "KS": "home" + }, + { + "KC": "1567530000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "Flensburg-H.", + "KL": "27:27", + "KN": "d", + "KP": "I9bhpT80", + "KS": "home" + }, + { + "KC": "1566493200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Lemgo", + "KL": "28:32", + "KN": "l", + "KP": "2J9yJjA1", + "KS": "home" + }, + { + "KC": "1565357400", + "KF": "Club Friendly", + "KG": "8", + "KH": "World", + "KI": "CF", + "KJ": "*HSG Wetzlar", + "KK": "St. Raphael", + "KL": "29:26", + "KN": "w", + "KP": "CbUyv8TA", + "KS": "home" + }, + { + "KC": "1559154600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Stuttgart", + "KL": "26:23", + "KN": "w", + "KP": "bw579zbc", + "KS": "home" + }, + { + "KC": "1557421200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Kiel", + "KL": "23:27", + "KN": "l", + "KP": "IuXfCHds", + "KS": "home" + }, + { + "KC": "1556816400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Gummersbach", + "KL": "30:23", + "KN": "w", + "KP": "2krvoubr", + "KS": "home" + }, + { + "KC": "1555855200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Lemgo", + "KL": "27:28", + "KN": "l", + "KP": "U7GZIMEk", + "KS": "home" + }, + { + "KC": "1552834800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Erlangen", + "KL": "27:28", + "KN": "l", + "KP": "rVSgKxfP", + "KS": "home" + }, + { + "KC": "1550772000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "Minden", + "KL": "31:27", + "KN": "w", + "KP": "ritq6nZE", + "KS": "home" + }, + { + "KC": "1549562400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*Flensburg-H.", + "KL": "23:30", + "KN": "l", + "KP": "QX4Uf19G", + "KS": "home" + }, + { + "KB": "Head-to-head matches: HSG WETZLAR - MT MELSUNGEN" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KP": "URINA4sr" + }, + { + "KC": "1539712800", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "20:28", + "KP": "bBpgzwm9" + }, + { + "KC": "1536858000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:34", + "KP": "E11BEwmN" + }, + { + "KC": "1524402000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "31:28", + "KP": "0xYx8M1M" + }, + { + "KC": "1486576800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "27:22", + "KP": "jVjCOhHg" + }, + { + "KC": "1449859500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:25", + "KP": "dWkCwTaU" + }, + { + "KC": "1424286900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "29:31", + "KP": "tCROd2Kl" + }, + { + "KC": "1381072500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:30", + "KP": "zm4wwZDl" + }, + { + "KC": "1361118600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:26", + "KP": "IyebvHbk" + }, + { + "KC": "1335013200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:26", + "KP": "z1Cy5DOa" + }, + { + "KC": "1307197800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "0:0", + "KP": "OAMNGRlA" + }, + { + "KC": "1275152400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "32:30", + "KP": "CSURLFho" + }, + { + "KC": "1225029600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "30:30", + "KP": "Cv096zhH" + }, + { + "KC": "1191164400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "34:23", + "KP": "CGkuwTda" + }, + { + "KC": "1157895900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "22:26", + "KP": "S054rouF" + }, + { + "KC": "1129474800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "24:27", + "KP": "trdRTyXi" + }, + { + "KA": "MT Melsungen - Away" + }, + { + "KB": "Last matches: MT MELSUNGEN" + }, + { + "KC": "1602424800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Erlangen", + "KK": "MT Melsungen", + "KL": "31:21", + "KN": "l", + "KP": "p0tfO3E2", + "KS": "away" + }, + { + "KC": "1601820000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HBW Balingen-Weilstetten", + "KK": "*MT Melsungen", + "KL": "23:25", + "KN": "w", + "KP": "0UwioUGi", + "KS": "away" + }, + { + "KC": "1598805000", + "KF": "EHF European League", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Bjerringbro/Silkeborg", + "KK": "MT Melsungen", + "KL": "31:27", + "KN": "l", + "KP": "d0sI69HO", + "KS": "away" + }, + { + "KC": "1583344800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Flensburg-H.", + "KK": "MT Melsungen", + "KL": "30:23", + "KN": "l", + "KP": "MkN56dFs", + "KS": "away" + }, + { + "KC": "1582470000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "MT Melsungen", + "KL": "25:25", + "KN": "d", + "KP": "tInXic0l", + "KS": "away" + }, + { + "KC": "1582134300", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Bjerringbro/Silkeborg", + "KK": "MT Melsungen", + "KL": "35:31", + "KN": "l", + "KP": "reStmCtQ", + "KS": "away" + }, + { + "KC": "1581783300", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "*Benfica", + "KK": "MT Melsungen", + "KL": "29:26", + "KN": "l", + "KP": "GlzeP8lJ", + "KS": "away" + }, + { + "KC": "1581012000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Rhein-Neckar", + "KK": "*MT Melsungen", + "KL": "30:33", + "KN": "w", + "KP": "MgJkqTHG", + "KS": "away" + }, + { + "KC": "1577622600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Erlangen", + "KK": "*MT Melsungen", + "KL": "25:30", + "KN": "w", + "KP": "zJhdZilh", + "KS": "away" + }, + { + "KC": "1577017800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*SC Magdeburg", + "KK": "MT Melsungen", + "KL": "26:25", + "KN": "l", + "KP": "0YPu7Gs0", + "KS": "away" + }, + { + "KC": "1576173600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Stuttgart", + "KK": "MT Melsungen", + "KL": "31:28", + "KN": "l", + "KP": "pbT4536e", + "KS": "away" + }, + { + "KC": "1574964000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Fuchse Berlin", + "KK": "MT Melsungen", + "KL": "28:22", + "KN": "l", + "KP": "6ZQpu7hj", + "KS": "away" + }, + { + "KC": "1574611200", + "KF": "EHF Cup", + "KG": "6", + "KH": "Europe", + "KI": "EHF", + "KJ": "Olympiacos SFP", + "KK": "*MT Melsungen", + "KL": "19:20", + "KN": "w", + "KP": "x2Bc9uJ5", + "KS": "away" + }, + { + "KC": "1573754400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Minden", + "KK": "*MT Melsungen", + "KL": "27:29", + "KN": "w", + "KP": "pt6Rzh14", + "KS": "away" + }, + { + "KC": "1572544800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Kiel", + "KK": "MT Melsungen", + "KL": "38:26", + "KN": "l", + "KP": "n9bRCDf4", + "KS": "away" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KN": "w", + "KP": "URINA4sr", + "KS": "away" + }, + { + "KC": "1569949200", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "Leipzig", + "KK": "*MT Melsungen", + "KL": "27:30", + "KN": "w", + "KP": "MFtVa0Cc", + "KS": "away" + }, + { + "KC": "1569160800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Nordhorn-Lingen", + "KK": "*MT Melsungen", + "KL": "24:31", + "KN": "w", + "KP": "fDnU4xFi", + "KS": "away" + }, + { + "KC": "1567951200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HBW Balingen-Weilstetten", + "KK": "MT Melsungen", + "KL": "36:23", + "KN": "l", + "KP": "CUrCwIio", + "KS": "away" + }, + { + "KC": "1567098000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Bergischer", + "KK": "MT Melsungen", + "KL": "24:24", + "KN": "d", + "KP": "fDYEW9v1", + "KS": "away" + }, + { + "KC": "1559154600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Erlangen", + "KK": "*MT Melsungen", + "KL": "24:25", + "KN": "w", + "KP": "Kn63AGri", + "KS": "away" + }, + { + "KC": "1558026000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Flensburg-H.", + "KK": "MT Melsungen", + "KL": "30:24", + "KN": "l", + "KP": "EDyPHwZJ", + "KS": "away" + }, + { + "KC": "1556816400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "Ludwigshafen", + "KK": "*MT Melsungen", + "KL": "22:27", + "KN": "w", + "KP": "x8zirwr1", + "KS": "away" + }, + { + "KC": "1555785000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*Bergischer", + "KK": "MT Melsungen", + "KL": "25:24", + "KN": "l", + "KP": "vwbQupM2", + "KS": "away" + }, + { + "KB": "Head-to-head matches: HSG WETZLAR - MT MELSUNGEN" + }, + { + "KC": "1570975200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:31", + "KP": "URINA4sr" + }, + { + "KC": "1539712800", + "KF": "DHB Pokal", + "KG": "81", + "KH": "Germany", + "KI": "DHB", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "20:28", + "KP": "bBpgzwm9" + }, + { + "KC": "1536858000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "26:34", + "KP": "E11BEwmN" + }, + { + "KC": "1524402000", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "31:28", + "KP": "0xYx8M1M" + }, + { + "KC": "1486576800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "27:22", + "KP": "jVjCOhHg" + }, + { + "KC": "1449859500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:25", + "KP": "dWkCwTaU" + }, + { + "KC": "1424286900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "29:31", + "KP": "tCROd2Kl" + }, + { + "KC": "1381072500", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:30", + "KP": "zm4wwZDl" + }, + { + "KC": "1361118600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "29:26", + "KP": "IyebvHbk" + }, + { + "KC": "1335013200", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "25:26", + "KP": "z1Cy5DOa" + }, + { + "KC": "1307197800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "0:0", + "KP": "OAMNGRlA" + }, + { + "KC": "1275152400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "32:30", + "KP": "CSURLFho" + }, + { + "KC": "1225029600", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "30:30", + "KP": "Cv096zhH" + }, + { + "KC": "1191164400", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "*HSG Wetzlar", + "KK": "MT Melsungen", + "KL": "34:23", + "KP": "CGkuwTda" + }, + { + "KC": "1157895900", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "22:26", + "KP": "S054rouF" + }, + { + "KC": "1129474800", + "KF": "Bundesliga", + "KG": "81", + "KH": "Germany", + "KI": "BUN", + "KJ": "HSG Wetzlar", + "KK": "*MT Melsungen", + "KL": "24:27", + "KP": "trdRTyXi" + }, + { + "A1": "" + } +] diff --git a/handball.sgo b/handball.sgo new file mode 100644 index 0000000..079ddc4 --- /dev/null +++ b/handball.sgo @@ -0,0 +1,203 @@ +package flashscore + +import ( + "bytes" + "fmt" + webspider "spider" + "time" + + "github.com/PuerkitoBio/goquery" +) + +func listScheduledHandballMatches() (result []ScheduledMatch, err error) { + + spider, err := webspider.NewSpider(nil) + if err != nil { + panic(err) + } + + // Загружаем AJAX страницу с таблицами матчей + //url := fmt.Sprintf(h2hTablesURLPattern, matchID) + + buf, err := spider.Get(handballAllGamesFeedURL, map[string]string{ + "referer": "https://d.flashscore.com/x/feed/proxy-local", + "x-requested-with": "XMLHttpRequest", + // Важное поле! Код можно найти в исходниках либо подсмотреть. Без кода + // сервер отдает 401 ошибку + "x-fsign": feedSign, + "x-referer": "https://www.flashscore.com/handball/", + "x-geoip": "1", + }) + if err != nil { + err = fmt.Errorf("Load handball All Games feed: %s", err) + return + } + + result, err = parseListOfScheduledMatches(string(buf)) + if err != nil { + err = fmt.Errorf("parseListOfScheduledMatches: %s", err) + return + } + return +} + +func Check() (err error) { + matches, err := listScheduledHandballMatches() + if err != nil { + return + } + + matches = DiscardScheduledMatchesFurtherThan(matches, 24*time.Hour) + + for _, m := range matches { + report, err := GetUpcomingMatchReport(m.MatchID) + if err != nil { + // log + } + } + return +} + +func GetUpcomingMatchReport(matchID string) (report HandballUpcomingMatchReport, err error) { + report.IsComplete = true + + spider, err := webspider.NewSpider(nil) + if err != nil { + panic(err) + } + + // Загружаем Landing + landingURL := fmt.Sprintf(h2hLandingURLPattern, matchID) + + buf, err := spider.Get(landingURL, nil) + if err != nil { + err = fmt.Errorf("load h2hLanding: %s", err) + return + } + + doc, err := goquery.NewDocumentFromReader(bytes.NewBuffer(buf)) + if err != nil { + err = fmt.Errorf("goquery.NewDocumentFromReader: %s", err) + return + } + + // FIX - добавить чемпионат и парсинг инфы + //_, _, report.Home, report.Away, err = s.parseFootballMatchInfo(doc) + //if err != nil { + // return + //} + + // Загружаем AJAX страницу с таблицами матчей + url := fmt.Sprintf(h2hTablesURLPattern, matchID) + + buf, err = spider.Get(url, map[string]string{ + "referer": "https://d.flashscore.com/x/feed/proxy-local", + "x-requested-with": "XMLHttpRequest", + // Важное поле! Код можно найти в исходниках либо подсмотреть. Без кода + // сервер отдает 401 ошибку + "x-fsign": feedSign, + "x-referer": fmt.Sprintf(h2hLandingURLPattern, matchID), + "x-geoip": "1", + }) + if err != nil { + err = fmt.Errorf("load h2hTables: %s", err) + return + } + + doc, err = goquery.NewDocumentFromReader(bytes.NewBuffer(buf)) + if err != nil { + err = fmt.Errorf("goquery.NewDocumentFromReader: %s", err) + return + } + // var (dirtyTeamID string + + // OVERALL - последние матчи команд (хозяев и гостей) + // Внутри блока
    + + + + +Premier League 2019/2020 Fixtures - Football/England + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +

    Premier League 2019/2020 Schedule, Premier League 2019/2020 Fixtures, Upcoming Matches

    +
    +
    + +
    advertisement
    advertisement
    advertisement
    +
    +
    + + +
    FIRST TO DELIVER YOUR SCORES!
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    +
    +
    advertisement
    advertisement

    Football England

    +
    +
    +
    +
    +
    + +
    +
    Premier League +
    +
    +
    2019/2020
    +
    +
    +
    + +
    +
    +
    + + +
    +
    Loading...
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    fixtures
    SA÷1¬~ZA÷ENGLAND: Premier League¬ZEE÷dYlOSQOD¬ZB÷198¬ZY÷England¬ZC÷CxZEqxa7¬ZD÷t¬ZE÷h2NtrDMq¬ZF÷0¬ZO÷0¬ZG÷1¬ZH÷198_dYlOSQOD¬ZJ÷2¬ZL÷/football/england/premier-league/¬ZX÷00England 007ngland0000000000001000Premier Leag014League000¬ZCC÷0¬ZAF÷England¬~AA÷lUKXoAEo¬AD÷1592413200¬ADE÷1592413200¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nRFp2xPk¬WU÷aston-villa¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Uk5k1dvd¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|27|471¬~AA÷OnDpq8b4¬AD÷1592421300¬ADE÷1592421300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷fkCtMcGL¬WU÷manchester-city¬WN÷ARS¬AF÷Arsenal¬JB÷lCBpLHVR¬WV÷arsenal¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|49|45|544|27|471|411¬~AA÷riQ962dS¬AD÷1592586000¬ADE÷1592586000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hKQ0z9hT¬WU÷norwich¬WN÷SOU¬AF÷Southampton¬JB÷AaDSVS0p¬WV÷southampton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lY2x2M4q¬AD÷1592594100¬ADE÷1592594100¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷ljCWUnGj¬WU÷tottenham¬WN÷MNU¬AF÷Manchester Utd¬JB÷Q7eFgWhi¬WV÷manchester-united¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷2y7t1tKk¬AD÷1592652600¬ADE÷1592652600¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷4bfJhj8c¬WU÷watford¬WN÷LEI¬AF÷Leicester¬JB÷bLgNiAN3¬WV÷leicester¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lAOgApc3¬AD÷1592661600¬ADE÷1592661600¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷GOYkI9Wp¬WU÷brighton¬WN÷ARS¬AF÷Arsenal¬JB÷URMXtg9o¬WV÷arsenal¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷db6p00Ze¬AD÷1592670600¬ADE÷1592670600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷COcRjUxA¬WU÷west-ham¬WN÷WOL¬AF÷Wolves¬JB÷fmmWklhG¬WV÷wolves¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷M3W7ns5d¬AD÷1592678700¬ADE÷1592678700¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷0jXIPivB¬WU÷bournemouth¬WN÷CRY¬AF÷Crystal Palace¬JB÷fDWMOBgH¬WV÷crystal-palace¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"},{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷40R57rsM¬AD÷1592744400¬ADE÷1592744400¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷CAIhxVNG¬WU÷newcastle-utd¬WN÷SHU¬AF÷Sheffield Utd¬JB÷fZ7cykwN¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷z7KkBQsc¬AD÷1592752500¬ADE÷1592752500¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷Y3VQNV8N¬WU÷aston-villa¬WN÷CHE¬AF÷Chelsea¬JB÷EFnOMkOT¬WV÷chelsea¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷WYDb94C9¬AD÷1592762400¬ADE÷1592762400¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷rVQytDOi¬WU÷everton¬WN÷LIV¬AF÷Liverpool¬JB÷QgGtuXwb¬WV÷liverpool¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|471¬~AA÷APC28ORF¬AD÷1592852400¬ADE÷1592852400¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷4pFpvig4¬WU÷manchester-city¬WN÷BUR¬AF÷Burnley¬JB÷YJJlwB8A¬WV÷burnley¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷jcmyNNt9¬AD÷1592931600¬ADE÷1592931600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Ee2GUwM7¬WU÷leicester¬WN÷BHA¬AF÷Brighton¬JB÷SbjbgNb8¬WV÷brighton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷O86P0XP6¬AD÷1592939700¬ADE÷1592939700¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷GK8p5KcK¬WU÷tottenham¬WN÷WHU¬AF÷West Ham¬JB÷As8l4vDQ¬WV÷west-ham¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷fTE84FQs¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷2HrBjLrR¬WU÷manchester-united¬WN÷SHU¬AF÷Sheffield Utd¬JB÷KdVxnuir¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷xh4D3Zul¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷WWYtoa6l¬WU÷newcastle-utd¬WN÷AST¬AF÷Aston Villa¬JB÷EeOopJLf¬WV÷aston-villa¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷Gr3H2gef¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hnNkqwy1¬WU÷norwich¬WN÷EVE¬AF÷Everton¬JB÷MLRgrcj7¬WV÷everton¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷6XeUaiuD¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷CjfGabLs¬WU÷wolves¬WN÷BOU¬AF÷Bournemouth¬JB÷vDQCbIzl¬WV÷bournemouth¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷pKnuMsdF¬AD÷1593026100¬ADE÷1593026100¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷6kk2hsEE¬WU÷liverpool¬WN÷CRY¬AF÷Crystal Palace¬JB÷OQq7i1TK¬WV÷crystal-palace¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷zk5laKl2¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷WCAaYLMr¬WU÷burnley¬WN÷WAT¬AF÷Watford¬JB÷vwA3Xuxk¬WV÷watford¬AL÷{"1":[{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷pI7L1DA0¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷0CQcsH5D¬WU÷southampton¬WN÷ARS¬AF÷Arsenal¬JB÷2H4t60rE¬WV÷arsenal¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷C6lXN3R2¬AD÷1593112500¬ADE÷1593112500¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷IT87Waie¬WU÷chelsea¬WN÷MCI¬AF÷Manchester City¬JB÷0hbCVJ61¬WV÷manchester-city¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷CUnKMEnQ¬AD÷1593257400¬ADE÷1593257400¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nqHXgfkJ¬WU÷aston-villa¬WN÷WOL¬AF÷Wolves¬JB÷zaAFIwSJ¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷OUs0DA9C¬AD÷1593358200¬ADE÷1593358200¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷CQAPQzKt¬WU÷watford¬WN÷SOU¬AF÷Southampton¬JB÷KjATPfZn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷fkjqHhAm¬AD÷1593457200¬ADE÷1593457200¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷W6kjCy5m¬WU÷crystal-palace¬WN÷BUR¬AF÷Burnley¬JB÷QTlfBeKg¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷GbiuIYfs¬AD÷1593544500¬ADE÷1593544500¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷Ek9JHcsQ¬WU÷brighton¬WN÷MNU¬AF÷Manchester Utd¬JB÷KWonDHks¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷YwlGNfXJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷QTSOeGK6¬WU÷arsenal¬WN÷NOR¬AF÷Norwich¬JB÷8hITfzzD¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷Kz0YbBfJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷I3PGcxjf¬WU÷bournemouth¬WN÷NEW¬AF÷Newcastle¬JB÷CQOKdd50¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷lCkmGCPg¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷4KmbAFZa¬WU÷everton¬WN÷LEI¬AF÷Leicester¬JB÷Mer39Zl6¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷h4n4CUOI¬AD÷1593630900¬ADE÷1593630900¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bs9XOElg¬WU÷west-ham¬WN÷CHE¬AF÷Chelsea¬JB÷t6bxOY3a¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷pvqdEjf6¬AD÷1593709200¬ADE÷1593709200¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷8CpF6XYO¬WU÷sheffield-utd¬WN÷TOT¬AF÷Tottenham¬JB÷AHOcVGBP¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷2FgiFWv0¬AD÷1593717300¬ADE÷1593717300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷0ns78g4C¬WU÷manchester-city¬WN÷LIV¬AF÷Liverpool¬JB÷f9tB7DJI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷Wfo8BlvP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷f92tNhJ5¬WU÷burnley¬WN÷SHU¬AF÷Sheffield Utd¬JB÷lW1pMCYB¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷zTBlKtrP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷SM0lLWmI¬WU÷chelsea¬WN÷WAT¬AF÷Watford¬JB÷rXJI34Ip¬WV÷watford¬AW÷1¬AN÷n¬~AA÷dWHFF0jt¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷MNIM2OXj¬WU÷leicester¬WN÷CRY¬AF÷Crystal Palace¬JB÷zR64R7Ai¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷jgHJEK5n¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷YBP7QRPc¬WU÷liverpool¬WN÷AST¬AF÷Aston Villa¬JB÷GzFCPou4¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷UqGNDvLh¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷fRDGO5fA¬WU÷manchester-united¬WN÷BOU¬AF÷Bournemouth¬JB÷O0IKNP9G¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷nLASCbza¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2iHOMqPM¬WU÷newcastle-utd¬WN÷WHU¬AF÷West Ham¬JB÷pG6TL3vT¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷QB9WBIk5¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷MybeHNnp¬WU÷norwich¬WN÷BHA¬AF÷Brighton¬JB÷GbcaGs2j¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷AcdWgvVC¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷8nHMznNh¬WU÷southampton¬WN÷MCI¬AF÷Manchester City¬JB÷jB6RZ5xa¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KY8zBx5B¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷fkd3F1Hd¬WU÷tottenham¬WN÷EVE¬AF÷Everton¬JB÷dAlxOgLd¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YyDvAdKH¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷z1mtNDz3¬WU÷wolves¬WN÷ARS¬AF÷Arsenal¬JB÷UNnpMXk9¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fi1m8zkU¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷4tucJVZR¬WU÷arsenal¬WN÷LEI¬AF÷Leicester¬JB÷dYWOEkrq¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷pGxgTJKu¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷zPVSD9ck¬WU÷aston-villa¬WN÷MNU¬AF÷Manchester Utd¬JB÷ImLXCTCe¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷G02q9GZN¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷rRjlLi5F¬WU÷bournemouth¬WN÷TOT¬AF÷Tottenham¬JB÷QktgKBKL¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷O6ycSwzn¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷UNOyCmS1¬WU÷brighton¬WN÷LIV¬AF÷Liverpool¬JB÷rRCJzX42¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷6VQ1Rckh¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷MHBNZjK8¬WU÷crystal-palace¬WN÷CHE¬AF÷Chelsea¬JB÷vg6SYAZE¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷KYU5QH4b¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷Iq5WXUlL¬WU÷everton¬WN÷SOU¬AF÷Southampton¬JB÷C64zXl4R¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷EeU9PyK4¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷lSe2S8Cr¬WU÷manchester-city¬WN÷NEW¬AF÷Newcastle¬JB÷Wjo7RSRl¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷hnTDOeZA¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷AspBQnse¬WU÷sheffield-utd¬WN÷WOL¬AF÷Wolves¬JB÷4IbEP6d1¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷ANNINFlH¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷r9cIOQB7¬WU÷watford¬WN÷NOR¬AF÷Norwich¬JB÷pEy1mAl8¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷lEMMMZ3N¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bHu5nU3E¬WU÷west-ham¬WN÷BUR¬AF÷Burnley¬JB÷hvu9olJK¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷ITChHDRp¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷jFKqundl¬WU÷aston-villa¬WN÷CRY¬AF÷Crystal Palace¬JB÷pxKmv6Bf¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷ryMQLgJT¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷WUwDp8YQ¬WU÷bournemouth¬WN÷LEI¬AF÷Leicester¬JB÷COLutStr¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷KYjytc4o¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷dCNiwQQ0¬WU÷brighton¬WN÷MCI¬AF÷Manchester City¬JB÷vyDdxpt7¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷bPkuuHJi¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷IRB0y4eD¬WU÷liverpool¬WN÷BUR¬AF÷Burnley¬JB÷6s5r0mYD¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷SbfqvyZc¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷r7SBrL2t¬WU÷manchester-united¬WN÷SOU¬AF÷Southampton¬JB÷QVHGsuIn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷6kgmwel4¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷vZLKtaXh¬WU÷norwich¬WN÷WHU¬AF÷West Ham¬JB÷YeLOuJna¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷lErhxF3A¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷CnKSvw25¬WU÷sheffield-utd¬WN÷CHE¬AF÷Chelsea¬JB÷hbyQwcHB¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷2HndyZIG¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷WlzUxHWH¬WU÷tottenham¬WN÷ARS¬AF÷Arsenal¬JB÷QBZXyynO¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fDAPJ6mq¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷vFwxye1U¬WU÷watford¬WN÷NEW¬AF÷Newcastle¬JB÷4x5rdvXu¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷Y39TIQ2k¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷rT3nebnn¬WU÷wolves¬WN÷EVE¬AF÷Everton¬JB÷C28jfI1h¬WV÷everton¬AW÷1¬AN÷n¬~AA÷0QuQHpIe¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷jg7fgxHb¬WU÷arsenal¬WN÷LIV¬AF÷Liverpool¬JB÷YHdahdW4¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷vHvUG4X1¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷W2F2iGoB¬WU÷burnley¬WN÷WOL¬AF÷Wolves¬JB÷QPE6jz1H¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷hKSBulA2¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷4GDAkfGN¬WU÷chelsea¬WN÷NOR¬AF÷Norwich¬JB÷Mi8FlEVT¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷6NWFv8P8¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷O0fspYwo¬WU÷crystal-palace¬WN÷MNU¬AF÷Manchester Utd¬JB÷x4rP8HGo¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷lnMKwSvF¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷j7nT7yWi¬WU÷everton¬WN÷AST¬AF÷Aston Villa¬JB÷YVyY6eob¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷SxLOxnfL¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷CMzx6F04¬WU÷leicester¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Knzt5ZFA¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷dCPSy69R¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷bwZq4gVG¬WU÷manchester-city¬WN÷BOU¬AF÷Bournemouth¬JB÷t2Ol3DpN¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷bLBfXPHr¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷f5Sh2XaT¬WU÷newcastle-utd¬WN÷TOT¬AF÷Tottenham¬JB÷CpFKci8p¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷tp1aWqXl¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷jyEOdBNj¬WU÷southampton¬WN÷BHA¬AF÷Brighton¬JB÷Shc7Lf0i¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷hK43V3ne¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷6qdBKEFc¬WU÷west-ham¬WN÷WAT¬AF÷Watford¬JB÷06eFJYU3¬WV÷watford¬AW÷1¬AN÷n¬~AA÷QX2BTsH7¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷YemSGWEM¬WU÷aston-villa¬WN÷ARS¬AF÷Arsenal¬JB÷2ViWFjUS¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷ns47UN11¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷CtaJIhpA¬WU÷bournemouth¬WN÷SOU¬AF÷Southampton¬JB÷f5lOHCaG¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷2knfhRg8¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷4vvbBAxp¬WU÷brighton¬WN÷NEW¬AF÷Newcastle¬JB÷n3T2AUij¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷ttobio9E¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷06X69l7d¬WU÷liverpool¬WN÷CHE¬AF÷Chelsea¬JB÷E9LlYXqc¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷z3p2j5OK¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷h0KhXia3¬WU÷manchester-united¬WN÷WHU¬AF÷West Ham¬JB÷KMjkWBE9¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷l6l6kPwR¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷bDkgVVTF¬WU÷norwich¬WN÷BUR¬AF÷Burnley¬JB÷j9DMD3br¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷fmRYpqnr¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷4CHQCNDl¬WU÷sheffield-utd¬WN÷EVE¬AF÷Everton¬JB÷ny7VBsTf¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YwQxp31l¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷QR5ZA1r1¬WU÷tottenham¬WN÷LEI¬AF÷Leicester¬JB÷f1AwALc7¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷t4PtqNGf¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷Yi9s9uDD¬WU÷watford¬WN÷MCI¬AF÷Manchester City¬JB÷zcmQXOkE¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KfOprsW0¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷nXjUWr5K¬WU÷wolves¬WN÷CRY¬AF÷Crystal Palace¬JB÷tfjYV2KQ¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷2JDks1o7¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷r3x0RMSs¬WU÷arsenal¬WN÷WAT¬AF÷Watford¬JB÷0vX4Qtrl¬WV÷watford¬AW÷1¬AN÷n¬~AA÷GMHgtL0D¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷vVV8P0cf¬WU÷burnley¬WN÷BHA¬AF÷Brighton¬JB÷YiVCOKC0¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷UP5y54wE¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷neZGNvS6¬WU÷chelsea¬WN÷WOL¬AF÷Wolves¬JB÷UJOLMbsD¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷8G4u4OhK¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷8ANPLIdJ¬WU÷crystal-palace¬WN÷TOT¬AF÷Tottenham¬JB÷zHB7p2ZJ¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷Qiap3r8Q¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷E7ABqMlQ¬WU÷everton¬WN÷BOU¬AF÷Bournemouth¬JB÷Klmvutcs¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷S0oCb2Gs¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Yiirv0Cm¬WU÷leicester¬WN÷MNU¬AF÷Manchester Utd¬JB÷SEjnwKRg¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷MNpGcMVm¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷65kjxvs0¬WU÷manchester-city¬WN÷NOR¬AF÷Norwich¬JB÷Otpeybd6¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷K83Jdtof¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2XrazIBC¬WU÷newcastle-utd¬WN÷LIV¬AF÷Liverpool¬JB÷dfr3ZyRI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷2XhOe000¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷fu16YetP¬WU÷southampton¬WN÷SHU¬AF÷Sheffield Utd¬JB÷bDRnslpP¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷tOiSfKF6¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷0MDEx8ht¬WU÷west-ham¬WN÷AST¬AF÷Aston Villa¬JB÷UeIIyS7n¬WV÷aston-villa¬AW÷1¬AN÷n¬~
    170
    92
    + +
    +
    +
    +
    advertisement
    advertisement
    +
    +
    +
    Notifications settings
    +
    Notifications blocked by the browser
    +
    +
    +
    +
    +
    Settings
    +
    +
    +
    +
    +
    Dark Mode
    +
    +
    + +
    +
    advertisement
    advertisement
    +
    + + +
    advertisement
    +
    Help: Find Premier League 2019/2020 fixtures, tomorrow's matches and all of the current season's Premier League 2019/2020 schedule. FlashScore.com provides all Premier League 2019/2020 fixtures, live scores and final results with current standings, head-to-head stats and odds comparison. See also current season's results and Premier League results archive. +
    Upcoming matches: 17.06. Aston Villa - Sheffield Utd, Manchester City - Arsenal, 19.06. Norwich - Southampton, Tottenham - Manchester Utd, 20.06. Watford - Leicester, Brighton - Arsenal, West Ham - Wolves, Bournemouth - Crystal Palace, 21.06. Newcastle - Sheffield Utd, Aston Villa - Chelsea, Everton - Liverpool, 22.06. Manchester City - Burnley, 23.06. Leicester - Brighton, Tottenham - West Ham 
    +
    + Show more +
    +
    +
    +
    +
    +
    +
    +
    FlashScore.com
    + +
    + +
    +
    +
    Mobile applications
    +
    + Our mobile app is optimized for your phone. Download it for free! +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + +
    + +
    +
    + + + +
    +
    +
    + + + + + diff --git a/html/fixtures-data-string b/html/fixtures-data-string new file mode 100755 index 0000000..2684057 --- /dev/null +++ b/html/fixtures-data-string @@ -0,0 +1 @@ +SA÷1¬~ZA÷ENGLAND: Premier League¬ZEE÷dYlOSQOD¬ZB÷198¬ZY÷England¬ZC÷CxZEqxa7¬ZD÷t¬ZE÷h2NtrDMq¬ZF÷0¬ZO÷0¬ZG÷1¬ZH÷198_dYlOSQOD¬ZJ÷2¬ZL÷/football/england/premier-league/¬ZX÷00England 007ngland0000000000001000Premier Leag014League000¬ZCC÷0¬ZAF÷England¬~AA÷lUKXoAEo¬AD÷1592413200¬ADE÷1592413200¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nRFp2xPk¬WU÷aston-villa¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Uk5k1dvd¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|27|471¬~AA÷OnDpq8b4¬AD÷1592421300¬ADE÷1592421300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷fkCtMcGL¬WU÷manchester-city¬WN÷ARS¬AF÷Arsenal¬JB÷lCBpLHVR¬WV÷arsenal¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|49|45|544|27|471|411¬~AA÷riQ962dS¬AD÷1592586000¬ADE÷1592586000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hKQ0z9hT¬WU÷norwich¬WN÷SOU¬AF÷Southampton¬JB÷AaDSVS0p¬WV÷southampton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lY2x2M4q¬AD÷1592594100¬ADE÷1592594100¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷ljCWUnGj¬WU÷tottenham¬WN÷MNU¬AF÷Manchester Utd¬JB÷Q7eFgWhi¬WV÷manchester-united¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷2y7t1tKk¬AD÷1592652600¬ADE÷1592652600¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷4bfJhj8c¬WU÷watford¬WN÷LEI¬AF÷Leicester¬JB÷bLgNiAN3¬WV÷leicester¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lAOgApc3¬AD÷1592661600¬ADE÷1592661600¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷GOYkI9Wp¬WU÷brighton¬WN÷ARS¬AF÷Arsenal¬JB÷URMXtg9o¬WV÷arsenal¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷db6p00Ze¬AD÷1592670600¬ADE÷1592670600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷COcRjUxA¬WU÷west-ham¬WN÷WOL¬AF÷Wolves¬JB÷fmmWklhG¬WV÷wolves¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷M3W7ns5d¬AD÷1592678700¬ADE÷1592678700¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷0jXIPivB¬WU÷bournemouth¬WN÷CRY¬AF÷Crystal Palace¬JB÷fDWMOBgH¬WV÷crystal-palace¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"},{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷40R57rsM¬AD÷1592744400¬ADE÷1592744400¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷CAIhxVNG¬WU÷newcastle-utd¬WN÷SHU¬AF÷Sheffield Utd¬JB÷fZ7cykwN¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷z7KkBQsc¬AD÷1592752500¬ADE÷1592752500¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷Y3VQNV8N¬WU÷aston-villa¬WN÷CHE¬AF÷Chelsea¬JB÷EFnOMkOT¬WV÷chelsea¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷WYDb94C9¬AD÷1592762400¬ADE÷1592762400¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷rVQytDOi¬WU÷everton¬WN÷LIV¬AF÷Liverpool¬JB÷QgGtuXwb¬WV÷liverpool¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|471¬~AA÷APC28ORF¬AD÷1592852400¬ADE÷1592852400¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷4pFpvig4¬WU÷manchester-city¬WN÷BUR¬AF÷Burnley¬JB÷YJJlwB8A¬WV÷burnley¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷jcmyNNt9¬AD÷1592931600¬ADE÷1592931600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Ee2GUwM7¬WU÷leicester¬WN÷BHA¬AF÷Brighton¬JB÷SbjbgNb8¬WV÷brighton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷O86P0XP6¬AD÷1592939700¬ADE÷1592939700¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷GK8p5KcK¬WU÷tottenham¬WN÷WHU¬AF÷West Ham¬JB÷As8l4vDQ¬WV÷west-ham¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷fTE84FQs¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷2HrBjLrR¬WU÷manchester-united¬WN÷SHU¬AF÷Sheffield Utd¬JB÷KdVxnuir¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷xh4D3Zul¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷WWYtoa6l¬WU÷newcastle-utd¬WN÷AST¬AF÷Aston Villa¬JB÷EeOopJLf¬WV÷aston-villa¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷Gr3H2gef¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hnNkqwy1¬WU÷norwich¬WN÷EVE¬AF÷Everton¬JB÷MLRgrcj7¬WV÷everton¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷6XeUaiuD¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷CjfGabLs¬WU÷wolves¬WN÷BOU¬AF÷Bournemouth¬JB÷vDQCbIzl¬WV÷bournemouth¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷pKnuMsdF¬AD÷1593026100¬ADE÷1593026100¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷6kk2hsEE¬WU÷liverpool¬WN÷CRY¬AF÷Crystal Palace¬JB÷OQq7i1TK¬WV÷crystal-palace¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷zk5laKl2¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷WCAaYLMr¬WU÷burnley¬WN÷WAT¬AF÷Watford¬JB÷vwA3Xuxk¬WV÷watford¬AL÷{"1":[{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷pI7L1DA0¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷0CQcsH5D¬WU÷southampton¬WN÷ARS¬AF÷Arsenal¬JB÷2H4t60rE¬WV÷arsenal¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷C6lXN3R2¬AD÷1593112500¬ADE÷1593112500¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷IT87Waie¬WU÷chelsea¬WN÷MCI¬AF÷Manchester City¬JB÷0hbCVJ61¬WV÷manchester-city¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷CUnKMEnQ¬AD÷1593257400¬ADE÷1593257400¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nqHXgfkJ¬WU÷aston-villa¬WN÷WOL¬AF÷Wolves¬JB÷zaAFIwSJ¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷OUs0DA9C¬AD÷1593358200¬ADE÷1593358200¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷CQAPQzKt¬WU÷watford¬WN÷SOU¬AF÷Southampton¬JB÷KjATPfZn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷fkjqHhAm¬AD÷1593457200¬ADE÷1593457200¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷W6kjCy5m¬WU÷crystal-palace¬WN÷BUR¬AF÷Burnley¬JB÷QTlfBeKg¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷GbiuIYfs¬AD÷1593544500¬ADE÷1593544500¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷Ek9JHcsQ¬WU÷brighton¬WN÷MNU¬AF÷Manchester Utd¬JB÷KWonDHks¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷YwlGNfXJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷QTSOeGK6¬WU÷arsenal¬WN÷NOR¬AF÷Norwich¬JB÷8hITfzzD¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷Kz0YbBfJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷I3PGcxjf¬WU÷bournemouth¬WN÷NEW¬AF÷Newcastle¬JB÷CQOKdd50¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷lCkmGCPg¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷4KmbAFZa¬WU÷everton¬WN÷LEI¬AF÷Leicester¬JB÷Mer39Zl6¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷h4n4CUOI¬AD÷1593630900¬ADE÷1593630900¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bs9XOElg¬WU÷west-ham¬WN÷CHE¬AF÷Chelsea¬JB÷t6bxOY3a¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷pvqdEjf6¬AD÷1593709200¬ADE÷1593709200¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷8CpF6XYO¬WU÷sheffield-utd¬WN÷TOT¬AF÷Tottenham¬JB÷AHOcVGBP¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷2FgiFWv0¬AD÷1593717300¬ADE÷1593717300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷0ns78g4C¬WU÷manchester-city¬WN÷LIV¬AF÷Liverpool¬JB÷f9tB7DJI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷Wfo8BlvP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷f92tNhJ5¬WU÷burnley¬WN÷SHU¬AF÷Sheffield Utd¬JB÷lW1pMCYB¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷zTBlKtrP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷SM0lLWmI¬WU÷chelsea¬WN÷WAT¬AF÷Watford¬JB÷rXJI34Ip¬WV÷watford¬AW÷1¬AN÷n¬~AA÷dWHFF0jt¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷MNIM2OXj¬WU÷leicester¬WN÷CRY¬AF÷Crystal Palace¬JB÷zR64R7Ai¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷jgHJEK5n¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷YBP7QRPc¬WU÷liverpool¬WN÷AST¬AF÷Aston Villa¬JB÷GzFCPou4¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷UqGNDvLh¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷fRDGO5fA¬WU÷manchester-united¬WN÷BOU¬AF÷Bournemouth¬JB÷O0IKNP9G¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷nLASCbza¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2iHOMqPM¬WU÷newcastle-utd¬WN÷WHU¬AF÷West Ham¬JB÷pG6TL3vT¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷QB9WBIk5¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷MybeHNnp¬WU÷norwich¬WN÷BHA¬AF÷Brighton¬JB÷GbcaGs2j¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷AcdWgvVC¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷8nHMznNh¬WU÷southampton¬WN÷MCI¬AF÷Manchester City¬JB÷jB6RZ5xa¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KY8zBx5B¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷fkd3F1Hd¬WU÷tottenham¬WN÷EVE¬AF÷Everton¬JB÷dAlxOgLd¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YyDvAdKH¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷z1mtNDz3¬WU÷wolves¬WN÷ARS¬AF÷Arsenal¬JB÷UNnpMXk9¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fi1m8zkU¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷4tucJVZR¬WU÷arsenal¬WN÷LEI¬AF÷Leicester¬JB÷dYWOEkrq¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷pGxgTJKu¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷zPVSD9ck¬WU÷aston-villa¬WN÷MNU¬AF÷Manchester Utd¬JB÷ImLXCTCe¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷G02q9GZN¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷rRjlLi5F¬WU÷bournemouth¬WN÷TOT¬AF÷Tottenham¬JB÷QktgKBKL¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷O6ycSwzn¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷UNOyCmS1¬WU÷brighton¬WN÷LIV¬AF÷Liverpool¬JB÷rRCJzX42¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷6VQ1Rckh¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷MHBNZjK8¬WU÷crystal-palace¬WN÷CHE¬AF÷Chelsea¬JB÷vg6SYAZE¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷KYU5QH4b¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷Iq5WXUlL¬WU÷everton¬WN÷SOU¬AF÷Southampton¬JB÷C64zXl4R¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷EeU9PyK4¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷lSe2S8Cr¬WU÷manchester-city¬WN÷NEW¬AF÷Newcastle¬JB÷Wjo7RSRl¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷hnTDOeZA¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷AspBQnse¬WU÷sheffield-utd¬WN÷WOL¬AF÷Wolves¬JB÷4IbEP6d1¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷ANNINFlH¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷r9cIOQB7¬WU÷watford¬WN÷NOR¬AF÷Norwich¬JB÷pEy1mAl8¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷lEMMMZ3N¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bHu5nU3E¬WU÷west-ham¬WN÷BUR¬AF÷Burnley¬JB÷hvu9olJK¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷ITChHDRp¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷jFKqundl¬WU÷aston-villa¬WN÷CRY¬AF÷Crystal Palace¬JB÷pxKmv6Bf¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷ryMQLgJT¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷WUwDp8YQ¬WU÷bournemouth¬WN÷LEI¬AF÷Leicester¬JB÷COLutStr¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷KYjytc4o¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷dCNiwQQ0¬WU÷brighton¬WN÷MCI¬AF÷Manchester City¬JB÷vyDdxpt7¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷bPkuuHJi¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷IRB0y4eD¬WU÷liverpool¬WN÷BUR¬AF÷Burnley¬JB÷6s5r0mYD¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷SbfqvyZc¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷r7SBrL2t¬WU÷manchester-united¬WN÷SOU¬AF÷Southampton¬JB÷QVHGsuIn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷6kgmwel4¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷vZLKtaXh¬WU÷norwich¬WN÷WHU¬AF÷West Ham¬JB÷YeLOuJna¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷lErhxF3A¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷CnKSvw25¬WU÷sheffield-utd¬WN÷CHE¬AF÷Chelsea¬JB÷hbyQwcHB¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷2HndyZIG¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷WlzUxHWH¬WU÷tottenham¬WN÷ARS¬AF÷Arsenal¬JB÷QBZXyynO¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fDAPJ6mq¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷vFwxye1U¬WU÷watford¬WN÷NEW¬AF÷Newcastle¬JB÷4x5rdvXu¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷Y39TIQ2k¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷rT3nebnn¬WU÷wolves¬WN÷EVE¬AF÷Everton¬JB÷C28jfI1h¬WV÷everton¬AW÷1¬AN÷n¬~AA÷0QuQHpIe¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷jg7fgxHb¬WU÷arsenal¬WN÷LIV¬AF÷Liverpool¬JB÷YHdahdW4¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷vHvUG4X1¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷W2F2iGoB¬WU÷burnley¬WN÷WOL¬AF÷Wolves¬JB÷QPE6jz1H¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷hKSBulA2¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷4GDAkfGN¬WU÷chelsea¬WN÷NOR¬AF÷Norwich¬JB÷Mi8FlEVT¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷6NWFv8P8¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷O0fspYwo¬WU÷crystal-palace¬WN÷MNU¬AF÷Manchester Utd¬JB÷x4rP8HGo¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷lnMKwSvF¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷j7nT7yWi¬WU÷everton¬WN÷AST¬AF÷Aston Villa¬JB÷YVyY6eob¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷SxLOxnfL¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷CMzx6F04¬WU÷leicester¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Knzt5ZFA¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷dCPSy69R¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷bwZq4gVG¬WU÷manchester-city¬WN÷BOU¬AF÷Bournemouth¬JB÷t2Ol3DpN¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷bLBfXPHr¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷f5Sh2XaT¬WU÷newcastle-utd¬WN÷TOT¬AF÷Tottenham¬JB÷CpFKci8p¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷tp1aWqXl¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷jyEOdBNj¬WU÷southampton¬WN÷BHA¬AF÷Brighton¬JB÷Shc7Lf0i¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷hK43V3ne¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷6qdBKEFc¬WU÷west-ham¬WN÷WAT¬AF÷Watford¬JB÷06eFJYU3¬WV÷watford¬AW÷1¬AN÷n¬~AA÷QX2BTsH7¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷YemSGWEM¬WU÷aston-villa¬WN÷ARS¬AF÷Arsenal¬JB÷2ViWFjUS¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷ns47UN11¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷CtaJIhpA¬WU÷bournemouth¬WN÷SOU¬AF÷Southampton¬JB÷f5lOHCaG¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷2knfhRg8¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷4vvbBAxp¬WU÷brighton¬WN÷NEW¬AF÷Newcastle¬JB÷n3T2AUij¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷ttobio9E¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷06X69l7d¬WU÷liverpool¬WN÷CHE¬AF÷Chelsea¬JB÷E9LlYXqc¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷z3p2j5OK¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷h0KhXia3¬WU÷manchester-united¬WN÷WHU¬AF÷West Ham¬JB÷KMjkWBE9¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷l6l6kPwR¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷bDkgVVTF¬WU÷norwich¬WN÷BUR¬AF÷Burnley¬JB÷j9DMD3br¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷fmRYpqnr¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷4CHQCNDl¬WU÷sheffield-utd¬WN÷EVE¬AF÷Everton¬JB÷ny7VBsTf¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YwQxp31l¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷QR5ZA1r1¬WU÷tottenham¬WN÷LEI¬AF÷Leicester¬JB÷f1AwALc7¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷t4PtqNGf¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷Yi9s9uDD¬WU÷watford¬WN÷MCI¬AF÷Manchester City¬JB÷zcmQXOkE¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KfOprsW0¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷nXjUWr5K¬WU÷wolves¬WN÷CRY¬AF÷Crystal Palace¬JB÷tfjYV2KQ¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷2JDks1o7¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷r3x0RMSs¬WU÷arsenal¬WN÷WAT¬AF÷Watford¬JB÷0vX4Qtrl¬WV÷watford¬AW÷1¬AN÷n¬~AA÷GMHgtL0D¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷vVV8P0cf¬WU÷burnley¬WN÷BHA¬AF÷Brighton¬JB÷YiVCOKC0¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷UP5y54wE¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷neZGNvS6¬WU÷chelsea¬WN÷WOL¬AF÷Wolves¬JB÷UJOLMbsD¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷8G4u4OhK¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷8ANPLIdJ¬WU÷crystal-palace¬WN÷TOT¬AF÷Tottenham¬JB÷zHB7p2ZJ¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷Qiap3r8Q¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷E7ABqMlQ¬WU÷everton¬WN÷BOU¬AF÷Bournemouth¬JB÷Klmvutcs¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷S0oCb2Gs¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Yiirv0Cm¬WU÷leicester¬WN÷MNU¬AF÷Manchester Utd¬JB÷SEjnwKRg¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷MNpGcMVm¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷65kjxvs0¬WU÷manchester-city¬WN÷NOR¬AF÷Norwich¬JB÷Otpeybd6¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷K83Jdtof¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2XrazIBC¬WU÷newcastle-utd¬WN÷LIV¬AF÷Liverpool¬JB÷dfr3ZyRI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷2XhOe000¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷fu16YetP¬WU÷southampton¬WN÷SHU¬AF÷Sheffield Utd¬JB÷bDRnslpP¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷tOiSfKF6¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷0MDEx8ht¬WU÷west-ham¬WN÷AST¬AF÷Aston Villa¬JB÷UeIIyS7n¬WV÷aston-villa¬AW÷1¬AN÷n¬~ \ No newline at end of file diff --git a/html/fixtures-div.html b/html/fixtures-div.html new file mode 100755 index 0000000..bae86d7 --- /dev/null +++ b/html/fixtures-div.html @@ -0,0 +1,17 @@ +
    + + + + + + + +
    +
    fixtures
    +
    + + + + SA÷1¬~ZA÷ENGLAND: Premier League¬ZEE÷dYlOSQOD¬ZB÷198¬ZY÷England¬ZC÷CxZEqxa7¬ZD÷t¬ZE÷h2NtrDMq¬ZF÷0¬ZO÷0¬ZG÷1¬ZH÷198_dYlOSQOD¬ZJ÷2¬ZL÷/football/england/premier-league/¬ZX÷00England 007ngland0000000000001000Premier Leag014League000¬ZCC÷0¬ZAF÷England¬~AA÷lUKXoAEo¬AD÷1592413200¬ADE÷1592413200¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nRFp2xPk¬WU÷aston-villa¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Uk5k1dvd¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|27|471¬~AA÷OnDpq8b4¬AD÷1592421300¬ADE÷1592421300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷fkCtMcGL¬WU÷manchester-city¬WN÷ARS¬AF÷Arsenal¬JB÷lCBpLHVR¬WV÷arsenal¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|49|45|544|27|471|411¬~AA÷riQ962dS¬AD÷1592586000¬ADE÷1592586000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hKQ0z9hT¬WU÷norwich¬WN÷SOU¬AF÷Southampton¬JB÷AaDSVS0p¬WV÷southampton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lY2x2M4q¬AD÷1592594100¬ADE÷1592594100¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷ljCWUnGj¬WU÷tottenham¬WN÷MNU¬AF÷Manchester Utd¬JB÷Q7eFgWhi¬WV÷manchester-united¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷2y7t1tKk¬AD÷1592652600¬ADE÷1592652600¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷4bfJhj8c¬WU÷watford¬WN÷LEI¬AF÷Leicester¬JB÷bLgNiAN3¬WV÷leicester¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lAOgApc3¬AD÷1592661600¬ADE÷1592661600¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷GOYkI9Wp¬WU÷brighton¬WN÷ARS¬AF÷Arsenal¬JB÷URMXtg9o¬WV÷arsenal¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷db6p00Ze¬AD÷1592670600¬ADE÷1592670600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷COcRjUxA¬WU÷west-ham¬WN÷WOL¬AF÷Wolves¬JB÷fmmWklhG¬WV÷wolves¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷M3W7ns5d¬AD÷1592678700¬ADE÷1592678700¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷0jXIPivB¬WU÷bournemouth¬WN÷CRY¬AF÷Crystal Palace¬JB÷fDWMOBgH¬WV÷crystal-palace¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"},{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷40R57rsM¬AD÷1592744400¬ADE÷1592744400¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷CAIhxVNG¬WU÷newcastle-utd¬WN÷SHU¬AF÷Sheffield Utd¬JB÷fZ7cykwN¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷z7KkBQsc¬AD÷1592752500¬ADE÷1592752500¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷Y3VQNV8N¬WU÷aston-villa¬WN÷CHE¬AF÷Chelsea¬JB÷EFnOMkOT¬WV÷chelsea¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷WYDb94C9¬AD÷1592762400¬ADE÷1592762400¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷rVQytDOi¬WU÷everton¬WN÷LIV¬AF÷Liverpool¬JB÷QgGtuXwb¬WV÷liverpool¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|471¬~AA÷APC28ORF¬AD÷1592852400¬ADE÷1592852400¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷4pFpvig4¬WU÷manchester-city¬WN÷BUR¬AF÷Burnley¬JB÷YJJlwB8A¬WV÷burnley¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷jcmyNNt9¬AD÷1592931600¬ADE÷1592931600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Ee2GUwM7¬WU÷leicester¬WN÷BHA¬AF÷Brighton¬JB÷SbjbgNb8¬WV÷brighton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷O86P0XP6¬AD÷1592939700¬ADE÷1592939700¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷GK8p5KcK¬WU÷tottenham¬WN÷WHU¬AF÷West Ham¬JB÷As8l4vDQ¬WV÷west-ham¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷fTE84FQs¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷2HrBjLrR¬WU÷manchester-united¬WN÷SHU¬AF÷Sheffield Utd¬JB÷KdVxnuir¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷xh4D3Zul¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷WWYtoa6l¬WU÷newcastle-utd¬WN÷AST¬AF÷Aston Villa¬JB÷EeOopJLf¬WV÷aston-villa¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷Gr3H2gef¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hnNkqwy1¬WU÷norwich¬WN÷EVE¬AF÷Everton¬JB÷MLRgrcj7¬WV÷everton¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷6XeUaiuD¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷CjfGabLs¬WU÷wolves¬WN÷BOU¬AF÷Bournemouth¬JB÷vDQCbIzl¬WV÷bournemouth¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷pKnuMsdF¬AD÷1593026100¬ADE÷1593026100¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷6kk2hsEE¬WU÷liverpool¬WN÷CRY¬AF÷Crystal Palace¬JB÷OQq7i1TK¬WV÷crystal-palace¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷zk5laKl2¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷WCAaYLMr¬WU÷burnley¬WN÷WAT¬AF÷Watford¬JB÷vwA3Xuxk¬WV÷watford¬AL÷{"1":[{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷pI7L1DA0¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷0CQcsH5D¬WU÷southampton¬WN÷ARS¬AF÷Arsenal¬JB÷2H4t60rE¬WV÷arsenal¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷C6lXN3R2¬AD÷1593112500¬ADE÷1593112500¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷IT87Waie¬WU÷chelsea¬WN÷MCI¬AF÷Manchester City¬JB÷0hbCVJ61¬WV÷manchester-city¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷CUnKMEnQ¬AD÷1593257400¬ADE÷1593257400¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nqHXgfkJ¬WU÷aston-villa¬WN÷WOL¬AF÷Wolves¬JB÷zaAFIwSJ¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷OUs0DA9C¬AD÷1593358200¬ADE÷1593358200¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷CQAPQzKt¬WU÷watford¬WN÷SOU¬AF÷Southampton¬JB÷KjATPfZn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷fkjqHhAm¬AD÷1593457200¬ADE÷1593457200¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷W6kjCy5m¬WU÷crystal-palace¬WN÷BUR¬AF÷Burnley¬JB÷QTlfBeKg¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷GbiuIYfs¬AD÷1593544500¬ADE÷1593544500¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷Ek9JHcsQ¬WU÷brighton¬WN÷MNU¬AF÷Manchester Utd¬JB÷KWonDHks¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷YwlGNfXJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷QTSOeGK6¬WU÷arsenal¬WN÷NOR¬AF÷Norwich¬JB÷8hITfzzD¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷Kz0YbBfJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷I3PGcxjf¬WU÷bournemouth¬WN÷NEW¬AF÷Newcastle¬JB÷CQOKdd50¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷lCkmGCPg¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷4KmbAFZa¬WU÷everton¬WN÷LEI¬AF÷Leicester¬JB÷Mer39Zl6¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷h4n4CUOI¬AD÷1593630900¬ADE÷1593630900¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bs9XOElg¬WU÷west-ham¬WN÷CHE¬AF÷Chelsea¬JB÷t6bxOY3a¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷pvqdEjf6¬AD÷1593709200¬ADE÷1593709200¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷8CpF6XYO¬WU÷sheffield-utd¬WN÷TOT¬AF÷Tottenham¬JB÷AHOcVGBP¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷2FgiFWv0¬AD÷1593717300¬ADE÷1593717300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷0ns78g4C¬WU÷manchester-city¬WN÷LIV¬AF÷Liverpool¬JB÷f9tB7DJI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷Wfo8BlvP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷f92tNhJ5¬WU÷burnley¬WN÷SHU¬AF÷Sheffield Utd¬JB÷lW1pMCYB¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷zTBlKtrP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷SM0lLWmI¬WU÷chelsea¬WN÷WAT¬AF÷Watford¬JB÷rXJI34Ip¬WV÷watford¬AW÷1¬AN÷n¬~AA÷dWHFF0jt¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷MNIM2OXj¬WU÷leicester¬WN÷CRY¬AF÷Crystal Palace¬JB÷zR64R7Ai¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷jgHJEK5n¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷YBP7QRPc¬WU÷liverpool¬WN÷AST¬AF÷Aston Villa¬JB÷GzFCPou4¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷UqGNDvLh¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷fRDGO5fA¬WU÷manchester-united¬WN÷BOU¬AF÷Bournemouth¬JB÷O0IKNP9G¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷nLASCbza¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2iHOMqPM¬WU÷newcastle-utd¬WN÷WHU¬AF÷West Ham¬JB÷pG6TL3vT¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷QB9WBIk5¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷MybeHNnp¬WU÷norwich¬WN÷BHA¬AF÷Brighton¬JB÷GbcaGs2j¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷AcdWgvVC¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷8nHMznNh¬WU÷southampton¬WN÷MCI¬AF÷Manchester City¬JB÷jB6RZ5xa¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KY8zBx5B¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷fkd3F1Hd¬WU÷tottenham¬WN÷EVE¬AF÷Everton¬JB÷dAlxOgLd¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YyDvAdKH¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷z1mtNDz3¬WU÷wolves¬WN÷ARS¬AF÷Arsenal¬JB÷UNnpMXk9¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fi1m8zkU¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷4tucJVZR¬WU÷arsenal¬WN÷LEI¬AF÷Leicester¬JB÷dYWOEkrq¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷pGxgTJKu¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷zPVSD9ck¬WU÷aston-villa¬WN÷MNU¬AF÷Manchester Utd¬JB÷ImLXCTCe¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷G02q9GZN¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷rRjlLi5F¬WU÷bournemouth¬WN÷TOT¬AF÷Tottenham¬JB÷QktgKBKL¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷O6ycSwzn¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷UNOyCmS1¬WU÷brighton¬WN÷LIV¬AF÷Liverpool¬JB÷rRCJzX42¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷6VQ1Rckh¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷MHBNZjK8¬WU÷crystal-palace¬WN÷CHE¬AF÷Chelsea¬JB÷vg6SYAZE¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷KYU5QH4b¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷Iq5WXUlL¬WU÷everton¬WN÷SOU¬AF÷Southampton¬JB÷C64zXl4R¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷EeU9PyK4¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷lSe2S8Cr¬WU÷manchester-city¬WN÷NEW¬AF÷Newcastle¬JB÷Wjo7RSRl¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷hnTDOeZA¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷AspBQnse¬WU÷sheffield-utd¬WN÷WOL¬AF÷Wolves¬JB÷4IbEP6d1¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷ANNINFlH¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷r9cIOQB7¬WU÷watford¬WN÷NOR¬AF÷Norwich¬JB÷pEy1mAl8¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷lEMMMZ3N¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bHu5nU3E¬WU÷west-ham¬WN÷BUR¬AF÷Burnley¬JB÷hvu9olJK¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷ITChHDRp¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷jFKqundl¬WU÷aston-villa¬WN÷CRY¬AF÷Crystal Palace¬JB÷pxKmv6Bf¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷ryMQLgJT¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷WUwDp8YQ¬WU÷bournemouth¬WN÷LEI¬AF÷Leicester¬JB÷COLutStr¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷KYjytc4o¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷dCNiwQQ0¬WU÷brighton¬WN÷MCI¬AF÷Manchester City¬JB÷vyDdxpt7¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷bPkuuHJi¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷IRB0y4eD¬WU÷liverpool¬WN÷BUR¬AF÷Burnley¬JB÷6s5r0mYD¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷SbfqvyZc¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷r7SBrL2t¬WU÷manchester-united¬WN÷SOU¬AF÷Southampton¬JB÷QVHGsuIn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷6kgmwel4¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷vZLKtaXh¬WU÷norwich¬WN÷WHU¬AF÷West Ham¬JB÷YeLOuJna¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷lErhxF3A¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷CnKSvw25¬WU÷sheffield-utd¬WN÷CHE¬AF÷Chelsea¬JB÷hbyQwcHB¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷2HndyZIG¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷WlzUxHWH¬WU÷tottenham¬WN÷ARS¬AF÷Arsenal¬JB÷QBZXyynO¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fDAPJ6mq¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷vFwxye1U¬WU÷watford¬WN÷NEW¬AF÷Newcastle¬JB÷4x5rdvXu¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷Y39TIQ2k¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷rT3nebnn¬WU÷wolves¬WN÷EVE¬AF÷Everton¬JB÷C28jfI1h¬WV÷everton¬AW÷1¬AN÷n¬~AA÷0QuQHpIe¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷jg7fgxHb¬WU÷arsenal¬WN÷LIV¬AF÷Liverpool¬JB÷YHdahdW4¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷vHvUG4X1¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷W2F2iGoB¬WU÷burnley¬WN÷WOL¬AF÷Wolves¬JB÷QPE6jz1H¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷hKSBulA2¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷4GDAkfGN¬WU÷chelsea¬WN÷NOR¬AF÷Norwich¬JB÷Mi8FlEVT¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷6NWFv8P8¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷O0fspYwo¬WU÷crystal-palace¬WN÷MNU¬AF÷Manchester Utd¬JB÷x4rP8HGo¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷lnMKwSvF¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷j7nT7yWi¬WU÷everton¬WN÷AST¬AF÷Aston Villa¬JB÷YVyY6eob¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷SxLOxnfL¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷CMzx6F04¬WU÷leicester¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Knzt5ZFA¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷dCPSy69R¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷bwZq4gVG¬WU÷manchester-city¬WN÷BOU¬AF÷Bournemouth¬JB÷t2Ol3DpN¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷bLBfXPHr¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷f5Sh2XaT¬WU÷newcastle-utd¬WN÷TOT¬AF÷Tottenham¬JB÷CpFKci8p¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷tp1aWqXl¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷jyEOdBNj¬WU÷southampton¬WN÷BHA¬AF÷Brighton¬JB÷Shc7Lf0i¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷hK43V3ne¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷6qdBKEFc¬WU÷west-ham¬WN÷WAT¬AF÷Watford¬JB÷06eFJYU3¬WV÷watford¬AW÷1¬AN÷n¬~AA÷QX2BTsH7¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷YemSGWEM¬WU÷aston-villa¬WN÷ARS¬AF÷Arsenal¬JB÷2ViWFjUS¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷ns47UN11¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷CtaJIhpA¬WU÷bournemouth¬WN÷SOU¬AF÷Southampton¬JB÷f5lOHCaG¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷2knfhRg8¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷4vvbBAxp¬WU÷brighton¬WN÷NEW¬AF÷Newcastle¬JB÷n3T2AUij¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷ttobio9E¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷06X69l7d¬WU÷liverpool¬WN÷CHE¬AF÷Chelsea¬JB÷E9LlYXqc¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷z3p2j5OK¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷h0KhXia3¬WU÷manchester-united¬WN÷WHU¬AF÷West Ham¬JB÷KMjkWBE9¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷l6l6kPwR¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷bDkgVVTF¬WU÷norwich¬WN÷BUR¬AF÷Burnley¬JB÷j9DMD3br¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷fmRYpqnr¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷4CHQCNDl¬WU÷sheffield-utd¬WN÷EVE¬AF÷Everton¬JB÷ny7VBsTf¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YwQxp31l¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷QR5ZA1r1¬WU÷tottenham¬WN÷LEI¬AF÷Leicester¬JB÷f1AwALc7¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷t4PtqNGf¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷Yi9s9uDD¬WU÷watford¬WN÷MCI¬AF÷Manchester City¬JB÷zcmQXOkE¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KfOprsW0¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷nXjUWr5K¬WU÷wolves¬WN÷CRY¬AF÷Crystal Palace¬JB÷tfjYV2KQ¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷2JDks1o7¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷r3x0RMSs¬WU÷arsenal¬WN÷WAT¬AF÷Watford¬JB÷0vX4Qtrl¬WV÷watford¬AW÷1¬AN÷n¬~AA÷GMHgtL0D¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷vVV8P0cf¬WU÷burnley¬WN÷BHA¬AF÷Brighton¬JB÷YiVCOKC0¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷UP5y54wE¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷neZGNvS6¬WU÷chelsea¬WN÷WOL¬AF÷Wolves¬JB÷UJOLMbsD¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷8G4u4OhK¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷8ANPLIdJ¬WU÷crystal-palace¬WN÷TOT¬AF÷Tottenham¬JB÷zHB7p2ZJ¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷Qiap3r8Q¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷E7ABqMlQ¬WU÷everton¬WN÷BOU¬AF÷Bournemouth¬JB÷Klmvutcs¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷S0oCb2Gs¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Yiirv0Cm¬WU÷leicester¬WN÷MNU¬AF÷Manchester Utd¬JB÷SEjnwKRg¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷MNpGcMVm¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷65kjxvs0¬WU÷manchester-city¬WN÷NOR¬AF÷Norwich¬JB÷Otpeybd6¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷K83Jdtof¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2XrazIBC¬WU÷newcastle-utd¬WN÷LIV¬AF÷Liverpool¬JB÷dfr3ZyRI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷2XhOe000¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷fu16YetP¬WU÷southampton¬WN÷SHU¬AF÷Sheffield Utd¬JB÷bDRnslpP¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷tOiSfKF6¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷0MDEx8ht¬WU÷west-ham¬WN÷AST¬AF÷Aston Villa¬JB÷UeIIyS7n¬WV÷aston-villa¬AW÷1¬AN÷n¬~
    170
    92
    \ No newline at end of file diff --git a/html/fixtures-unescaped b/html/fixtures-unescaped new file mode 100755 index 0000000..7fa7b5d --- /dev/null +++ b/html/fixtures-unescaped @@ -0,0 +1 @@ +SA÷1¬~ZA÷ENGLAND: Premier League¬ZEE÷dYlOSQOD¬ZB÷198¬ZY÷England¬ZC÷CxZEqxa7¬ZD÷t¬ZE÷h2NtrDMq¬ZF÷0¬ZO÷0¬ZG÷1¬ZH÷198_dYlOSQOD¬ZJ÷2¬ZL÷/football/england/premier-league/¬ZX÷00England 007ngland0000000000001000Premier Leag014League000¬ZCC÷0¬ZAF÷England¬~AA÷lUKXoAEo¬AD÷1592413200¬ADE÷1592413200¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nRFp2xPk¬WU÷aston-villa¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Uk5k1dvd¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|27|471¬~AA÷OnDpq8b4¬AD÷1592421300¬ADE÷1592421300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 28¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷fkCtMcGL¬WU÷manchester-city¬WN÷ARS¬AF÷Arsenal¬JB÷lCBpLHVR¬WV÷arsenal¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|49|45|544|27|471|411¬~AA÷riQ962dS¬AD÷1592586000¬ADE÷1592586000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hKQ0z9hT¬WU÷norwich¬WN÷SOU¬AF÷Southampton¬JB÷AaDSVS0p¬WV÷southampton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lY2x2M4q¬AD÷1592594100¬ADE÷1592594100¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷ljCWUnGj¬WU÷tottenham¬WN÷MNU¬AF÷Manchester Utd¬JB÷Q7eFgWhi¬WV÷manchester-united¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷2y7t1tKk¬AD÷1592652600¬ADE÷1592652600¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷4bfJhj8c¬WU÷watford¬WN÷LEI¬AF÷Leicester¬JB÷bLgNiAN3¬WV÷leicester¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷lAOgApc3¬AD÷1592661600¬ADE÷1592661600¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷GOYkI9Wp¬WU÷brighton¬WN÷ARS¬AF÷Arsenal¬JB÷URMXtg9o¬WV÷arsenal¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷db6p00Ze¬AD÷1592670600¬ADE÷1592670600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷COcRjUxA¬WU÷west-ham¬WN÷WOL¬AF÷Wolves¬JB÷fmmWklhG¬WV÷wolves¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷M3W7ns5d¬AD÷1592678700¬ADE÷1592678700¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷0jXIPivB¬WU÷bournemouth¬WN÷CRY¬AF÷Crystal Palace¬JB÷fDWMOBgH¬WV÷crystal-palace¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"},{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷40R57rsM¬AD÷1592744400¬ADE÷1592744400¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷CAIhxVNG¬WU÷newcastle-utd¬WN÷SHU¬AF÷Sheffield Utd¬JB÷fZ7cykwN¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷z7KkBQsc¬AD÷1592752500¬ADE÷1592752500¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷Y3VQNV8N¬WU÷aston-villa¬WN÷CHE¬AF÷Chelsea¬JB÷EFnOMkOT¬WV÷chelsea¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷WYDb94C9¬AD÷1592762400¬ADE÷1592762400¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷rVQytDOi¬WU÷everton¬WN÷LIV¬AF÷Liverpool¬JB÷QgGtuXwb¬WV÷liverpool¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|544|471¬~AA÷APC28ORF¬AD÷1592852400¬ADE÷1592852400¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷4pFpvig4¬WU÷manchester-city¬WN÷BUR¬AF÷Burnley¬JB÷YJJlwB8A¬WV÷burnley¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷jcmyNNt9¬AD÷1592931600¬ADE÷1592931600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Ee2GUwM7¬WU÷leicester¬WN÷BHA¬AF÷Brighton¬JB÷SbjbgNb8¬WV÷brighton¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷O86P0XP6¬AD÷1592939700¬ADE÷1592939700¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷GK8p5KcK¬WU÷tottenham¬WN÷WHU¬AF÷West Ham¬JB÷As8l4vDQ¬WV÷west-ham¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬~AA÷fTE84FQs¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷2HrBjLrR¬WU÷manchester-united¬WN÷SHU¬AF÷Sheffield Utd¬JB÷KdVxnuir¬WV÷sheffield-utd¬AL÷{"1":[{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷xh4D3Zul¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷WWYtoa6l¬WU÷newcastle-utd¬WN÷AST¬AF÷Aston Villa¬JB÷EeOopJLf¬WV÷aston-villa¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷Gr3H2gef¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷hnNkqwy1¬WU÷norwich¬WN÷EVE¬AF÷Everton¬JB÷MLRgrcj7¬WV÷everton¬AL÷{"1":[{"TVI":55,"BU":"http:\/\/www.bbc.co.uk\/iplayer\/schedules\/bbcone","BN":"BBC One"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷6XeUaiuD¬AD÷1593018000¬ADE÷1593018000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷CjfGabLs¬WU÷wolves¬WN÷BOU¬AF÷Bournemouth¬JB÷vDQCbIzl¬WV÷bournemouth¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷pKnuMsdF¬AD÷1593026100¬ADE÷1593026100¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷6kk2hsEE¬WU÷liverpool¬WN÷CRY¬AF÷Crystal Palace¬JB÷OQq7i1TK¬WV÷crystal-palace¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":679,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Main Event (UK\/Irl)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷zk5laKl2¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷WCAaYLMr¬WU÷burnley¬WN÷WAT¬AF÷Watford¬JB÷vwA3Xuxk¬WV÷watford¬AL÷{"1":[{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷pI7L1DA0¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷0CQcsH5D¬WU÷southampton¬WN÷ARS¬AF÷Arsenal¬JB÷2H4t60rE¬WV÷arsenal¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬~AA÷C6lXN3R2¬AD÷1593112500¬ADE÷1593112500¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷IT87Waie¬WU÷chelsea¬WN÷MCI¬AF÷Manchester City¬JB÷0hbCVJ61¬WV÷manchester-city¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|27|471¬~AA÷CUnKMEnQ¬AD÷1593257400¬ADE÷1593257400¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷nqHXgfkJ¬WU÷aston-villa¬WN÷WOL¬AF÷Wolves¬JB÷zaAFIwSJ¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷OUs0DA9C¬AD÷1593358200¬ADE÷1593358200¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷CQAPQzKt¬WU÷watford¬WN÷SOU¬AF÷Southampton¬JB÷KjATPfZn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷fkjqHhAm¬AD÷1593457200¬ADE÷1593457200¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷W6kjCy5m¬WU÷crystal-palace¬WN÷BUR¬AF÷Burnley¬JB÷QTlfBeKg¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷GbiuIYfs¬AD÷1593544500¬ADE÷1593544500¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷Ek9JHcsQ¬WU÷brighton¬WN÷MNU¬AF÷Manchester Utd¬JB÷KWonDHks¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷YwlGNfXJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷QTSOeGK6¬WU÷arsenal¬WN÷NOR¬AF÷Norwich¬JB÷8hITfzzD¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷Kz0YbBfJ¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷I3PGcxjf¬WU÷bournemouth¬WN÷NEW¬AF÷Newcastle¬JB÷CQOKdd50¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷lCkmGCPg¬AD÷1593622800¬ADE÷1593622800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷4KmbAFZa¬WU÷everton¬WN÷LEI¬AF÷Leicester¬JB÷Mer39Zl6¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷h4n4CUOI¬AD÷1593630900¬ADE÷1593630900¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bs9XOElg¬WU÷west-ham¬WN÷CHE¬AF÷Chelsea¬JB÷t6bxOY3a¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷pvqdEjf6¬AD÷1593709200¬ADE÷1593709200¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷8CpF6XYO¬WU÷sheffield-utd¬WN÷TOT¬AF÷Tottenham¬JB÷AHOcVGBP¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷2FgiFWv0¬AD÷1593717300¬ADE÷1593717300¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷0ns78g4C¬WU÷manchester-city¬WN÷LIV¬AF÷Liverpool¬JB÷f9tB7DJI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷Wfo8BlvP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷f92tNhJ5¬WU÷burnley¬WN÷SHU¬AF÷Sheffield Utd¬JB÷lW1pMCYB¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷zTBlKtrP¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷SM0lLWmI¬WU÷chelsea¬WN÷WAT¬AF÷Watford¬JB÷rXJI34Ip¬WV÷watford¬AW÷1¬AN÷n¬~AA÷dWHFF0jt¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷MNIM2OXj¬WU÷leicester¬WN÷CRY¬AF÷Crystal Palace¬JB÷zR64R7Ai¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷jgHJEK5n¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷YBP7QRPc¬WU÷liverpool¬WN÷AST¬AF÷Aston Villa¬JB÷GzFCPou4¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷UqGNDvLh¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷fRDGO5fA¬WU÷manchester-united¬WN÷BOU¬AF÷Bournemouth¬JB÷O0IKNP9G¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷nLASCbza¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2iHOMqPM¬WU÷newcastle-utd¬WN÷WHU¬AF÷West Ham¬JB÷pG6TL3vT¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷QB9WBIk5¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷MybeHNnp¬WU÷norwich¬WN÷BHA¬AF÷Brighton¬JB÷GbcaGs2j¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷AcdWgvVC¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷8nHMznNh¬WU÷southampton¬WN÷MCI¬AF÷Manchester City¬JB÷jB6RZ5xa¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KY8zBx5B¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷fkd3F1Hd¬WU÷tottenham¬WN÷EVE¬AF÷Everton¬JB÷dAlxOgLd¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YyDvAdKH¬AD÷1593871200¬ADE÷1593871200¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 33¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷z1mtNDz3¬WU÷wolves¬WN÷ARS¬AF÷Arsenal¬JB÷UNnpMXk9¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fi1m8zkU¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷4tucJVZR¬WU÷arsenal¬WN÷LEI¬AF÷Leicester¬JB÷dYWOEkrq¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷pGxgTJKu¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷zPVSD9ck¬WU÷aston-villa¬WN÷MNU¬AF÷Manchester Utd¬JB÷ImLXCTCe¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷G02q9GZN¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷rRjlLi5F¬WU÷bournemouth¬WN÷TOT¬AF÷Tottenham¬JB÷QktgKBKL¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷O6ycSwzn¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷UNOyCmS1¬WU÷brighton¬WN÷LIV¬AF÷Liverpool¬JB÷rRCJzX42¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷6VQ1Rckh¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷MHBNZjK8¬WU÷crystal-palace¬WN÷CHE¬AF÷Chelsea¬JB÷vg6SYAZE¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷KYU5QH4b¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷Iq5WXUlL¬WU÷everton¬WN÷SOU¬AF÷Southampton¬JB÷C64zXl4R¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷EeU9PyK4¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷lSe2S8Cr¬WU÷manchester-city¬WN÷NEW¬AF÷Newcastle¬JB÷Wjo7RSRl¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷hnTDOeZA¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷AspBQnse¬WU÷sheffield-utd¬WN÷WOL¬AF÷Wolves¬JB÷4IbEP6d1¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷ANNINFlH¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷r9cIOQB7¬WU÷watford¬WN÷NOR¬AF÷Norwich¬JB÷pEy1mAl8¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷lEMMMZ3N¬AD÷1594234800¬ADE÷1594234800¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 34¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bHu5nU3E¬WU÷west-ham¬WN÷BUR¬AF÷Burnley¬JB÷hvu9olJK¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷ITChHDRp¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷jFKqundl¬WU÷aston-villa¬WN÷CRY¬AF÷Crystal Palace¬JB÷pxKmv6Bf¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷ryMQLgJT¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷WUwDp8YQ¬WU÷bournemouth¬WN÷LEI¬AF÷Leicester¬JB÷COLutStr¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷KYjytc4o¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷dCNiwQQ0¬WU÷brighton¬WN÷MCI¬AF÷Manchester City¬JB÷vyDdxpt7¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷bPkuuHJi¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷IRB0y4eD¬WU÷liverpool¬WN÷BUR¬AF÷Burnley¬JB÷6s5r0mYD¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷SbfqvyZc¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷r7SBrL2t¬WU÷manchester-united¬WN÷SOU¬AF÷Southampton¬JB÷QVHGsuIn¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷6kgmwel4¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷vZLKtaXh¬WU÷norwich¬WN÷WHU¬AF÷West Ham¬JB÷YeLOuJna¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷lErhxF3A¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷CnKSvw25¬WU÷sheffield-utd¬WN÷CHE¬AF÷Chelsea¬JB÷hbyQwcHB¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷2HndyZIG¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷WlzUxHWH¬WU÷tottenham¬WN÷ARS¬AF÷Arsenal¬JB÷QBZXyynO¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷fDAPJ6mq¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷vFwxye1U¬WU÷watford¬WN÷NEW¬AF÷Newcastle¬JB÷4x5rdvXu¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷Y39TIQ2k¬AD÷1594476000¬ADE÷1594476000¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 35¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷rT3nebnn¬WU÷wolves¬WN÷EVE¬AF÷Everton¬JB÷C28jfI1h¬WV÷everton¬AW÷1¬AN÷n¬~AA÷0QuQHpIe¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷jg7fgxHb¬WU÷arsenal¬WN÷LIV¬AF÷Liverpool¬JB÷YHdahdW4¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷vHvUG4X1¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷W2F2iGoB¬WU÷burnley¬WN÷WOL¬AF÷Wolves¬JB÷QPE6jz1H¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷hKSBulA2¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷4GDAkfGN¬WU÷chelsea¬WN÷NOR¬AF÷Norwich¬JB÷Mi8FlEVT¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷6NWFv8P8¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷O0fspYwo¬WU÷crystal-palace¬WN÷MNU¬AF÷Manchester Utd¬JB÷x4rP8HGo¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷lnMKwSvF¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷j7nT7yWi¬WU÷everton¬WN÷AST¬AF÷Aston Villa¬JB÷YVyY6eob¬WV÷aston-villa¬AW÷1¬AN÷n¬~AA÷SxLOxnfL¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷CMzx6F04¬WU÷leicester¬WN÷SHU¬AF÷Sheffield Utd¬JB÷Knzt5ZFA¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷dCPSy69R¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷bwZq4gVG¬WU÷manchester-city¬WN÷BOU¬AF÷Bournemouth¬JB÷t2Ol3DpN¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷bLBfXPHr¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷f5Sh2XaT¬WU÷newcastle-utd¬WN÷TOT¬AF÷Tottenham¬JB÷CpFKci8p¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷tp1aWqXl¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷jyEOdBNj¬WU÷southampton¬WN÷BHA¬AF÷Brighton¬JB÷Shc7Lf0i¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷hK43V3ne¬AD÷1594839600¬ADE÷1594839600¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 36¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷6qdBKEFc¬WU÷west-ham¬WN÷WAT¬AF÷Watford¬JB÷06eFJYU3¬WV÷watford¬AW÷1¬AN÷n¬~AA÷QX2BTsH7¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Aston Villa¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷AST¬AE÷Aston Villa¬JA÷YemSGWEM¬WU÷aston-villa¬WN÷ARS¬AF÷Arsenal¬JB÷2ViWFjUS¬WV÷arsenal¬AW÷1¬AN÷n¬~AA÷ns47UN11¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Bournemouth¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BOU¬AE÷Bournemouth¬JA÷CtaJIhpA¬WU÷bournemouth¬WN÷SOU¬AF÷Southampton¬JB÷f5lOHCaG¬WV÷southampton¬AW÷1¬AN÷n¬~AA÷2knfhRg8¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Brighton¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BHA¬AE÷Brighton¬JA÷4vvbBAxp¬WU÷brighton¬WN÷NEW¬AF÷Newcastle¬JB÷n3T2AUij¬WV÷newcastle-utd¬AW÷1¬AN÷n¬~AA÷ttobio9E¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Liverpool¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LIV¬AE÷Liverpool¬JA÷06X69l7d¬WU÷liverpool¬WN÷CHE¬AF÷Chelsea¬JB÷E9LlYXqc¬WV÷chelsea¬AW÷1¬AN÷n¬~AA÷z3p2j5OK¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MNU¬AE÷Manchester Utd¬JA÷h0KhXia3¬WU÷manchester-united¬WN÷WHU¬AF÷West Ham¬JB÷KMjkWBE9¬WV÷west-ham¬AW÷1¬AN÷n¬~AA÷l6l6kPwR¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Norwich¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NOR¬AE÷Norwich¬JA÷bDkgVVTF¬WU÷norwich¬WN÷BUR¬AF÷Burnley¬JB÷j9DMD3br¬WV÷burnley¬AW÷1¬AN÷n¬~AA÷fmRYpqnr¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Sheffield Utd¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SHU¬AE÷Sheffield Utd¬JA÷4CHQCNDl¬WU÷sheffield-utd¬WN÷EVE¬AF÷Everton¬JB÷ny7VBsTf¬WV÷everton¬AW÷1¬AN÷n¬~AA÷YwQxp31l¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Tottenham¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷TOT¬AE÷Tottenham¬JA÷QR5ZA1r1¬WU÷tottenham¬WN÷LEI¬AF÷Leicester¬JB÷f1AwALc7¬WV÷leicester¬AW÷1¬AN÷n¬~AA÷t4PtqNGf¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷Yi9s9uDD¬WU÷watford¬WN÷MCI¬AF÷Manchester City¬JB÷zcmQXOkE¬WV÷manchester-city¬AW÷1¬AN÷n¬~AA÷KfOprsW0¬AD÷1595080800¬ADE÷1595080800¬AB÷1¬CR÷1¬AC÷1¬CX÷Wolves¬ER÷Round 37¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WOL¬AE÷Wolves¬JA÷nXjUWr5K¬WU÷wolves¬WN÷CRY¬AF÷Crystal Palace¬JB÷tfjYV2KQ¬WV÷crystal-palace¬AW÷1¬AN÷n¬~AA÷2JDks1o7¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Arsenal¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷ARS¬AE÷Arsenal¬JA÷r3x0RMSs¬WU÷arsenal¬WN÷WAT¬AF÷Watford¬JB÷0vX4Qtrl¬WV÷watford¬AW÷1¬AN÷n¬~AA÷GMHgtL0D¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Burnley¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷BUR¬AE÷Burnley¬JA÷vVV8P0cf¬WU÷burnley¬WN÷BHA¬AF÷Brighton¬JB÷YiVCOKC0¬WV÷brighton¬AW÷1¬AN÷n¬~AA÷UP5y54wE¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Chelsea¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CHE¬AE÷Chelsea¬JA÷neZGNvS6¬WU÷chelsea¬WN÷WOL¬AF÷Wolves¬JB÷UJOLMbsD¬WV÷wolves¬AW÷1¬AN÷n¬~AA÷8G4u4OhK¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Crystal Palace¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷CRY¬AE÷Crystal Palace¬JA÷8ANPLIdJ¬WU÷crystal-palace¬WN÷TOT¬AF÷Tottenham¬JB÷zHB7p2ZJ¬WV÷tottenham¬AW÷1¬AN÷n¬~AA÷Qiap3r8Q¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Everton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷EVE¬AE÷Everton¬JA÷E7ABqMlQ¬WU÷everton¬WN÷BOU¬AF÷Bournemouth¬JB÷Klmvutcs¬WV÷bournemouth¬AW÷1¬AN÷n¬~AA÷S0oCb2Gs¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Leicester¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷LEI¬AE÷Leicester¬JA÷Yiirv0Cm¬WU÷leicester¬WN÷MNU¬AF÷Manchester Utd¬JB÷SEjnwKRg¬WV÷manchester-united¬AW÷1¬AN÷n¬~AA÷MNpGcMVm¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Manchester City¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷MCI¬AE÷Manchester City¬JA÷65kjxvs0¬WU÷manchester-city¬WN÷NOR¬AF÷Norwich¬JB÷Otpeybd6¬WV÷norwich¬AW÷1¬AN÷n¬~AA÷K83Jdtof¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Newcastle¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷NEW¬AE÷Newcastle¬JA÷2XrazIBC¬WU÷newcastle-utd¬WN÷LIV¬AF÷Liverpool¬JB÷dfr3ZyRI¬WV÷liverpool¬AW÷1¬AN÷n¬~AA÷2XhOe000¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷fu16YetP¬WU÷southampton¬WN÷SHU¬AF÷Sheffield Utd¬JB÷bDRnslpP¬WV÷sheffield-utd¬AW÷1¬AN÷n¬~AA÷tOiSfKF6¬AD÷1595772000¬ADE÷1595772000¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 38¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷0MDEx8ht¬WU÷west-ham¬WN÷AST¬AF÷Aston Villa¬JB÷UeIIyS7n¬WV÷aston-villa¬AW÷1¬AN÷n¬~ \ No newline at end of file diff --git a/html/flashscore b/html/flashscore new file mode 100755 index 0000000..5638c1a Binary files /dev/null and b/html/flashscore differ diff --git a/html/football.match_sumamry.html b/html/football.match_sumamry.html new file mode 100755 index 0000000..d49ba67 --- /dev/null +++ b/html/football.match_sumamry.html @@ -0,0 +1,85 @@ + +
    +
    +
    1st Half
    +
    + 1 - 0 +
    +
    + +
    +
    40'
    +
    +   +
    + + Barnes H. + + (Albrighton M.) +
    +
    +
    43'
    +
    +   +
    + (Holding) + + Hourihane C. + +
    + +
    +
    2nd Half
    +
    + 3 -0 +
    +
    +
    +
    59'
    +
    +   +
    + + Vardy J. + + +   + Iheanacho K. + +
    +
    +
    63'
    +
    +   +
    + + Vardy J. + + (Penalty) +
    +
    +
    63'
    +
    +   +
    + + El-Ghazi A. + + + Elmohamady A. +   + +
    +
    71'
     
    Praet D.(Tripping)
    76'
     
    Evans J.(Foul)
    +
    +
    +
    +
    Match Information
    +
    +
    +
    Referee: Oliver M. (Eng), 
    +
    Attendance: 32 125, 
    +
    Venue: King Power Stadium (Leicester)
    +
    \ No newline at end of file diff --git a/html/football.odds.html b/html/football.odds.html new file mode 100755 index 0000000..007c065 --- /dev/null +++ b/html/football.odds.html @@ -0,0 +1,480 @@ + + + + + + + + HOF - RBL | Hoffenheim - RB Leipzig + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + +
    +
    +
    + + + GERMANY: Bundesliga - Round 31 +
    +
    +
    + + +
    Loading...
    +
    +
    +
    + +
    +
    + + + Hoffenheim
    +
    +
    +
    +
    +
    + + Hoffenheim +
    +
    +
    + +
    +
    +
    + - +
    +
    +   +
    + +
    +
    + +
    +
    + + +
    RB Leipzig +
    +
    +
    +
    +
    + RB Leipzig + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    advertisement
    advertisement
    advertisement
    advertisement
    + Gamble Responsibly. Gambling Therapy. 18+ +
    + + + + + +
    + + \ No newline at end of file diff --git a/html/football_h2h_tr.html b/html/football_h2h_tr.html new file mode 100755 index 0000000..e7980fc --- /dev/null +++ b/html/football_h2h_tr.html @@ -0,0 +1,20 @@ + + + 1583784000 + + + PL] + + + Leicester + + + Aston Villa + + + 4 : 0 + + + L + + \ No newline at end of file diff --git a/html/h2h.data.england.html b/html/h2h.data.england.html new file mode 100755 index 0000000..bbddf2f --- /dev/null +++ b/html/h2h.data.england.html @@ -0,0 +1,204 @@ +
     
    Last matches: ASTON VILLA
    1583784000PLLeicesterAston Villa4 : 0L
    1583080200EFLAston VillaManchester City1 : 2L
    1582383600PLSouthamptonAston Villa2 : 0L
    1581861600PLAston VillaTottenham2 : 3L
    1580569200PLBournemouthAston Villa2 : 1L
    Show more matches
    Last matches: SHEFFIELD UTD
    1583593200PLSheffield UtdNorwich1 : 0W
    1583265600FACReadingSheffield Utd1 : 2
    (1 : 1)
    W
    1582383600PLSheffield UtdBrighton1 : 1D
    1581256800PLSheffield UtdBournemouth2 : 1W
    1580569200PLCrystal PalaceSheffield Utd0 : 1W
    Show more matches
    + + + +
    Head-to-head matches: ASTON VILLA - SHEFFIELD UTD
    1576335600PLSheffield UtdAston Villa2 : 0
    1549655100CHAAston VillaSheffield Utd3 : 3
    1535810400CHASheffield UtdAston Villa4 : 1
    1517341500CHASheffield UtdAston Villa0 : 1
    1514050200CHAAston VillaSheffield Utd2 : 2
    Show more matches
    + + +
    \ No newline at end of file diff --git a/html/h2h.england.html b/html/h2h.england.html new file mode 100755 index 0000000..4ed93a7 --- /dev/null +++ b/html/h2h.england.html @@ -0,0 +1,480 @@ + + + + + + + + HOF - RBL | Hoffenheim - RB Leipzig + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    + +
    +
    +
    + + + GERMANY: Bundesliga - Round 31 +
    +
    +
    + + +
    Loading...
    +
    +
    +
    + +
    +
    + + + Hoffenheim
    +
    +
    +
    +
    +
    + + Hoffenheim +
    +
    +
    + +
    +
    +
    + - +
    +
    +   +
    + +
    +
    + +
    +
    + + +
    RB Leipzig +
    +
    +
    +
    +
    + RB Leipzig + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    advertisement
    advertisement
    advertisement
    advertisement
    + Gamble Responsibly. Gambling Therapy. 18+ +
    + + + + + +
    + + \ No newline at end of file diff --git a/html/odds.html b/html/odds.html new file mode 100755 index 0000000..f7a3da4 --- /dev/null +++ b/html/odds.html @@ -0,0 +1,9426 @@ +
    Switch odds format: EU | UK | US | HK | MA | IN
    +
     
    +
    + +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Bookmaker1X2
    + +
     
    +
    3.383.102.52
    + +
     
    +
    3.303.102.37
    + + 3.252.952.43
    + + 3.403.002.45
    + +
     
    +
    3.303.202.30
    + + 3.353.102.40
    + + 3.303.002.40
    +
    + + +
    + + + + + + + + + +
    Odds displayed are advertising content from the listed bookmakers.
    +
    +
    \ No newline at end of file diff --git a/html/odds_full_time.tr.html b/html/odds_full_time.tr.html new file mode 100755 index 0000000..b893b31 --- /dev/null +++ b/html/odds_full_time.tr.html @@ -0,0 +1,45 @@ + + + + +
    +   +
    + + + 3.24 + + + 3.50 + + + 2.37 + + + + + + + +
    +   +
    + + + 3.24 + + + 3.50 + + + 2.37 + + \ No newline at end of file diff --git a/html/temp.html b/html/temp.html new file mode 100755 index 0000000..576093f --- /dev/null +++ b/html/temp.html @@ -0,0 +1 @@ +
    Last matches: ASTON VILLA
    1583784000PLLeicesterAston Villa4 : 0L
    1583080200EFLAston VillaManchester City1 : 2L
    1582383600PLSouthamptonAston Villa2 : 0L
    1581861600PLAston VillaTottenham2 : 3L
    1580569200PLBournemouthAston Villa2 : 1L
    Show more matches
    Last matches: SHEFFIELD UTD
    1583593200PLSheffield UtdNorwich1 : 0W
    1583265600FACReadingSheffield Utd1 : 2
    (1 : 1)
    W
    1582383600PLSheffield UtdBrighton1 : 1D
    1581256800PLSheffield UtdBournemouth2 : 1W
    1580569200PLCrystal PalaceSheffield Utd0 : 1W
    Show more matches
    Head-to-head matches: ASTON VILLA - SHEFFIELD UTD
    1576335600PLSheffield UtdAston Villa2 : 0
    1549655100CHAAston VillaSheffield Utd3 : 3
    1535810400CHASheffield UtdAston Villa4 : 1
    1517341500CHASheffield UtdAston Villa0 : 1
    1514050200CHAAston VillaSheffield Utd2 : 2
    Show more matches
    \ No newline at end of file diff --git a/html/top-block b/html/top-block new file mode 100755 index 0000000..942eb11 --- /dev/null +++ b/html/top-block @@ -0,0 +1,7 @@ +AA÷h4n4CUOI¬AD÷1593630900¬ADE÷1593630900¬AB÷1¬CR÷1¬AC÷1¬CX÷West Ham¬ER÷Round 32¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WHU¬AE÷West Ham¬JA÷bs9XOElg¬WU÷west-ham¬WN÷CHE¬AF÷Chelsea¬JB÷t6bxOY3a¬WV÷chelsea¬AW÷1¬AN÷n¬ + +AA÷pI7L1DA0¬AD÷1593104400¬ADE÷1593104400¬AB÷1¬CR÷1¬AC÷1¬CX÷Southampton¬ER÷Round 31¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷SOU¬AE÷Southampton¬JA÷0CQcsH5D¬WU÷southampton¬WN÷ARS¬AF÷Arsenal¬JB÷2H4t60rE¬WV÷arsenal¬AL÷{"1":[{"TVI":794,"BU":"https:\/\/www.mycanal.fr\/","BN":"CANAL+ Sport (Fra)"},{"TVI":11,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ Sport (Fra)"},{"TVI":680,"BU":"http:\/\/www.skysports.com\/","BN":"Sky Sports Premier League (UK\/Irl)"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|455|33|508|24|27|471|43¬ + + +AA÷2y7t1tKk¬AD÷1592652600¬ADE÷1592652600¬AB÷1¬CR÷1¬AC÷1¬CX÷Watford¬ER÷Round 30¬RW÷0¬AX÷0¬BX÷-1¬WQ÷¬WM÷WAT¬AE÷Watford¬JA÷4bfJhj8c¬WU÷watford¬WN÷LEI¬AF÷Leicester¬JB÷bLgNiAN3¬WV÷leicester¬AL÷{"1":[{"TVI":361,"BU":"http:\/\/sport.bt.com\/","BN":"BT Sport"},{"TVI":73,"BU":"http:\/\/decouvrir.mycanal.fr\/","BN":"C+ France"}]}¬BGS÷{"GB":[16],"CZ":[49,45],"SK":[411]}¬AW÷1¬AN÷n¬MW÷417|453|454|455|33|544|508|24|27|471|43¬ + diff --git a/main.xgo b/main.xgo new file mode 100755 index 0000000..c9199bf --- /dev/null +++ b/main.xgo @@ -0,0 +1,124 @@ +package flashscore + +import ( + "fmt" + //"io/ioutil" + //webspider "spider" + //"strconv" + //"strings" + //"time" + "bytes" + + "github.com/PuerkitoBio/goquery" + + //"github.com/kr/pretty" + //"html" + "flashscore/model" +) + +//var ( +// spider *webspider.Spider +//) + +/* + err = ioutil.WriteFile("fixtures-unescaped", []byte(content), 0666) + if err != nil { + return + } +*/ + +var trsrc = ` + + + + + + + + + + +
    + 1583784000 + + PL] + + Leicester + + Aston Villa + + 4 : 0 + + L +
    + +` + +func testParseTr(src string) (err error) { + doc, err := goquery.NewDocumentFromReader(bytes.NewBuffer([]byte(src))) + if err != nil { + return + } + /* + txt, err := doc.Html() + if err != nil { + return + } + + fmt.Printf("%s\n", txt) + + + trs := doc.Find("tr") + + fmt.Printf("trs: %d\n", trs.Length()) + */ + trs := doc.Find(".highlight") + for trIdx := range trs.Nodes { + var m model.TeamMatch + //fmt.Printf("trIdx: %d\n", trIdx) + + m, err = parseMatchResultTr(trs.Eq(trIdx)) + if err != nil { + err = fmt.Errorf("parseTr: %s", err) + return + } + + fmt.Printf("%v\n", m) + fmt.Println() + } + return +} + +/* + + */ +// cut +/* + txt, err := first.Html() + if err != nil { + return + } + + err = ioutil.WriteFile("temp", []byte(html.UnescapeString(txt)), 0666) + if err != nil { + return + } +*/ +// end cut +//n := first.Get(0) + +//fmt.Printf("node: %#v\n\n", txt) + +/* + +Всё. Я написал. Парсит следующие страницы: + +https://www.flashscore.com/football/england/premier-league/fixtures/ - расписание матчей + +https://www.flashscore.com/match/lUKXoAEo/#h2h;overall - H2H (все 3 вкладки: overall, home, away) + +https://www.flashscore.com/match/lUKXoAEo/#odds-comparison;1x2-odds;full-time - коэфф. на FullTime 1 x 2 (плюс определяет букмекеров) + +https://www.flashscore.com/match/Sv4qwtWD/#match-summary - из отчета по матчу достает только счет 1го и 2го тайма + +*/ diff --git a/model/errors.go b/model/errors.go new file mode 100755 index 0000000..674092e --- /dev/null +++ b/model/errors.go @@ -0,0 +1,21 @@ +package model + +import "gordenko.dev/dima/fixme" + +const ( + EmptyValue fixme.Code = "100" + UnknownZone fixme.Code = "101" + UnknownChamp fixme.Code = "102" + UnknownTeam fixme.Code = "103" + Duplicate fixme.Code = "104" +) + +var errorMessages = map[fixme.Code]string{ + EmptyValue: "Пустое значение недопустимо", + UnknownZone: "Неизвестная страна/регион", + UnknownChamp: "Неизвестный чемпионат", + UnknownTeam: "Неизвестная команда", + Duplicate: "Дубликат!", +} + +var fix = fixme.New(errorMessages) diff --git a/model/football.sgo b/model/football.sgo new file mode 100644 index 0000000..dcc0036 --- /dev/null +++ b/model/football.sgo @@ -0,0 +1,416 @@ +package model + +import ( + "fmt" + "strings" + "web/api" +) + +func (s *Model) GetFootballZone(zoneID string) (_ *FootballZone, err error) { + zone := FootballZone{ + ZoneID: zoneID, + } + + found, err := s.qx.One(&zone) + if err != nil { + return + } + + if !found { + return + } + return &zone, nil +} + +func (s *Model) GetFootballChamp(champID string) (_ *FootballChamp, err error) { + champ := FootballChamp{ + ChampID: champID, + } + + found, err := s.qx.One(&champ) + if err != nil { + return + } + + if !found { + return + } + return &champ, nil +} + +func (s *Model) GetFootballTeam(teamID string) (_ *FootballTeam, err error) { + team := FootballTeam{ + TeamID: teamID, + } + + found, err := s.qx.One(&team) + if err != nil { + return + } + + if !found { + return + } + return &team, nil +} + +func (s *Model) GetFootballMatch(matchID string) (_ *FootballMatch, err error) { + m := FootballMatch{ + MatchID: matchID, + } + + found, err := s.qx.One(&m) + if err != nil { + return + } + + if !found { + return + } + + return &m, nil +} + +func (s *Model) AddFootballZone(req FootballZone) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +func (s *Model) AddFootballChamp(req FootballChamp) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + has, err := tx.Has("footballZones", "WHERE zoneID=?", req.ZoneID) + if err != nil { + return + } + + if !has { + err = api.Err{ + Code: UnknownZone, + Field: "zoneID", + } + return + } + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +func (s *Model) UpdateFootballChampName(req FootballChamp) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + err = s.qx.Exec("UPDATE footballChamps SET name=? WHERE champID=?", req.Name, req.ChampID) + if err != nil { + return + } + return +} + +func (s *Model) AddFootballTeam(req FootballTeam) (err error) { + req.CanonicalName = NormalizeNameToAlias(req.CanonicalName) + + if req.CanonicalName == "" { + err = api.Err{ + Code: EmptyValue, + Field: "canonicalName", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + + // Добавляем alias + _, err = tx.Insert(FootballAlias{ + Name: req.CanonicalName, + TeamID: req.TeamID, + }) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) AddFootballTeamAlias(req FootballAlias) (err error) { + req.AliasID = 0 + req.Name = NormalizeNameToAlias(req.Name) + + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + hasTeam, err := tx.Has("footballTeams", "WHERE teamID=?", req.TeamID) + if err != nil { + return + } + + if !hasTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + hasAlias, err := tx.Has("footballTeamAliases", "WHERE teamID=? AND name=?", + req.TeamID, req.Name) + if err != nil { + return + } + + if hasAlias { + err = api.Err{ + Code: Duplicate, + Field: "name", + } + return + } + + // Добавляем alias + _, err = tx.Insert(req) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) SetFootballTeamWasLinked(teamID string) (err error) { + err = s.qx.Exec(`UPDATE footballTeams SET wasLinked=true WHERE teamID=?`, teamID) + return +} + +func (s *Model) RemoveFootballTeamAlias(aliasID int64) (err error) { + return s.qx.Exec(`DELETE FROM footballTeamAliases WHERE aliasID=?`, aliasID) +} + +func (s *Model) AddFootballMatch(req FootballMatch) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + req.MatchID = strings.TrimSpace(req.MatchID) + + if req.MatchID == "" { + err = api.Err{ + Code: EmptyValue, + Field: "matchID", + } + return + } + + hasChamp, err := tx.Has("footballChamps", "WHERE champID=?", req.ChampID) + if err != nil { + return + } + + if !hasChamp { + err = api.Err{ + Code: UnknownChamp, + Field: "champID", + } + return + } + + hasHomeTeam, err := tx.Has("footballTeams", "WHERE teamID=?", req.HomeTeamID) + if err != nil { + return + } + + if !hasHomeTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + hasAwayTeam, err := tx.Has("footballTeams", "WHERE teamID=?", req.AwayTeamID) + if err != nil { + return + } + + if !hasAwayTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +type UpdateFootballTeamCanonicalNameIn struct { + TeamID string + CanonicalName string + NewCanonicalName string +} + +func (s *Model) UpdateFootballTeamCanonicalName(in UpdateFootballTeamCanonicalNameIn) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + // Старый canonicalName не нормализуем, ибо предполагается что имя мы получили из БД + in.NewCanonicalName = NormalizeNameToAlias(in.NewCanonicalName) + + if in.NewCanonicalName == "" { + err = api.Err{ + Code: EmptyValue, + Field: "newCanonicalName", + } + return + } + + // Удаляем старый alias + err = tx.Exec("DELETE FROM footballTeamAliases WHERE teamID=? AND name=?", + in.TeamID, in.CanonicalName) + if err != nil { + return + } + + // Обновляем canonicalName + err = tx.Exec("UPDATE footballTeams SET canonicalName=? WHERE teamID=?", + in.NewCanonicalName, in.TeamID) + if err != nil { + fmt.Printf("old: %q, new: %q, teamID: %s\n", in.CanonicalName, + in.NewCanonicalName, in.TeamID) + + //return + err = nil + } + + hasAlias, err := tx.Has("footballTeamAliases", "WHERE teamID=? AND name=?", + in.TeamID, in.NewCanonicalName) + if err != nil { + return + } + + if !hasAlias { + // Добавляем новый alias + _, err = tx.Insert(FootballAlias{ + Name: in.NewCanonicalName, + TeamID: in.TeamID, + }) + if err != nil { + return + } + } + + err = tx.Commit() + return +} + +func (s *Model) ListFootballZones() (list []FootballZone, err error) { + err = s.qx.ListBy(&list, `ORDER BY name ASC`) + if err != nil { + return + } + return +} + +func (s *Model) ListFootballTeamCandidates(name string) (matchIDs []string, err error) { + name = NormalizeNameToAlias(name) + + err = s.qx.ListQuery(&matchIDs, + `SELECT teamID FROM footballTeamAliases WHERE name=?`, name) + if err != nil { + return + } + return +} + +func (s *Model) ListFootballTeamsByZone(zoneID string) (list []FootballTeam, err error) { + err = s.qx.ListBy(&list, `WHERE zoneID=? ORDER BY canonicalName ASC`, zoneID) + if err != nil { + return + } + return +} + +func (s *Model) ListFootballTeamAliases(teamID string) (list []FootballAlias, err error) { + err = s.qx.ListBy(&list, `WHERE teamID=? ORDER BY name ASC`, teamID) + if err != nil { + return + } + return +} + +func (s *Model) ListFootballTeams() (list []FootballTeam, err error) { + err = s.qx.List(&list) + if err != nil { + return + } + return +} diff --git a/model/football.sql b/model/football.sql new file mode 100755 index 0000000..08a083f --- /dev/null +++ b/model/football.sql @@ -0,0 +1,163 @@ +CREATE TABLE footballZones ( + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(zoneID), + UNIQUE(name) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + +CREATE TABLE footballChamps ( + champID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(champID), + UNIQUE(zoneID, name), + + FOREIGN KEY (zoneID) REFERENCES footballZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE footballTeams ( + teamID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + canonicalName VARCHAR(255) NOT NULL, + wasLinked BOOL NOT NULL, + + PRIMARY KEY(teamID), + --UNIQUE(zoneID, canonicalName), + + FOREIGN KEY (zoneID) REFERENCES footballZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE footballTeamAliases ( + aliasID INT NOT NULL AUTO_INCREMENT, + teamID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(aliasID), + UNIQUE(teamID, name), + + FOREIGN KEY (teamID) REFERENCES footballTeams(teamID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE footballMatches ( + matchID VARCHAR(255) NOT NULL, + startTime INT NOT NULL, + champID VARCHAR(255) NOT NULL, + homeTeamID VARCHAR(255) NOT NULL, + awayTeamID VARCHAR(255) NOT NULL, + homeGoals INT NOT NULL, + awayGoals INT NOT NULL, + hasStats BOOL NOT NULL, + p1HomeGoals INT NOT NULL, + p1AwayGoals INT NOT NULL, + p2HomeGoals INT NOT NULL, + p2AwayGoals INT NOT NULL, + + PRIMARY KEY(matchID), + + FOREIGN KEY (champID) REFERENCES footballChamps(champID), + FOREIGN KEY (homeTeamID) REFERENCES footballTeams(teamID), + FOREIGN KEY (awayTeamID) REFERENCES footballTeams(teamID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + +--INSERT INTO footballChamps VALUES (NULL, "Seria A (Italy)"); +--INSERT INTO footballChamps VALUES (NULL, "Bundesliga (Germany)"); +--INSERT INTO footballChamps VALUES (NULL, "Premier League (England)"); + +delete from footballTeamAliases; +delete from footballMatches; +delete from footballTeams; +delete from footballChamps; +delete from footballZones; + + +-- HANDBALL + +CREATE TABLE handballZones ( + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(zoneID), + UNIQUE(name) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + +CREATE TABLE handballChamps ( + champID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(champID), + UNIQUE(zoneID, name), + + FOREIGN KEY (zoneID) REFERENCES handballZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE handballTeams ( + teamID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + canonicalName VARCHAR(255) NOT NULL, + wasLinked BOOL NOT NULL, + + PRIMARY KEY(teamID), + + FOREIGN KEY (zoneID) REFERENCES handballZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE handballTeamAliases ( + aliasID INT NOT NULL AUTO_INCREMENT, + teamID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(aliasID), + UNIQUE(teamID, name), + + FOREIGN KEY (teamID) REFERENCES handballTeams(teamID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE handballMatches ( + matchID VARCHAR(255) NOT NULL, + startTime INT NOT NULL, + champID VARCHAR(255) NOT NULL, + homeTeamID VARCHAR(255) NOT NULL, + awayTeamID VARCHAR(255) NOT NULL, + homeGoals INT NOT NULL, + awayGoals INT NOT NULL, + hasStats BOOL NOT NULL, + p1HomeGoals INT NOT NULL, + p1AwayGoals INT NOT NULL, + p2HomeGoals INT NOT NULL, + p2AwayGoals INT NOT NULL, + + PRIMARY KEY(matchID), + + FOREIGN KEY (champID) REFERENCES handballChamps(champID), + FOREIGN KEY (homeTeamID) REFERENCES handballTeams(teamID), + FOREIGN KEY (awayTeamID) REFERENCES handballTeams(teamID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + +--INSERT INTO footballChamps VALUES (NULL, "Seria A (Italy)"); +--INSERT INTO footballChamps VALUES (NULL, "Bundesliga (Germany)"); +--INSERT INTO footballChamps VALUES (NULL, "Premier League (England)"); + +delete from handballTeamAliases; +delete from handballMatches; +delete from handballTeams; +delete from handballChamps; +delete from handballZones; diff --git a/model/handball.sgo b/model/handball.sgo new file mode 100644 index 0000000..2451070 --- /dev/null +++ b/model/handball.sgo @@ -0,0 +1,416 @@ +package model + +import ( + "fmt" + "strings" + "web/api" +) + +func (s *Model) GetHandballZone(zoneID string) (_ *HandballZone, err error) { + zone := HandballZone{ + ZoneID: zoneID, + } + + found, err := s.qx.One(&zone) + if err != nil { + return + } + + if !found { + return + } + return &zone, nil +} + +func (s *Model) GetHandballChamp(champID string) (_ *HandballChamp, err error) { + champ := HandballChamp{ + ChampID: champID, + } + + found, err := s.qx.One(&champ) + if err != nil { + return + } + + if !found { + return + } + return &champ, nil +} + +func (s *Model) GetHandballTeam(teamID string) (_ *HandballTeam, err error) { + team := HandballTeam{ + TeamID: teamID, + } + + found, err := s.qx.One(&team) + if err != nil { + return + } + + if !found { + return + } + return &team, nil +} + +func (s *Model) GetHandballMatch(matchID string) (_ *HandballMatch, err error) { + m := HandballMatch{ + MatchID: matchID, + } + + found, err := s.qx.One(&m) + if err != nil { + return + } + + if !found { + return + } + + return &m, nil +} + +func (s *Model) AddHandballZone(req HandballZone) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +func (s *Model) AddHandballChamp(req HandballChamp) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + has, err := tx.Has("handballZones", "WHERE zoneID=?", req.ZoneID) + if err != nil { + return + } + + if !has { + err = api.Err{ + Code: UnknownZone, + Field: "zoneID", + } + return + } + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +func (s *Model) UpdateHandballChampName(req HandballChamp) (err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + err = s.qx.Exec("UPDATE handballChamps SET name=? WHERE champID=?", req.Name, req.ChampID) + if err != nil { + return + } + return +} + +func (s *Model) AddHandballTeam(req HandballTeam) (err error) { + req.CanonicalName = NormalizeNameToAlias(req.CanonicalName) + + if req.CanonicalName == "" { + err = api.Err{ + Code: EmptyValue, + Field: "canonicalName", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + + // Добавляем alias + _, err = tx.Insert(HandballAlias{ + Name: req.CanonicalName, + TeamID: req.TeamID, + }) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) AddHandballTeamAlias(req HandballAlias) (err error) { + req.AliasID = 0 + req.Name = NormalizeNameToAlias(req.Name) + + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + hasTeam, err := tx.Has("handballTeams", "WHERE teamID=?", req.TeamID) + if err != nil { + return + } + + if !hasTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + hasAlias, err := tx.Has("handballTeamAliases", "WHERE teamID=? AND name=?", + req.TeamID, req.Name) + if err != nil { + return + } + + if hasAlias { + err = api.Err{ + Code: Duplicate, + Field: "name", + } + return + } + + // Добавляем alias + _, err = tx.Insert(req) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) SetHandballTeamWasLinked(teamID string) (err error) { + err = s.qx.Exec(`UPDATE handballTeams SET wasLinked=true WHERE teamID=?`, teamID) + return +} + +func (s *Model) RemoveHandballTeamAlias(aliasID int64) (err error) { + return s.qx.Exec(`DELETE FROM handballTeamAliases WHERE aliasID=?`, aliasID) +} + +func (s *Model) AddHandballMatch(req HandballMatch) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + req.MatchID = strings.TrimSpace(req.MatchID) + + if req.MatchID == "" { + err = api.Err{ + Code: EmptyValue, + Field: "matchID", + } + return + } + + hasChamp, err := tx.Has("handballChamps", "WHERE champID=?", req.ChampID) + if err != nil { + return + } + + if !hasChamp { + err = api.Err{ + Code: UnknownChamp, + Field: "champID", + } + return + } + + hasHomeTeam, err := tx.Has("handballTeams", "WHERE teamID=?", req.HomeTeamID) + if err != nil { + return + } + + if !hasHomeTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + hasAwayTeam, err := tx.Has("handballTeams", "WHERE teamID=?", req.AwayTeamID) + if err != nil { + return + } + + if !hasAwayTeam { + err = api.Err{ + Code: UnknownTeam, + Field: "teamID", + } + return + } + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +type UpdateHandballTeamCanonicalNameIn struct { + TeamID string + CanonicalName string + NewCanonicalName string +} + +func (s *Model) UpdateHandballTeamCanonicalName(in UpdateHandballTeamCanonicalNameIn) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + // Старый canonicalName не нормализуем, ибо предполагается что имя мы получили из БД + in.NewCanonicalName = NormalizeNameToAlias(in.NewCanonicalName) + + if in.NewCanonicalName == "" { + err = api.Err{ + Code: EmptyValue, + Field: "newCanonicalName", + } + return + } + + // Удаляем старый alias + err = tx.Exec("DELETE FROM handballTeamAliases WHERE teamID=? AND name=?", + in.TeamID, in.CanonicalName) + if err != nil { + return + } + + // Обновляем canonicalName + err = tx.Exec("UPDATE handballTeams SET canonicalName=? WHERE teamID=?", + in.NewCanonicalName, in.TeamID) + if err != nil { + fmt.Printf("old: %q, new: %q, teamID: %s\n", in.CanonicalName, + in.NewCanonicalName, in.TeamID) + + //return + err = nil + } + + hasAlias, err := tx.Has("handballTeamAliases", "WHERE teamID=? AND name=?", + in.TeamID, in.NewCanonicalName) + if err != nil { + return + } + + if !hasAlias { + // Добавляем новый alias + _, err = tx.Insert(HandballAlias{ + Name: in.NewCanonicalName, + TeamID: in.TeamID, + }) + if err != nil { + return + } + } + + err = tx.Commit() + return +} + +func (s *Model) ListHandballZones() (list []HandballZone, err error) { + err = s.qx.ListBy(&list, `ORDER BY name ASC`) + if err != nil { + return + } + return +} + +func (s *Model) ListHandballTeamCandidates(name string) (matchIDs []string, err error) { + name = NormalizeNameToAlias(name) + + err = s.qx.ListQuery(&matchIDs, + `SELECT teamID FROM handballTeamAliases WHERE name=?`, name) + if err != nil { + return + } + return +} + +func (s *Model) ListHandballTeamsByZone(zoneID string) (list []HandballTeam, err error) { + err = s.qx.ListBy(&list, `WHERE zoneID=? ORDER BY canonicalName ASC`, zoneID) + if err != nil { + return + } + return +} + +func (s *Model) ListHandballTeamAliases(teamID string) (list []HandballAlias, err error) { + err = s.qx.ListBy(&list, `WHERE teamID=? ORDER BY name ASC`, teamID) + if err != nil { + return + } + return +} + +func (s *Model) ListHandballTeams() (list []HandballTeam, err error) { + err = s.qx.List(&list) + if err != nil { + return + } + return +} diff --git a/model/model.go b/model/model.go new file mode 100755 index 0000000..c18bd52 --- /dev/null +++ b/model/model.go @@ -0,0 +1,82 @@ +package model + +import ( + "regexp" + "strings" + + "gordenko.dev/dima/qx" + "gordenko.dev/dima/textutil" +) + +func New(qxdb *qx.Db) *Model { + s := new(Model) + s.qx = qxdb + return s +} + +var reCountryCode = regexp.MustCompile(`\([a-z]{3}\)`) + +// NormalizeNameToAlias - удаляет лишние пробельные символы. Заменяет whitespace символы на пробел, +// приводит к нижнему регистру +func NormalizeNameToAlias(name string) string { + name = strings.ToLower(name) + + // вырезаем код страны если есть (пример: (Aut)) + name = reCountryCode.ReplaceAllString(name, "") + + name = strings.TrimSpace(name) + + return textutil.NormalizeWhitespaces(name) +} + +/* +func (s *Model) ListFootballChamps() (list []FootballChamp, err error) { + err = s.qx.ListBy(&list, "ORDER BY name ASC") + return +} + + +func (s *Model) ListFootballChampTeams(champID int64) (list []Team, err error) { + err = s.qx.ListBy(&list, "WHERE champID=? ORDER BY canonicalName ASC", champID) + return +} + + +func (s *Model) ListFootballTeamAliases(teamID int64) (list []Alias, err error) { + err = s.qx.ListBy(&list, "WHERE teamID=? ORDER BY name ASC", teamID) + return +} + +func (s *Model) RemoveFootballTeam(teamID int64) (err error) { + return s.qx.Exec("DELETE FROM footballTeams WHERE teamID=?", teamID) +} + +func (s *Model) RemoveFootballAlias(aliasID int64) (err error) { + return s.qx.Exec("DELETE FROM footballTeamAliases WHERE aliasID=?", aliasID) +} + +func (s *Model) AddFootballAlias(req AddFootballAliasReq) (aliasID int64, err error) { + if req.Name == "" { + err = api.Err{ + Code: EmptyValue, + Field: "name", + } + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + aliasID, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + + +*/ diff --git a/model/team.go b/model/team.go new file mode 100644 index 0000000..048c255 --- /dev/null +++ b/model/team.go @@ -0,0 +1,422 @@ +package model + +import ( + "fmt" + "strings" +) + +func (s *Model) GetTeamZone(zoneID string) (_ *TeamZone, err error) { + zone := TeamZone{ + ZoneID: zoneID, + } + + found, err := s.qx.One(&zone) + if err != nil { + return + } + + if !found { + return + } + return &zone, nil +} + +func (s *Model) GetTeamChamp(champID string) (_ *TeamChamp, err error) { + champ := TeamChamp{ + ChampID: champID, + } + + found, err := s.qx.One(&champ) + if err != nil { + return + } + + if !found { + return + } + return &champ, nil +} + +func (s *Model) GetTeam(teamID string) (_ *Team, err error) { + team := Team{ + TeamID: teamID, + } + + found, err := s.qx.One(&team) + if err != nil { + return + } + + if !found { + return + } + return &team, nil +} + +func (s *Model) GetTeamMatch(matchID string) (_ *TeamMatch, err error) { + m := TeamMatch{ + MatchID: matchID, + } + + found, err := s.qx.One(&m) + if err != nil { + return + } + + if !found { + return + } + + return &m, nil +} + +func (s *Model) AddTeamZone(req TeamZone) (err error) { + if req.Name == "" { + err = fix.Field(EmptyValue, "name") + return + } + + req.Name = strings.Title(strings.ToLower(req.Name)) + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +func (s *Model) AddTeamChamp(req TeamChamp) (err error) { + if req.Name == "" { + err = fix.Field(EmptyValue, "name") + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + has, err := tx.Has("teamZones", "WHERE zoneID=?", req.ZoneID) + if err != nil { + return + } + + if !has { + err = fix.Field(UnknownZone, "zoneID") + return + } + + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +/* +func (s *Model) UpdateTeamChampName(req TeamChamp) (err error) { + if req.Name == "" { + err = fix.Field(EmptyValue, "name") + return + } + + err = s.qx.Exec("UPDATE teamChamps SET name=? WHERE champID=?", req.Name, req.ChampID) + if err != nil { + return + } + return +} +*/ + +func (s *Model) AddTeam(req Team) (err error) { + aliasName := NormalizeNameToAlias(req.CanonicalName) + + req.CanonicalName = strings.Title(strings.ToLower(aliasName)) + + if req.CanonicalName == "" { + err = fix.Field(EmptyValue, "canonicalName") + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + _, err = tx.Insert(req) + if err != nil { + return + } + + zone := TeamZone{ + ZoneID: req.ZoneID, + } + + _, err = tx.One(&zone) + if err != nil { + return + } + + // Добавляем alias + _, err = tx.Insert(TeamAlias{ + Name: aliasName, + TeamID: req.TeamID, + SportID: zone.SportID, + }) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) AddTeamAlias(req TeamAlias) (err error) { + req.AliasID = 0 + req.Name = NormalizeNameToAlias(req.Name) + + if req.Name == "" { + err = fix.Field(EmptyValue, "name") + return + } + + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + // Чтобы узнать sportID сперва достаем Team + team := Team{ + TeamID: req.TeamID, + } + + found, err := tx.One(&team) + if err != nil { + return + } + + if !found { + err = fix.Field(UnknownTeam, "teamID") + return + } + + // Чтобы узнать sportID затем достаем teamZone + zone := TeamZone{ + ZoneID: team.ZoneID, + } + + _, err = tx.One(&zone) + if err != nil { + return + } + + req.SportID = zone.SportID + + /* + hasTeam, err := tx.Has("teams", "WHERE teamID=?", req.TeamID) + if err != nil { + return + } + + if !hasTeam { + err = fix.Field(UnknownTeam, "teamID") + return + } + */ + + hasAlias, err := tx.Has("teamAliases", "WHERE teamID=? AND name=?", + req.TeamID, req.Name) + if err != nil { + return + } + + if hasAlias { + err = fix.Field(Duplicate, "name") + return + } + + // Добавляем alias + _, err = tx.Insert(req) + if err != nil { + return + } + + err = tx.Commit() + return +} + +func (s *Model) SetTeamWasLinked(teamID string) (err error) { + err = s.qx.Exec(`UPDATE teams SET wasLinked=true WHERE teamID=?`, teamID) + return +} + +func (s *Model) RemoveTeamAlias(aliasID int64) (err error) { + return s.qx.Exec(`DELETE FROM teamAliases WHERE aliasID=?`, aliasID) +} + +func (s *Model) AddTeamMatch(req TeamMatch) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + req.MatchID = strings.TrimSpace(req.MatchID) + + if req.MatchID == "" { + err = fix.Field(EmptyValue, "matchID") + return + } + + /* + hasChamp, err := tx.Has("teamChamps", "WHERE champID=?", req.ChampID) + if err != nil { + return + } + + if !hasChamp { + err = fix.Field(UnknownChamp, "champID") + return + } + + hasHomeTeam, err := tx.Has("teams", "WHERE teamID=?", req.HomeTeamID) + if err != nil { + return + } + + if !hasHomeTeam { + err = fix.Field(UnknownTeam, "teamID") + return + } + + hasAwayTeam, err := tx.Has("teams", "WHERE teamID=?", req.AwayTeamID) + if err != nil { + return + } + + if !hasAwayTeam { + err = fix.Field(UnknownTeam, "teamID") + return + } + */ + _, err = tx.Insert(req) + if err != nil { + return + } + err = tx.Commit() + return +} + +type UpdateTeamCanonicalNameIn struct { + TeamID string + CanonicalName string + NewCanonicalName string +} + +func (s *Model) UpdateTeamCanonicalName(in UpdateTeamCanonicalNameIn) (err error) { + tx, err := s.qx.Tx() + if err != nil { + return + } + defer tx.Close(&err) + + // Старый canonicalName не нормализуем, ибо предполагается что имя мы получили из БД + in.NewCanonicalName = strings.Title(strings.ToLower(NormalizeNameToAlias(in.NewCanonicalName))) + + if in.NewCanonicalName == "" { + err = fix.Field(EmptyValue, "newCanonicalName") + return + } + + // Удаляем старый alias + err = tx.Exec("DELETE FROM teamAliases WHERE teamID=? AND name=?", + in.TeamID, in.CanonicalName) + if err != nil { + return + } + + // Обновляем canonicalName + err = tx.Exec("UPDATE teams SET canonicalName=? WHERE teamID=?", + in.NewCanonicalName, in.TeamID) + if err != nil { + fmt.Printf("old: %q, new: %q, teamID: %s\n", in.CanonicalName, + in.NewCanonicalName, in.TeamID) + + //return + err = nil + } + + hasAlias, err := tx.Has("teamAliases", "WHERE teamID=? AND name=?", + in.TeamID, in.NewCanonicalName) + if err != nil { + return + } + + if !hasAlias { + // Добавляем новый alias + _, err = tx.Insert(TeamAlias{ + Name: in.NewCanonicalName, + TeamID: in.TeamID, + }) + if err != nil { + return + } + } + + err = tx.Commit() + return +} + +func (s *Model) ListTeamZones(sportID int) (list []TeamZone, err error) { + err = s.qx.ListBy(&list, `WHERE sportID=? ORDER BY name ASC`, sportID) + if err != nil { + return + } + return +} + +func (s *Model) ListTeamCandidates(sportID int, name string) (matchIDs []string, err error) { + name = NormalizeNameToAlias(name) + + err = s.qx.ListQuery(&matchIDs, + `SELECT teamID FROM teamAliases WHERE sportID=? AND name=?`, sportID, name) + if err != nil { + return + } + return +} + +func (s *Model) ListTeamsByZone(zoneID string) (list []Team, err error) { + err = s.qx.ListBy(&list, `WHERE zoneID=? ORDER BY canonicalName ASC`, zoneID) + if err != nil { + return + } + return +} + +func (s *Model) ListTeamAliases(teamID string) (list []TeamAlias, err error) { + err = s.qx.ListBy(&list, `WHERE teamID=? ORDER BY name ASC`, teamID) + if err != nil { + return + } + return +} + +func (s *Model) ListTeams() (list []Team, err error) { + err = s.qx.List(&list) + if err != nil { + return + } + return +} diff --git a/model/team.sql b/model/team.sql new file mode 100644 index 0000000..ab2362c --- /dev/null +++ b/model/team.sql @@ -0,0 +1,77 @@ +CREATE TABLE teamZones ( + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + sportID INT NOT NULL, -- для вывода + + PRIMARY KEY(zoneID), + UNIQUE(name) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE teamChamps ( + champID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + + PRIMARY KEY(champID), + UNIQUE(zoneID, name), + + FOREIGN KEY (zoneID) REFERENCES teamZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE teams ( + teamID VARCHAR(255) NOT NULL, + zoneID VARCHAR(255) NOT NULL, + canonicalName VARCHAR(255) NOT NULL, + wasLinked BOOL NOT NULL, + + PRIMARY KEY(teamID), + + FOREIGN KEY (zoneID) REFERENCES teamZones(zoneID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +CREATE TABLE teamAliases ( + aliasID INT NOT NULL AUTO_INCREMENT, + teamID VARCHAR(255) NOT NULL, + name VARCHAR(255) NOT NULL, + sportID INT NOT NULL, -- для поиска названий кандидатов без JOIN-ов + + PRIMARY KEY(aliasID), + UNIQUE(teamID, name), + + FOREIGN KEY (teamID) REFERENCES teams(teamID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + + +-- это просто cache +CREATE TABLE teamMatches ( + matchID VARCHAR(255) NOT NULL, + homeGoals INT NOT NULL, + awayGoals INT NOT NULL, + hasScoreByPeriods BOOL NOT NULL, + p1HomeGoals INT NOT NULL, + p1AwayGoals INT NOT NULL, + p2HomeGoals INT NOT NULL, + p2AwayGoals INT NOT NULL, + isMatchScoreLoaded BOOL NOT NULL, + isScoreByPeriodsLoaded BOOL NOT NULL, + + PRIMARY KEY(matchID) +) +ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci; + +--INSERT INTO footballChamps VALUES (NULL, "Seria A (Italy)"); +--INSERT INTO footballChamps VALUES (NULL, "Bundesliga (Germany)"); +--INSERT INTO footballChamps VALUES (NULL, "Premier League (England)"); + +delete from teamAliases; +delete from teamMatches; +delete from teams; +delete from teamChamps; +delete from teamZones; \ No newline at end of file diff --git a/model/types.go b/model/types.go new file mode 100755 index 0000000..b66a7d1 --- /dev/null +++ b/model/types.go @@ -0,0 +1,136 @@ +package model + +import "gordenko.dev/dima/qx" + +type Model struct { + qx *qx.Db +} + +// TEAM + +type TeamZone struct { + ZoneID string `json:"zoneID" qx:"table=teamZones; pk"` + Name string `json:"name"` + SportID int `json:"sportID"` +} + +type TeamMatch struct { + MatchID string `json:"matchID" qx:"table=teamMatches; pk"` + //SportID int `json:"sportID"` + //StartTime int64 `json:"startTime"` + //ChampID string `json:"champID"` + //HomeTeamID string `json:"homeTeamID"` + //AwayTeamID string `json:"awayTeamID"` + HomeGoals int `json:"homeGoals"` + AwayGoals int `json:"awayGoals"` + HasScoreByPeriods bool `json:"hasScoreByPeriods"` + P1HomeGoals int `json:"p1HomeGoals"` + P1AwayGoals int `json:"p1AwayGoals"` + P2HomeGoals int `json:"p2HomeGoals"` + P2AwayGoals int `json:"p2AwayGoals"` + IsMatchScoreLoaded bool `json:"isMatchScoreLoaded"` + IsScoreByPeriodsLoaded bool `json:"isScoreByPeriodsLoaded"` +} + +type Team struct { + TeamID string `json:"teamID" qx:"table=teams; pk"` + ZoneID string `json:"zoneID"` + CanonicalName string `json:"canonicalName"` + WasLinked bool `json:"wasLinked"` +} + +type TeamAlias struct { + AliasID int64 `json:"aliasID" qx:"table=teamAliases; pk; seq=auto"` + Name string `json:"name"` + TeamID string `json:"teamID"` + SportID int `json:"sportID"` +} + +type TeamChamp struct { + ChampID string `json:"champID" qx:"table=teamChamps; pk"` + ZoneID string `json:"zoneID"` + Name string `json:"name"` +} + +// FOOTBALL +/* +type FootballZone struct { + ZoneID string `json:"zoneID" qx:"table=footballZones; pk"` + Name string `json:"name"` +} + +type FootballMatch struct { + MatchID string `json:"matchID" qx:"table=footballMatches; pk"` + StartTime int64 `json:"startTime"` + ChampID string `json:"champID"` + HomeTeamID string `json:"homeTeamID"` + AwayTeamID string `json:"awayTeamID"` + HomeGoals int `json:"homeGoals"` + AwayGoals int `json:"awayGoals"` + HasStats bool `json:"hasStats"` + P1HomeGoals int `json:"p1HomeGoals"` + P1AwayGoals int `json:"p1AwayGoals"` + P2HomeGoals int `json:"p2HomeGoals"` + P2AwayGoals int `json:"p2AwayGoals"` +} + +type FootballTeam struct { + TeamID string `json:"teamID" qx:"table=footballTeams; pk"` + ZoneID string `json:"zoneID"` + CanonicalName string `json:"canonicalName"` + WasLinked bool `json:"wasLinked"` +} + +type FootballAlias struct { + AliasID int64 `json:"aliasID" qx:"table=footballTeamAliases; pk; seq=auto"` + Name string `json:"name"` + TeamID string `json:"teamID"` +} + +type FootballChamp struct { + ChampID string `json:"champID" qx:"table=footballChamps; pk"` + ZoneID string `json:"zoneID"` + Name string `json:"name"` +} + +// HANDBALL + +type HandballZone struct { + ZoneID string `json:"zoneID" qx:"table=handballZones; pk"` + Name string `json:"name"` +} + +type HandballMatch struct { + MatchID string `json:"matchID" qx:"table=handballMatches; pk"` + StartTime int64 `json:"startTime"` + ChampID string `json:"champID"` + HomeTeamID string `json:"homeTeamID"` + AwayTeamID string `json:"awayTeamID"` + HomeGoals int `json:"homeGoals"` + AwayGoals int `json:"awayGoals"` + HasStats bool `json:"hasStats"` + P1HomeGoals int `json:"p1HomeGoals"` + P1AwayGoals int `json:"p1AwayGoals"` + P2HomeGoals int `json:"p2HomeGoals"` + P2AwayGoals int `json:"p2AwayGoals"` +} + +type HandballTeam struct { + TeamID string `json:"teamID" qx:"table=handballTeams; pk"` + ZoneID string `json:"zoneID"` + CanonicalName string `json:"canonicalName"` + WasLinked bool `json:"wasLinked"` +} + +type HandballAlias struct { + AliasID int64 `json:"aliasID" qx:"table=handballTeamAliases; pk; seq=auto"` + Name string `json:"name"` + TeamID string `json:"teamID"` +} + +type HandballChamp struct { + ChampID string `json:"champID" qx:"table=handballChamps; pk"` + ZoneID string `json:"zoneID"` + Name string `json:"name"` +} +*/ diff --git a/parser.go b/parser.go new file mode 100755 index 0000000..8de45bf --- /dev/null +++ b/parser.go @@ -0,0 +1,1594 @@ +package flashscore + +import ( + "encoding/json" + "fmt" + "html" + "regexp" + "strconv" + "strings" + "time" + + "github.com/PuerkitoBio/goquery" + xhtml "golang.org/x/net/html" + "gordenko.dev/dima/flashscore/model" + "gordenko.dev/dima/pretty" +) + +// Парсит кастомный формат Flashscore. На выходе список матчей, +// без группировок по турнирам, раундам +/* +func parseListOfScheduledMatches(content string, sportID int) (result []ScheduledMatch, err error) { + + matches := strings.Split(content, SymbolTilda) + + for _, match := range matches { + match = strings.TrimSpace(match) + if match == "" { + continue + } + pairs := strings.Split(match, SymbolNot) + + sm := ScheduledMatch{ + SportID: sportID, + } + + for _, pair := range pairs { + pair = strings.TrimSpace(pair) + if pair == "" { + continue + } + + kv := strings.Split(pair, SymbolDivide) + + if len(kv) != 2 { + err = fmt.Errorf("Wrong key/value: %s", pair) + return + } + + key := strings.TrimSpace(kv[0]) + value := strings.TrimSpace(kv[1]) + + switch key { + case "AA": + // + sm.MatchID = value + + case "AD": + var timestamp int64 + timestamp, err = strconv.ParseInt(value, 10, 64) + if err != nil { + err = fmt.Errorf("Parse start time: %s; unixtime=%s", err, value) + return + } + sm.StartTime = time.Unix(timestamp, 0) + } + } + + if sm.MatchID != "" && !sm.StartTime.IsZero() { + // Помимо матчей встречаются чемпионаты, поэтому эти поля могут быть пустыми + result = append(result, sm) + } + } + return +} +*/ + +//ZA zone: champ name extended +//ZL "champID" + +/* +AA: 2XhOe000 +AD: 1595772000 +ADE: 1595772000 +AB: 1 +CR: 1 +AC: 1 +CX: Southampton +ER: Round 38 +RW: 0 +AX: 0 +BX: -1 +WQ: +WM: SOU +AE: Southampton +JA: fu16YetP +WU: southampton +WN: SHU +AF: Sheffield Utd +JB: bDRnslpP +WV: sheffield-utd +AW: 1 +AN: n + +Расшифровка: + +ZA - champ name + +AA - ID матча, нужен чтобы получить статистику по матчу + +AD / ADE - время начала матча в UTC + +CX - home team +AF - away team + +WU - home team url part (нужно ли ?) +WV - away team url part (нужно ли ?) + +ER - раунд (можно не парсить, но сгруппировать) +*/ + +//var reRoundNumber = regexp.MustCompile(`(?i)Round\s+(\d+)`) + +// parseEncodedFixtures - парсит строку (html unescaped) +//func parseEncodedFixtures(content string) (rounds []FootballRound, err error) { + +func parseMatchesResults(trs *goquery.Selection) (results []model.TeamMatch, err error) { + for idx := range trs.Nodes { + var m model.TeamMatch + m, err = parseMatchResultTr(trs.Eq(idx)) + if err != nil { + err = fmt.Errorf("parseTr: %s", err) + return + } + results = append(results, m) + } + return +} + +var reMatchIDinMatchResultTr = regexp.MustCompile(`(?i)open\('g_\d+_([^']+)'`) + +func parseMatchResultTr(trSelection *goquery.Selection) (m model.TeamMatch, err error) { + onclickContent, exists := trSelection.Attr("onclick") + if !exists { + err = fmt.Errorf("onclick attr not found in match result tr") + return + } + + groups := reMatchIDinMatchResultTr.FindStringSubmatch(onclickContent) + if len(groups) != 2 { + err = fmt.Errorf("MatchID not found in onclick attr of match result tr") + return + } + + m.MatchID = groups[1] + + //fmt.Printf("onclick: %s, exists: %t\n", val, exists) + //spanSelection := trSelection.Find("span") + tdSelection := trSelection.Find("td") + + // Достаем дату + spanList := tdSelection.Eq(0).Find("span") + if spanList == nil { + // + return + } + + //timestampStr := spanList.Get(0).FirstChild.Data + //fmt.Printf("Date: %s\n", timestampStr) + + /* + m.StartTime, err = strconv.ParseInt(timestampStr, 10, 64) + if err != nil { + err = fmt.Errorf("Parse timestamp string: %s; timestamp=%s", err, timestampStr) + return + } + */ + + var score string + score, err = parseTdContent(tdSelection.Eq(4)) + if err != nil { + err = fmt.Errorf("Get score: %s", err) + return + } + + m.HomeGoals, m.AwayGoals, err = parseScore(score) + if err != nil { + err = fmt.Errorf("parseScore: %s; score=%s", err, score) + return + } + // ВАЖНО! + m.IsMatchScoreLoaded = true + + return +} + +func parseTdContent(tdSelection *goquery.Selection) (team string, err error) { + // Достаем home + spanList := tdSelection.Find("span") + if spanList.Length() == 0 { + var tagContent string + tagContent, err = getTagContent(tdSelection) + if err != nil { + err = fmt.Errorf("getTagContent: %s", err) + return + } + err = fmt.Errorf("Tag not found in : %s", tagContent) + return + } + + strongList := spanList.Find("strong") + if strongList.Length() == 0 { + team = spanList.Get(0).FirstChild.Data + } else { + /* + firstStrong := strongList.Get(0) ///.FirstChild.Data + if firstStrong == nil { + panic("firstS strong = nil") + } + */ + team = strongList.Get(0).FirstChild.Data + } + return +} + +func parsePeriodTeamGoals(doc *goquery.Document, period int, side string) (goals int, err error) { + spanTeamGoals := doc.Find(fmt.Sprintf("span.p%d_%s", period, side)) + if spanTeamGoals.Length() == 0 { + errmsg := fmt.Sprintf(`%s team goals for period %d not found (tag )`, + strings.ToUpper(side), period, period, side) + err = fmt.Errorf(errmsg) + return + } + + textNode := spanTeamGoals.Get(0).FirstChild + if textNode == nil { + err = fmt.Errorf("Teams goals doesn't have a child node") + return + } + + goalsStr := strings.TrimSpace(textNode.Data) + + goals, err = strconv.Atoi(goalsStr) + if err != nil { + err = fmt.Errorf("Parse team goals: %s; text=%q", err, goalsStr) + return + } + return +} + +func getTagContent(tagSelection *goquery.Selection) (_ string, err error) { + txt, err := tagSelection.Html() + if err != nil { + return + } + return html.UnescapeString(txt), nil +} + +func parseScore(score string) (homeGoals, awayGoals int, err error) { + list := strings.Split(score, ":") + if len(list) != 2 { + err = fmt.Errorf("Wrong score string") + return + } + + homeGoals, err = strconv.Atoi(strings.TrimSpace(list[0])) + if err != nil { + return + } + + awayGoals, err = strconv.Atoi(strings.TrimSpace(list[1])) + if err != nil { + return + } + return +} + +var reDirtyTeamID = regexp.MustCompile(`'/team([^']+)'`) + +func parseTeam(divList *goquery.Selection) (team model.Team, err error) { + if divList.Length() == 0 { + err = fmt.Errorf("Team div not found") + return + } + + aList := divList.First().Find("a.participant-imglink") + if aList.Length() == 0 { + err = fmt.Errorf("a.participant-imglink not found") + return + } + + a := aList.Get(0) + + textNode := a.FirstChild + if textNode == nil { + err = fmt.Errorf("a.participant-imglink have not content") + return + } + + if textNode.Type != xhtml.TextNode { + err = fmt.Errorf("First child of a.participant-imglink must be TextNode, not %s", + nodeTypes[textNode.Type]) + return + } + + team.CanonicalName = strings.TrimSpace(textNode.Data) + + onclick, exists := aList.Eq(0).Attr("onclick") + if !exists { + err = fmt.Errorf("a.participant-imglink have not 'onclick' attr") + return + } + + groups := reDirtyTeamID.FindStringSubmatch(onclick) + if len(groups) != 2 { + err = fmt.Errorf("TeamID in 'onclick' attr not found") + return + } + + str := groups[1] + // На всякий случай обрезаем слэш в конце + str = strings.TrimSuffix(str, "/") + team.TeamID = str + //parts := strings.Split(str, "/") + + // Последняя секция - это teamID + //team.TeamID = parts[len(parts)-1] + + return +} + +func parseZoneOnTeamPage(doc *goquery.Document, sportID int) (zone model.TeamZone, err error) { + h2List := doc.Find("h2.tournament") + if h2List.Length() == 0 { + err = fmt.Errorf("Tag h2.tournament not found") + return + } + + aList := h2List.First().Find("a") + if aList.Length() == 0 { + err = fmt.Errorf("Tags not found in h2.tournament tag") + return + } + + for i := 0; i < aList.Length(); i++ { + a := aList.Eq(i) + + href, exists := a.Attr("href") + if !exists { + continue + } + + href = strings.TrimSpace(href) + + prefix, ok := sportPrefixes[sportID] + if !ok { + panic(fmt.Sprintf("Bug: sportID %d hasn't sport prefix", sportID)) + } + + href = strings.TrimSuffix(href, "/") + + if href == prefix { + continue + } + + if !strings.HasPrefix(href, prefix) { + continue + } + + if href == "" { + continue + } + // Мы нашли zoneID + // Достаем имя зоны + textNode := aList.Get(i).FirstChild + if textNode == nil { + err = fmt.Errorf("Zone name not found in content") + return + } + + if textNode.Type != xhtml.TextNode { + err = fmt.Errorf("FirstChild of tag must be TextNode, not %s", + nodeTypes[textNode.Type]) + return + } + + zone = model.TeamZone{ + ZoneID: href, + Name: strings.TrimSpace(textNode.Data), + SportID: sportID, + } + return + + } + //err = fmt.Errorf("ZoneID not found in list") + return +} + +// Футбол, парсим HTML код + +func parseFootballTeamScoreByPeriods(doc *goquery.Document) (m teamScoreByPeriods, hasScoreByPeriods bool, err error) { + // Счет 1го тайма + m.P1HomeGoals, err = parsePeriodTeamGoals(doc, 1, "home") + if err != nil { + return + } + + m.P1AwayGoals, err = parsePeriodTeamGoals(doc, 1, "away") + if err != nil { + return + } + + // Счет 2го тайма + m.P2HomeGoals, err = parsePeriodTeamGoals(doc, 2, "home") + if err != nil { + return + } + + m.P2AwayGoals, err = parsePeriodTeamGoals(doc, 2, "away") + if err != nil { + return + } + + hasScoreByPeriods = true + return +} + +// ODDS +// Футбол, парсим HTML код + +func parseOddsTotal(doc *goquery.Document) (totals []Total, err error) { + // 2.5 => *Total + totalMap := make(map[string]*Total) + + divTotal := doc.Find("#block-under-over-ft") + if divTotal.Length() == 0 { + err = fmt.Errorf("#block-under-over-ft not found") + return + } + + tdList := divTotal.First().Find("td.bookmaker") + if tdList.Length() == 0 { + err = fmt.Errorf("List of td.bookmaker in #block-under-over-ft not found") + return + } + + for idx := 0; idx < tdList.Length(); idx++ { + //tdList.Each(func(idx int, tdSelection *goquery.Selection) { + var offer TotalOffer + //.Get(0).Data //.Html() + //fmt.Printf("%s\n", txt) + //fmt.Printf("%v\n", tdSelection) + //tdSelection.Get(0) + //tdSelection.Next() + + tdSelection := tdList.Eq(idx) + + offer.Bookmaker, err = getBookmaker(tdSelection) + if err != nil { + return + } + + priceTd := tdSelection.Next() + + var totalValue string + + totalValue, err = getTotalValue(priceTd) + if err != nil { + err = fmt.Errorf("get total value: %s", err) + return + } + + priceTd = priceTd.Next() + + var isRemovedByBookmaker bool + + isRemovedByBookmaker, offer.Over, err = getTotalPrice(priceTd) + if err != nil { + err = fmt.Errorf("get over price: %s", err) + return + } + + if isRemovedByBookmaker { + continue + } + + priceTd = priceTd.Next() + + isRemovedByBookmaker, offer.Under, err = getTotalPrice(priceTd) + if err != nil { + err = fmt.Errorf("get under price: %s", err) + return + } + + if isRemovedByBookmaker { + continue + } + + total, ok := totalMap[totalValue] + if !ok { + total = &Total{ + Total: totalValue, + } + totalMap[totalValue] = total + } + + total.Offers = append(total.Offers, offer) + } + + for _, ptotal := range totalMap { + totals = append(totals, *ptotal) + } + return +} + +func getTotalValue(tdSelection *goquery.Selection) (total string, err error) { + if tdSelection == nil { + err = fmt.Errorf(" total tag selection is nil") + return + } + + tdNode := tdSelection.Get(0) + + textNode := tdNode.FirstChild + + if textNode == nil { + err = fmt.Errorf("Empty total's ") + return + } + + if textNode.Type != xhtml.TextNode { + err = fmt.Errorf("First child of total's must be TextNode, not %s", + nodeTypes[textNode.Type]) + return + } + total = strings.TrimSpace(textNode.Data) + return +} + +// Цена может быть перечеркнута, значит ее нужно выкинуть из результата +func getTotalPrice(tdSelection *goquery.Selection) (isRemovedByBookmaker bool, price float64, err error) { + if tdSelection == nil { + err = fmt.Errorf(" total price tag selection is nil") + return + } + + spanSelection := tdSelection.Find("span") + if spanSelection.Length() == 0 { + err = fmt.Errorf(" not found in ") + return + } + + if spanSelection.First().HasClass("not-published") { + isRemovedByBookmaker = true + return + } + + span := spanSelection.Get(0) + + textNode := span.FirstChild + if textNode == nil { + err = fmt.Errorf("Empty total's price ") + return + } + + if textNode.Type != xhtml.TextNode { + err = fmt.Errorf("First child of total's price must be TextNode, not %s", + nodeTypes[textNode.Type]) + return + } + + priceStr := strings.TrimSpace(textNode.Data) + + if priceStr == "-" { + isRemovedByBookmaker = true + return + } + + price, err = strconv.ParseFloat(priceStr, 64) + if err != nil { + err = fmt.Errorf("Parse price: %s; priceStr=%q", err, priceStr) + return + } + return +} + +func parseHandballMatchScore(str string) (homeGoals, awayGoals int, err error) { + //fmt.Printf("SCORE: %s\n", str) + list, err := ParseFlashscoreEncoding(str) + if err != nil { + return + } + + // DE home с учетом ОТ + // DF away с учетом ОТ + + // DG home основное время + // DH away основное время + + var isHomeGoalsFound, isAwayGoalsFound bool + + for _, m := range list { + if m["DG"] != "" { + homeGoals, err = strconv.Atoi(m["DG"]) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, m["DG"]) + return + } + isHomeGoalsFound = true + //fmt.Printf("DH: %s, goals: %d\n", m["DH"], awayGoals) + } + + if m["DH"] != "" { + awayGoals, err = strconv.Atoi(m["DH"]) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, m["DH"]) + return + } + isAwayGoalsFound = true + //fmt.Printf("DG: %s, goals: %d\n", m["DG"], homeGoals) + } + } + + if isHomeGoalsFound && isAwayGoalsFound { + return + } + + err = fmt.Errorf("Home goals or/and Away goals not found") + return +} + +func parseHandballTeamScoreByPeriods(str string) (stat teamScoreByPeriods, hasScoreByPeriods bool, err error) { + // AC÷3¬ вероятно статус + // BA÷15¬ p1 home + // BB÷10¬ p1 away + // ~BC÷15¬ p2 home + // BD÷14¬ p2 away + // ~A1÷¬~ + + var isP1HomeFound, isP1AwayFound, isP2HomeFound, isP2AwayFound bool + + blocks := strings.Split(str, SymbolTilda) + + for _, block := range blocks { + block = strings.TrimSpace(block) + if block == "" { + continue + } + pairs := strings.Split(block, SymbolNot) + + for _, pair := range pairs { + pair = strings.TrimSpace(pair) + if pair == "" { + continue + } + + kv := strings.Split(pair, SymbolDivide) + + if len(kv) != 2 { + err = fmt.Errorf("Wrong key/value: %s", pair) + return + } + + key := strings.TrimSpace(kv[0]) + value := strings.TrimSpace(kv[1]) + + switch key { + case "BA": + stat.P1HomeGoals, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + isP1HomeFound = true + + case "BB": + stat.P1AwayGoals, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + isP1AwayFound = true + + case "BC": + stat.P2HomeGoals, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + isP2HomeFound = true + + case "BD": + stat.P2AwayGoals, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + isP2AwayFound = true + } + } + } + + if isP1HomeFound && isP1AwayFound && isP2HomeFound && isP2AwayFound { + hasScoreByPeriods = true + return + } + // В этом месте нет ошибки, но hasScoreByPeriods = false + return +} + +type PeriodScore struct { + PeriodNumber int + HomeScore int + AwayScore int +} + +func parseTennisTeamScoreByPeriods(str string) (periods []PeriodScore, hasScoreByPeriods bool, err error) { + // Счет 2:1, по сетам: 7-6(7-2) 4-6 6-2 + + // Тильда ~ вероятно разделяет периоды + + // AC÷3¬ вероятно статус + // BA÷7¬ s1 home + // DA÷7¬ s1 tiebreak home + // BB÷6¬ s1 away + // DB÷2¬ s1 tiebreak away + // RC÷1:05¬ + // ~ + // BC÷4¬ s2 home + // BD÷6¬ s2 away + // RD÷0:50¬ + // ~ + // BE÷6¬ s3 home + // BF÷2¬ s3 away + // RE÷0:43¬ + // ~ + // RB÷2:38¬ + // ~ + // PSPH÷WC¬ + // PSPA÷11¬ + // A1÷¬~ + + // Счет 3:2, 3-6 7-6(7-5) 7-6(7-4) 0-6 6-3 + + // AC÷3¬ + // BA÷3¬ + // BB÷6¬ + // RC÷0:36¬ продолжительность периода + // ~ + // BC÷7¬ + // DC÷7¬ + // BD÷6¬ + // DD÷5¬ + // RD÷1:18¬ + // ~ + // BE÷7¬ + // DE÷7¬ + // BF÷6¬ + // DF÷4¬ + // RE÷1:08¬ + // ~ + // BG÷0¬ s4 home + // BH÷6¬ s4 away + // RF÷0:29¬ + // ~ + // BI÷6¬ s5 home + // BJ÷3¬ s5 away + // RG÷0:38¬ + // ~ + // RB÷4:09¬ продолжительность матча + // ~ + // PSPH÷20¬ + // PSPA÷12¬ + // A1÷¬~ + + blocks := strings.Split(str, SymbolTilda) + + for _, block := range blocks { + + block = strings.TrimSpace(block) + if block == "" { + continue + } + + var ( + period PeriodScore + periodSignature string + ) + + pairs := strings.Split(block, SymbolNot) + + for _, pair := range pairs { + pair = strings.TrimSpace(pair) + if pair == "" { + continue + } + + kv := strings.Split(pair, SymbolDivide) + + if len(kv) != 2 { + err = fmt.Errorf("Wrong key/value: %s", pair) + return + } + + key := strings.TrimSpace(kv[0]) + value := strings.TrimSpace(kv[1]) + + switch key { + case "BA", "BC", "BE", "BG", "BI": + period.HomeScore, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + // записываем в начало, чтобы независимо от порядка полей в исходной + // строке получить одинаковую подпись + periodSignature = key + periodSignature + + case "BB", "BD", "BF", "BH", "BJ": + period.AwayScore, err = strconv.Atoi(value) + if err != nil { + err = fmt.Errorf("Atoi: %s; string=%s", err, value) + return + } + // дописываем в конец, чтобы независимо от порядка полей в исходной + // строке получить одинаковую подпись + periodSignature += key + } + } + + switch periodSignature { + case "BABB": + period.PeriodNumber = 1 + + case "BCBD": + period.PeriodNumber = 2 + + case "BEBF": + period.PeriodNumber = 3 + + case "BGBH": + period.PeriodNumber = 4 + + case "BIBJ": + period.PeriodNumber = 5 + + default: + if periodSignature != "" { + // Что-то нашло но не то, что нужно (например только home), + // поэтому обработку прерываем + return + } + } + + if period.PeriodNumber > 0 { + periods = append(periods, period) + } + } + + if len(periods) > 0 { + // Периоды найдены, обработчка не была прервана, значит все ок + hasScoreByPeriods = true + } + return +} + +//type FlashscoreEncodedData + +func ParseFlashscoreEncoding(str string) (_ []map[string]string, err error) { + var list []map[string]string + + blocks := strings.Split(str, SymbolTilda) + + for _, block := range blocks { + block = strings.TrimSpace(block) + if block == "" { + continue + } + pairs := strings.Split(block, SymbolNot) + + m := make(map[string]string) + + for _, pair := range pairs { + pair = strings.TrimSpace(pair) + if pair == "" { + continue + } + + kv := strings.Split(pair, SymbolDivide) + + if len(kv) != 2 { + err = fmt.Errorf("Wrong key/value: %s", pair) + return + } + + key := strings.TrimSpace(kv[0]) + value := strings.TrimSpace(kv[1]) + + m[key] = value + } + + list = append(list, m) + } + return list, nil +} + +func parseFlashscoreEncodedOdds(str string) (odds Odds, err error) { + decoded, err := ParseFlashscoreEncoding(str) + if err != nil { + return + } + + var ( + market string + period string + total *Total + + totals = make(map[string]*Total) + h1Totals = make(map[string]*Total) + ) + + for _, m := range decoded { + if market == "" { + // Ищем рынок + market = getMarket(m["OAI"]) + } else if period == "" { + // Рынок есть - ищем период + if m["OAI"] != "" { + // Нужный период не нашли, но встретили новый рынок + market = getMarket(m["OAI"]) + period = "" + } else if m["OBI"] != "" { + period = getPeriod(m["OBI"]) + } + } else { + // Есть и рынок и период + switch market { + case "1x2": + // Накапливаем offers букмекеров пока не встретим OAI или OBI + if m["OAI"] != "" { + // Встретили новый рынок + market = getMarket(m["OAI"]) + period = "" + } else if m["OBI"] != "" { + // Встретили новый период + period = getPeriod(m["OBI"]) + } else { + // Ищем предложения букмекеров + if m["OG"] == "0" { + // Перечеркнутое предложение + continue + } + if m["XA"] != "" && m["XB"] != "" && m["XC"] != "" { + winner, perr := parseFlashscoreEncodedWinner3Way(m) + if perr != nil { + // log + fmt.Println(perr) + } else { + odds.Winner = append(odds.Winner, winner) + } + } + } + + case "12": + // Накапливаем offers букмекеров пока не встретим OAI или OBI + if m["OAI"] != "" { + // Встретили новый рынок + market = getMarket(m["OAI"]) + period = "" + } else if m["OBI"] != "" { + // Встретили новый период + period = getPeriod(m["OBI"]) + } else { + // Ищем предложения букмекеров + if m["OG"] == "0" { + // Перечеркнутое предложение + continue + } + if m["XB"] != "" && m["XC"] != "" { + winner, perr := parseFlashscoreEncodedWinner2Way(m) + if perr != nil { + // log + fmt.Println(perr) + } else { + odds.Winner2Way = append(odds.Winner2Way, winner) + } + } + } + + case "total": + switch period { + case "ft": + // Накапливаем offers букмекеров пока не встретим OAI или OBI + if m["OAI"] != "" { + // Встретили новый рынок + market = getMarket(m["OAI"]) + period = "" + total = nil + //totalValue = "" + } else if m["OBI"] != "" { + period = getPeriod(m["OBI"]) + total = nil + } else if m["OCT"] == "Total" || m["OCT"] == "Games" { + // Total - handball, football; Games - tennis + totalValue := m["OC"] + + total = totals[totalValue] + if total == nil { + total = &Total{ + Total: totalValue, + } + totals[totalValue] = total + } + } else { + if m["XB"] != "" && m["XC"] != "" { + isRemovedByBookmaker, offer, perr := parseFlashscoreEncodedTotalOffer(m) + if perr != nil { + // log + fmt.Println(perr) + } else { + if !isRemovedByBookmaker { + if total != nil { + total.Offers = append(total.Offers, offer) + } + } + } + } + } + case "1hf", "set1": + // Накапливаем offers букмекеров пока не встретим OAI или OBI + if m["OAI"] != "" { + // Встретили новый рынок + market = getMarket(m["OAI"]) + period = "" + total = nil + //totalValue = "" + } else if m["OBI"] != "" { + period = getPeriod(m["OBI"]) + total = nil + } else if m["OCT"] == "Total" || m["OCT"] == "Games" { + // Total - handball, football; Games - tennis + totalValue := m["OC"] + + total = totals[totalValue] + if total == nil { + total = &Total{ + Total: totalValue, + } + h1Totals[totalValue] = total + } + } else { + if m["XB"] != "" && m["XC"] != "" { + isRemovedByBookmaker, offer, perr := parseFlashscoreEncodedTotalOffer(m) + if perr != nil { + // log + fmt.Println(perr) + } else { + if !isRemovedByBookmaker { + if total != nil { + total.Offers = append(total.Offers, offer) + } + } + } + } + } + + default: + panic(fmt.Sprintf("Bug: unknown total period %q", period)) + } + } + } + } + + for _, ptotal := range totals { + odds.FullTimeTotal = append(odds.FullTimeTotal, *ptotal) + } + + for _, ptotal := range h1Totals { + odds.H1Total = append(odds.H1Total, *ptotal) + } + + return +} + +// little helper +func getMarket(code string) string { + switch code { + // football, handball + case "1x2": + return "1x2" + + // football, handball, tennis + case "under-over": + return "total" + + // tennis + case "moneyline": + return "12" + + default: + return "" + } +} + +// little helper +func getPeriod(code string) string { + switch code { + // football, handball, tennis + case "ft": + return "ft" + + // football, handball + case "1hf": + return "1hf" + + // tennis + case "set1": + return "set1" + + default: + return "" + } +} + +func parseFlashscoreEncodedWinner3Way(m map[string]string) (winner Winner3Way, err error) { + winner.Bookmaker, err = strconv.Atoi(m["OE"]) + if err != nil { + err = fmt.Errorf("Parse bookmakerID: %s; string=%s", err, m["OE"]) + return + } + + winner.Home, err = parseFlashscoreEncodedPrice(m["XA"]) + if err != nil { + return + } + + winner.Away, err = parseFlashscoreEncodedPrice(m["XC"]) + if err != nil { + return + } + + winner.Draw, err = parseFlashscoreEncodedPrice(m["XB"]) + if err != nil { + return + } + return +} + +func parseFlashscoreEncodedWinner2Way(m map[string]string) (winner Winner2Way, err error) { + winner.Bookmaker, err = strconv.Atoi(m["OE"]) + if err != nil { + err = fmt.Errorf("Parse bookmakerID: %s; string=%s", err, m["OE"]) + return + } + + winner.Home, err = parseFlashscoreEncodedPrice(m["XB"]) + if err != nil { + return + } + + winner.Away, err = parseFlashscoreEncodedPrice(m["XC"]) + if err != nil { + return + } + return +} + +func parseFlashscoreEncodedTotalOffer(m map[string]string) (isRemovedByBookmaker bool, offer TotalOffer, err error) { + offer.Bookmaker, err = strconv.Atoi(m["OE"]) + if err != nil { + err = fmt.Errorf("Parse bookmakerID: %s; string=%s", err, m["OE"]) + return + } + + offer.Over, err = parseFlashscoreEncodedPrice(m["XB"]) + if err != nil { + return + } + + offer.Under, err = parseFlashscoreEncodedPrice(m["XC"]) + if err != nil { + return + } + + // Перечеркнутое предложение + if m["OG"] == "0" { + isRemovedByBookmaker = true + } + return +} + +// Функция пасит простые поля вида "1.44" и более сложные вида "2.24[u]2.39" +func parseFlashscoreEncodedPrice(str string) (price float64, err error) { + str = strings.TrimSpace(str) + + list := strings.Split(str, "]") + // Последний элемент + str = list[len(list)-1] + + price, err = strconv.ParseFloat(str, 64) + if err != nil { + err = fmt.Errorf("Parse price: %s; string=%s", err, str) + return + } + return +} + +/////////////// + +// little helper +func getH2HTab(tabName string) string { + tabName = strings.ToUpper(tabName) + + if strings.Contains(tabName, "OVERALL") { + return "overall" + } + return "" +} + +// little helper +func getH2HList(listName, homeTeamName, awayTeamName string) string { + // Приводим все строки к единому регистру + listName = strings.ToUpper(listName) + homeTeamName = strings.ToUpper(homeTeamName) + awayTeamName = strings.ToUpper(awayTeamName) + // 3 списка, примеры: + // + // Last matches: HSG WETZLAR + // Last matches: MT MELSUNGEN + // Head-to-head matches: HSG WETZLAR - MT MELSUNGEN + + //fmt.Printf("listName: '%s'; home='%s'; away='%s'\n", listName, homeTeamName, awayTeamName) + + // 'HEAD-TO-HEAD MATCHES' если h2h матчей нет + + if strings.Contains(listName, homeTeamName) { + if strings.Contains(listName, awayTeamName) { + // Обе команды + return "h2h" + } + // Только home + return "home" + } + + if strings.Contains(listName, awayTeamName) { + // Только away + return "away" + } + return "" +} + +func parseFlashscoreEncodedH2H(str, homeTeamName, awayTeamName string) (homeTeamMatches, awayTeamMatches, h2hMatches []model.TeamMatch, err error) { + decoded, err := ParseFlashscoreEncoding(str) + if err != nil { + return + } + + pretty.PPrintln("DECODED", decoded) + + var ( + // Tabs на H2H странице: Overall, HSG Wetzlar - Home, MT Melsungen - Away + tab string + // Списки последних матчей: хозяев, гостей, h2h + list string + ) + + for _, m := range decoded { + if tab == "" { + // Ищем Tab + tab = getH2HTab(m["KA"]) + } else if list == "" { + // Рынок есть - ищем период + if m["KA"] != "" { + // Нужный период не нашли, но встретили новый рынок + tab = getH2HTab(m["KA"]) + list = "" + } else if m["KB"] != "" { + list = getH2HList(m["KB"], homeTeamName, awayTeamName) + } + } else { + // Есть и рынок и список + if m["KA"] != "" { + // Нужный период не нашли, но встретили новый рынок + tab = getH2HTab(m["KA"]) + list = "" + } else if m["KB"] != "" { + list = getH2HList(m["KB"], homeTeamName, awayTeamName) + } else { + if m["KC"] != "" && m["KP"] != "" { + //startTime, _ := strconv.ParseInt(m["KC"], 10, 64) + + match := model.TeamMatch{ + MatchID: m["KP"], + //ChampID: m["KJ"] + " - " + m["KK"], Чисто для дебага можно выводить + } + + switch list { + case "home": + homeTeamMatches = append(homeTeamMatches, match) + + case "away": + awayTeamMatches = append(awayTeamMatches, match) + + case "h2h": + h2hMatches = append(h2hMatches, match) + + default: + panic(fmt.Sprintf("Bug: unknown Tab's listName %q", list)) + } + } + } + } + } + return +} + +//ZA zone: champ name extended +//ZL "champID" + +/* +AA: 2XhOe000 +AD: 1595772000 +ADE: 1595772000 +AB: 1 +CR: 1 +AC: 1 +CX: Southampton +ER: Round 38 +RW: 0 +AX: 0 +BX: -1 +WQ: +WM: SOU +AE: Southampton +JA: fu16YetP +WU: southampton +WN: SHU +AF: Sheffield Utd +JB: bDRnslpP +WV: sheffield-utd +AW: 1 +AN: n + +Расшифровка: + +ZA - champ name + +AA - ID матча, нужен чтобы получить статистику по матчу + +AD / ADE - время начала матча в UTC + +CX - home team +AF - away team + +WU - home team url part (нужно ли ?) +WV - away team url part (нужно ли ?) + +ER - раунд (можно не парсить, но сгруппировать) +*/ + +func parseFlashscoreEncodedAllGames(str string, sportID int) (matches []ScheduledMatch, err error) { + decoded, err := ParseFlashscoreEncoding(str) + if err != nil { + return + } + + var ( + champID string + zone model.TeamZone + fullChampName string + ) + + for _, m := range decoded { + zl := m["ZL"] // если поле непустое - словарь описывает чемпионат, а не матч + if zl != "" { + champID = strings.TrimSpace(zl) + champID = strings.TrimSuffix(champID, "/") + + // Пример /football/vietnam/v-league-1 + + parts := strings.Split(champID, "/") + if len(parts) < 3 { + continue + } + + zone.ZoneID = strings.Join(parts[:3], "/") + + parts = strings.Split(m["ZA"], ":") + + zone.Name = strings.TrimSpace(strings.Title(strings.ToLower(parts[0]))) + zone.SportID = sportID + + fullChampName = m["ZA"] + + } else { + //if m["AA"] != "" && m["AF"] != "" && m["CX"] != "" { + if m["AA"] != "" && m["AD"] != "" { + startTime, _ := strconv.ParseInt(m["AD"], 10, 64) + + match := ScheduledMatch{ + MatchID: m["AA"], + StartTime: time.Unix(startTime, 0), + ChampID: champID, + Zone: zone, + SportID: sportID, + FullChampName: fullChampName, + } + + matches = append(matches, match) + } + } + } + + return +} + +// Служебные структуры для метода parseTeamsOnMatchPage + +type jsObjectTeam struct { + TeamID string `json:"id"` + Name string `json:"name"` +} + +type jsObjectParticipantsData struct { + Home []jsObjectTeam `json:"home"` + Away []jsObjectTeam `json:"away"` +} + +type jsVarEnvironment struct { + ParticipantsData jsObjectParticipantsData `json:"participantsData"` +} + +// parseTeamsOnMatchPageInJsVar - метод извлекает имена и TeamID команд из тега