overtime-live-trading-utils 0.2.10 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.ts CHANGED
@@ -13,4 +13,3 @@ export * from './src/constants/common';
13
13
  export * from './src/constants/sports';
14
14
 
15
15
  export * from './src/enums/sports';
16
- export * from './src/enums/statuses';
package/main.js CHANGED
@@ -1 +1 @@
1
- !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.thalesUtils=r():e.thalesUtils=r()}(this,(()=>(()=>{"use strict";var e={d:(r,E)=>{for(var i in E)e.o(E,i)&&!e.o(r,i)&&Object.defineProperty(r,i,{enumerable:!0,get:E[i]})},o:(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};e.r(r),e.d(r,{AMERICAN_LEAGUES:()=>v,DRAW:()=>K,LEAGUES_NO_FORMAL_HOME_AWAY:()=>y,LEAGUES_NO_LIVE_CONSTRAINTS:()=>c,LIVE_TYPE_ID_BASE:()=>Q,League:()=>T,LeagueIdMapEnetpulse:()=>U,LeagueIdMapOpticOdds:()=>b,LeagueIdMapRundown:()=>G,LeagueMap:()=>M,MIN_ODDS_FOR_DIFF_CHECKING:()=>X,MULTIPLIER_100:()=>Z,MatchResolveType:()=>N,MoneylineTypes:()=>_,PeriodType:()=>O,Provider:()=>I,ScoringType:()=>S,Sport:()=>A,SpreadTypes:()=>s,TAG_CHILD_SPREAD:()=>j,TAG_CHILD_TOTALS:()=>z,TotalTypes:()=>p,UFC_LEAGUE_IDS:()=>C,ZERO:()=>k,adjustSpreadOnOdds:()=>J,allowGameSportWithPeriodConstraint:()=>Ne,allowGameSportWithResultConstraint:()=>Ie,allowSoccerGame:()=>Oe,calculateImpliedOddsDifference:()=>P,checkGameContraints:()=>Se,checkOddsFromBookmakers:()=>d,createSpreadChildMarkets:()=>se,createTotalChildMarkets:()=>pe,fetchResultInCurrentSet:()=>le,filterOddsByMarketNameBookmaker:()=>ie,filterOddsByMarketNameTeamNameBookmaker:()=>re,formatSpreadOdds:()=>oe,gamesDatesMatching:()=>W,getBetTypesForLeague:()=>h,getBookmakersArray:()=>R,getIsLiveSupported:()=>V,getLeagueIsDrawAvailable:()=>D,getLeagueLabel:()=>m,getLeagueOpticOddsName:()=>B,getLeaguePeriodType:()=>Y,getLeagueProvider:()=>F,getLeagueSport:()=>u,getLeagueSpreadType:()=>f,getLeagueTotalType:()=>w,getLiveSupportedLeagues:()=>g,getParentOdds:()=>Ee,getSpreadData:()=>q,groupAndFormatSpreadOdds:()=>Le,groupOddsBySelectionAndPoints:()=>te,processMarket:()=>Te,processTotalOdds:()=>ae,statusCodes:()=>x,teamNamesMatching:()=>H}),"function"!=typeof Object.assign&&(Object.assign=function(e,r){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var E=Object(e),i=1;i<arguments.length;i++){var o=arguments[i];if(null!=o)for(var L in o)Object.prototype.hasOwnProperty.call(o,L)&&(E[L]=o[L])}return E});var E=function(e){return parseFloat(e.toPrecision(12))};function i(e,r,E){return void 0===E||0==+E?Math[e](r):(r=+r,E=+E,isNaN(r)||"number"!=typeof E||E%1!=0?NaN:r<0?-i(e,-r,E):(r=r.toString().split("e"),+((r=(r=Math[e](+(r[0]+"e"+(r[1]?+r[1]-E:-E)))).toString().split("e"))[0]+"e"+(r[1]?+r[1]+E:E))))}var o,L,a={decimal:{from:function(e){if((e=parseFloat(e))<=1)throw new Error("Outside valid range.");return e},to:function(){return this.decimalValue}},moneyline:{from:function(e){return(e=parseFloat(e))>=0?e/100+1:100/-e+1},to:function(){return this.decimalValue>=2?E(100*(this.decimalValue-1)):E(-100/(this.decimalValue-1))}},hongKong:{from:function(e){if((e=parseFloat(e))<0)throw new Error("Outside valid range.");return e+1},to:function(){return E(this.decimalValue-1)}},impliedProbability:{from:function(e){if((e="string"==typeof e&&"%"==e.slice(-1)?parseFloat(e)/100:parseFloat(e))<=0||e>=1)throw new Error("Outside valid range");return 1/e},to:function(e){if(e.percentage){var r=E(100/this.decimalValue);return null!==e.precision&&(r=i("round",r,-e.precision)),r.toString()+"%"}return E(1/this.decimalValue)}},fractional:{from:function(e){var r,E=e.toString().split("/");if(e=parseFloat(E[0]),2===E.length)r=parseFloat(E[1]);else{if(1!==E.length)throw new Error("Invalid fraction");r=1}if(0===e||0===r||e/r<=0)throw new Error("Outside valid range");return 1+e/r},to:function(e){return function(e,r){for(var E,i=[0,1],o=[1,0],L=function(e){var r=null,E=e.toString().indexOf("E");-1==E&&(E=e.toString().indexOf("e"));var i=null,o=(r=-1==E?e.toString():e.toString().substring(0,E)).toString().indexOf(".");-1==o?i=r:0===o?i=r.substring(1,r.length):o<r.length&&(i=r.substring(0,o)+r.substring(o+1,r.length));var L=i,a=L.toString().length,t=e,A=t.toString().length;0===t&&(A=0);var T,_=a-A;for(T=_;T>0&&L%2==0;T--)L/=2;for(T=_;T>0&&L%5==0;T--)L/=5;return L}(e),a=e,t=Math.pow(10,-r)/2,A=2;A<1e3;A++){var T=Math.floor(a);if(i[A]=T*i[A-1]+i[A-2],Math.abs(i[A])>L)return;if(o[A]=T*o[A-1]+o[A-2],E=i[A]/o[A],Math.abs(E-e)<t||NaN==E)return i[A].toString()+"/"+o[A].toString();a=1/(a-T)}}(this.decimalValue-1,e.precision||12)}},malay:{from:function(e){if((e=parseFloat(e))<=-1||e>1)throw new Error("Outside valid range.");return e<0&&(e=-1/e),e+1},to:function(){return this.decimalValue<=2?E(this.decimalValue-1):E(-1/(this.decimalValue-1))}},indonesian:{from:function(e){if(0===(e=parseFloat(e)))throw new Error("Outside valid range.");return e>=1?e+1:-1/e+1},to:function(){return this.decimalValue<2?E(-1/(this.decimalValue-1)):E(this.decimalValue-1)}}},t=((L=function(e){if("number"!=typeof e||isNaN(e))throw new Error("Invalid odds");this.decimalValue=E(e)}).prototype=(o=function(){throw new Error("This constructor is private, please use the from* functions")}).prototype,o.from=function(e,r){if(!a.hasOwnProperty(e))throw new Error("Unknown format "+e+".");var E=a[e].from(r);return new L(E)},o);t.prototype.to=function(e,r){if(!a.hasOwnProperty(e))throw new Error("Unknown format "+e+".");r=Object.assign({precision:null,percentage:!1},r);var E=a[e].to.call(this,r);return"number"==typeof E&&null!==r.precision&&(E=i("round",E,-r.precision)),E};var A,T,_,s,p,S,N,O,I,l,n=t.from,R=function(e,r,E){var i=e.find((function(e){return Number(e.sportId)===Number(r)}));if(i){if(""==i.primaryBookmaker)return E;var o=[];return i.primaryBookmaker&&o.push(i.primaryBookmaker),i.secondaryBookmaker&&o.push(i.secondaryBookmaker),i.tertiaryBookmaker&&o.push(i.tertiaryBookmaker),o}return E},d=function(e,r,E,i,o){var L=e.get(r[0]);if(!L)return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds cause no matching bookmakers have been found"};var a=L.homeOdds,t=L.awayOdds,A=E?0:L.drawOdds;if(r.some((function(r){var i=e.get(r);return!!i&&(0===i.homeOdds||0===i.awayOdds||!E&&0===i.drawOdds||1===i.homeOdds||1===i.awayOdds||!E&&1===i.drawOdds)})))return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds cause bookmakers have 0 or 1 odds"};if(1==r.length)return{homeOdds:a,awayOdds:t,drawOdds:E?0:A};if(r.slice(1).some((function(r){var L=e[r];if(L){var T=L.homeOdds,_=L.awayOdds,s=L.drawOdds,p=n("decimal",a).to("impliedProbability"),S=n("decimal",t).to("impliedProbability"),N=E?0:n("decimal",A).to("impliedProbability"),O=n("decimal",T).to("impliedProbability"),I=n("decimal",_).to("impliedProbability"),l=E?0:n("decimal",s).to("impliedProbability"),R=P(p,O),d=P(S,I),M=E?0:P(N,l);if(R>i&&p>o&&O>o||d>i&&S>o&&I>o||!E&&M>i&&N>o&&l>o)return!0}return!1})))return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds due to percentage difference between bookmakers"};var T=[];return r.forEach((function(r){return T.push(e.get(r))})),{homeOdds:a,awayOdds:t,drawOdds:E?0:A}},P=function(e,r){var E=Math.abs(e-r)/e*100;return console.log("% diff: "+E),E};!function(e){e.SOCCER="Soccer",e.FOOTBALL="Football",e.BASKETBALL="Basketball",e.BASEBALL="Baseball",e.HOCKEY="Hockey",e.FIGHTING="Fighting",e.TENNIS="Tennis",e.ESPORTS="eSports",e.RUGBY="Rugby",e.VOLLEYBALL="Volleyball",e.HANDBALL="Handball",e.WATERPOLO="Waterpolo",e.CRICKET="Cricket",e.MOTOSPORT="Motosport",e.GOLF="Golf",e.TABLE_TENNIS="TableTennis",e.POLITICS="Politics",e.EMPTY=""}(A||(A={})),function(e){e[e.NCAAF=1]="NCAAF",e[e.NFL=2]="NFL",e[e.MLB=3]="MLB",e[e.NBA=4]="NBA",e[e.NCAAB=5]="NCAAB",e[e.NHL=6]="NHL",e[e.UFC=7]="UFC",e[e.WNBA=8]="WNBA",e[e.MLS=10]="MLS",e[e.EPL=11]="EPL",e[e.LIGUE_ONE=12]="LIGUE_ONE",e[e.BUNDESLIGA=13]="BUNDESLIGA",e[e.LA_LIGA=14]="LA_LIGA",e[e.SERIE_A=15]="SERIE_A",e[e.UEFA_CL=16]="UEFA_CL",e[e.UEFA_EL=17]="UEFA_EL",e[e.FIFA_WC=18]="FIFA_WC",e[e.J1_LEAGUE=19]="J1_LEAGUE",e[e.IPL=20]="IPL",e[e.T20_BLAST=21]="T20_BLAST",e[e.IIHF_WORLD_CHAMPIONSHIP=33]="IIHF_WORLD_CHAMPIONSHIP",e[e.COPA_AMERICA=44]="COPA_AMERICA",e[e.COPA_LIBERTADORES=45]="COPA_LIBERTADORES",e[e.UEFA_EURO=50]="UEFA_EURO",e[e.EREDIVISIE=57]="EREDIVISIE",e[e.PRIMEIRA_LIGA=61]="PRIMEIRA_LIGA",e[e.SUMMER_OLYMPICS_SOCCER_WOMEN=65]="SUMMER_OLYMPICS_SOCCER_WOMEN",e[e.SUMMER_OLYMPICS_SOCCER=66]="SUMMER_OLYMPICS_SOCCER",e[e.FIFA_WC_WOMEN=76]="FIFA_WC_WOMEN",e[e.ENGLAND_CUP=132]="ENGLAND_CUP",e[e.FRANCE_CUP=134]="FRANCE_CUP",e[e.SPAIN_CUP=138]="SPAIN_CUP",e[e.ITALY_CUP=141]="ITALY_CUP",e[e.TENNIS_WTA=152]="TENNIS_WTA",e[e.TENNIS_GS=153]="TENNIS_GS",e[e.TENNIS_MASTERS=156]="TENNIS_MASTERS",e[e.SUMMER_OLYMPICS_TENNIS=158]="SUMMER_OLYMPICS_TENNIS",e[e.GERMANY_CUP=209]="GERMANY_CUP",e[e.LIGA_MX=230]="LIGA_MX",e[e.BRAZIL_1=268]="BRAZIL_1",e[e.UEFA_EURO_U21=288]="UEFA_EURO_U21",e[e.FIFA_WORLD_CUP_U20=296]="FIFA_WORLD_CUP_U20",e[e.SUMMER_OLYMPICS_HANDBALL_WOMEN=380]="SUMMER_OLYMPICS_HANDBALL_WOMEN",e[e.SUMMER_OLYMPICS_HANDBALL=381]="SUMMER_OLYMPICS_HANDBALL",e[e.EUROLEAGUE=399]="EUROLEAGUE",e[e.SUMMER_OLYMPICS_BASKETBALL=406]="SUMMER_OLYMPICS_BASKETBALL",e[e.SUMMER_OLYMPICS_BASKETBALL_WOMEN=407]="SUMMER_OLYMPICS_BASKETBALL_WOMEN",e[e.FIBA_WORLD_CUP=409]="FIBA_WORLD_CUP",e[e.FORMULA1=445]="FORMULA1",e[e.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN=453]="SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN",e[e.SUMMER_OLYMPICS_BEACH_VOLEYBALL=454]="SUMMER_OLYMPICS_BEACH_VOLEYBALL",e[e.MOTOGP=497]="MOTOGP",e[e.SAUDI_PROFESSIONAL_LEAGUE=536]="SAUDI_PROFESSIONAL_LEAGUE",e[e.SUMMER_OLYMPICS_WATERPOLO=8881]="SUMMER_OLYMPICS_WATERPOLO",e[e.SUMMER_OLYMPICS_VOLEYBALL_WOMEN=8893]="SUMMER_OLYMPICS_VOLEYBALL_WOMEN",e[e.SUMMER_OLYMPICS_VOLEYBALL=8894]="SUMMER_OLYMPICS_VOLEYBALL",e[e.SUMMER_OLYMPICS_TABLE_TENNIS=8910]="SUMMER_OLYMPICS_TABLE_TENNIS",e[e.BOXING=9196]="BOXING",e[e.SUMMER_OLYMPICS_RUGBY=9578]="SUMMER_OLYMPICS_RUGBY",e[e.SUMMER_OLYMPICS_RUGBY_WOMEN=9588]="SUMMER_OLYMPICS_RUGBY_WOMEN",e[e.SUMMER_OLYMPICS_HOCKEY_WOMEN=9698]="SUMMER_OLYMPICS_HOCKEY_WOMEN",e[e.SUMMER_OLYMPICS_HOCKEY=9699]="SUMMER_OLYMPICS_HOCKEY",e[e.UEFA_NATIONS_LEAGUE=9806]="UEFA_NATIONS_LEAGUE",e[e.CONCACAF_NATIONS_LEAGUE=9821]="CONCACAF_NATIONS_LEAGUE",e[e.CSGO=9977]="CSGO",e[e.DOTA2=9983]="DOTA2",e[e.SUMMER_OLYMPICS_BASKETBALL_3X3=10071]="SUMMER_OLYMPICS_BASKETBALL_3X3",e[e.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN=10072]="SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN",e[e.SUMMER_OLYMPICS_QUALIFICATION=10502]="SUMMER_OLYMPICS_QUALIFICATION",e[e.LOL=10138]="LOL",e[e.CONMEBOL_WC_QUALIFICATIONS=10199]="CONMEBOL_WC_QUALIFICATIONS",e[e.UEFA_CONFERENCE_LEAGUE=10216]="UEFA_CONFERENCE_LEAGUE",e[e.NON_TITLE_BOXING=10595]="NON_TITLE_BOXING",e[e.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION=10611]="UEFA_CHAMPIONS_LEAGUE_QUALIFICATION",e[e.UEFA_EUROPA_LEAGUE_QUALIFICATION=10613]="UEFA_EUROPA_LEAGUE_QUALIFICATION",e[e.UEFA_CONFERENCE_LEAGUE_QUALIFICATION=10615]="UEFA_CONFERENCE_LEAGUE_QUALIFICATION",e[e.US_ELECTION=2e4]="US_ELECTION",e[e.UEFA_SUPER_CUP=20001]="UEFA_SUPER_CUP",e[e.BRAZIL_CUP=20002]="BRAZIL_CUP",e[e.ENGLAND_CHAMPIONSHIP=20011]="ENGLAND_CHAMPIONSHIP",e[e.SCOTLAND_PREMIERSHIP=20101]="SCOTLAND_PREMIERSHIP",e[e.BELGIUM_LEAGUE=20102]="BELGIUM_LEAGUE",e[e.CZECH_LEAGUE=20103]="CZECH_LEAGUE",e[e.CHILE_PRIMERA=20104]="CHILE_PRIMERA",e[e.FINLAND_LEAGUE=20105]="FINLAND_LEAGUE",e[e.ARGENTINA_PRIMERA=20106]="ARGENTINA_PRIMERA",e[e.RUSSIA_PREMIER=20107]="RUSSIA_PREMIER",e[e.TURKEY_SUPER_LEAGUE=20108]="TURKEY_SUPER_LEAGUE",e[e.SERBIA_SUPER_LEAGUE=20109]="SERBIA_SUPER_LEAGUE",e[e.GREECE_SUPER_LEAGUE=20110]="GREECE_SUPER_LEAGUE",e[e.INDIA_PREMIER=20111]="INDIA_PREMIER",e[e.CHINA_SUPER_LEAGUE=20112]="CHINA_SUPER_LEAGUE",e[e.AUSTRALIA_A_LEAGUE=20113]="AUSTRALIA_A_LEAGUE",e[e.SWITZERLAND_SUPER_LEAGUE=20114]="SWITZERLAND_SUPER_LEAGUE",e[e.BUNDESLIGA_2=20115]="BUNDESLIGA_2",e[e.LA_LIGA_2=20116]="LA_LIGA_2",e[e.SERIE_B=20117]="SERIE_B",e[e.INDIA_SUPER_LEAGUE=20118]="INDIA_SUPER_LEAGUE",e[e.LIGUE_2=20119]="LIGUE_2",e[e.AUSTRIA_BUNDESLIGA=20120]="AUSTRIA_BUNDESLIGA",e[e.DENMARK_SUPER_LEAGUE=20121]="DENMARK_SUPER_LEAGUE",e[e.POLAND_LEAGUE=20122]="POLAND_LEAGUE",e[e.SWEDEN_LEAGUE=20123]="SWEDEN_LEAGUE",e[e.COLOMBIA_PRIMERA_A=20124]="COLOMBIA_PRIMERA_A",e[e.ENGLAND_EFL_CUP=20125]="ENGLAND_EFL_CUP",e[e.ENGLAND_LEGAUE_1=20126]="ENGLAND_LEGAUE_1",e[e.URUGUAY_PRIMERA_DIVISION=20127]="URUGUAY_PRIMERA_DIVISION",e[e.EUROCUP=20200]="EUROCUP",e[e.GOLF_H2H=100021]="GOLF_H2H",e[e.GOLF_WINNER=100121]="GOLF_WINNER",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1=15312]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2=15313]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3=15314]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4=15315]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5=15316]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6=15317]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7=15318]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_1=15622]="TENNIS_MASTERS_LIVE_MAPPING_V2_1",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_2=15623]="TENNIS_MASTERS_LIVE_MAPPING_V2_2",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_3=15624]="TENNIS_MASTERS_LIVE_MAPPING_V2_3",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_4=15625]="TENNIS_MASTERS_LIVE_MAPPING_V2_4",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_5=15626]="TENNIS_MASTERS_LIVE_MAPPING_V2_5",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_6=15627]="TENNIS_MASTERS_LIVE_MAPPING_V2_6",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_7=15628]="TENNIS_MASTERS_LIVE_MAPPING_V2_7",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_8=15632]="TENNIS_MASTERS_LIVE_MAPPING_V2_8",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_9=15633]="TENNIS_MASTERS_LIVE_MAPPING_V2_9",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_10=15634]="TENNIS_MASTERS_LIVE_MAPPING_V2_10",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_11=15635]="TENNIS_MASTERS_LIVE_MAPPING_V2_11",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_12=15636]="TENNIS_MASTERS_LIVE_MAPPING_V2_12",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_13=15637]="TENNIS_MASTERS_LIVE_MAPPING_V2_13",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_14=15638]="TENNIS_MASTERS_LIVE_MAPPING_V2_14",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_15=15641]="TENNIS_MASTERS_LIVE_MAPPING_V2_15",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_16=15642]="TENNIS_MASTERS_LIVE_MAPPING_V2_16",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_17=15643]="TENNIS_MASTERS_LIVE_MAPPING_V2_17",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_18=15644]="TENNIS_MASTERS_LIVE_MAPPING_V2_18",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_19=15645]="TENNIS_MASTERS_LIVE_MAPPING_V2_19",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_20=15646]="TENNIS_MASTERS_LIVE_MAPPING_V2_20",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_21=15647]="TENNIS_MASTERS_LIVE_MAPPING_V2_21",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_22=15648]="TENNIS_MASTERS_LIVE_MAPPING_V2_22",e[e.TENNIS_WTA_LIVE_MAPPING_V2_1=15322]="TENNIS_WTA_LIVE_MAPPING_V2_1",e[e.TENNIS_WTA_LIVE_MAPPING_V2_2=15323]="TENNIS_WTA_LIVE_MAPPING_V2_2",e[e.TENNIS_WTA_LIVE_MAPPING_V2_3=15324]="TENNIS_WTA_LIVE_MAPPING_V2_3",e[e.TENNIS_WTA_LIVE_MAPPING_V2_4=15325]="TENNIS_WTA_LIVE_MAPPING_V2_4",e[e.TENNIS_WTA_LIVE_MAPPING_V2_5=15326]="TENNIS_WTA_LIVE_MAPPING_V2_5",e[e.TENNIS_WTA_LIVE_MAPPING_V2_6=15327]="TENNIS_WTA_LIVE_MAPPING_V2_6",e[e.TENNIS_WTA_LIVE_MAPPING_V2_7=15328]="TENNIS_WTA_LIVE_MAPPING_V2_7"}(T||(T={})),function(e){e.MONEYLINE="Moneyline"}(_||(_={})),function(e){e.ASIAN_HANDICAP="Asian Handicap",e.GAME_SPREAD="Game Spread",e.POINT_SPREAD="Point Spread",e.GOAL_SPREAD="Goal Spread",e.RUN_LINE="Run Line",e.PUCK_LINE="Puck Line"}(s||(s={})),function(e){e.TOTAL_GAMES="Total Games",e.TOTAL_GOALS="Total Goals",e.TOTAL_POINTS="Total Points",e.TOTAL_RUNS="Total Runs"}(p||(p={})),function(e){e.POINTS="points",e.GOALS="goals",e.ROUNDS="rounds",e.SETS="sets",e.EMPTY=""}(S||(S={})),function(e){e.OVERTIME="overtime",e.REGULAR="regular",e.EMPTY=""}(N||(N={})),function(e){e.QUARTER="quarter",e.HALF="half",e.PERIOD="period",e.ROUND="round",e.INNING="inning",e.SET="set",e.EMPTY=""}(O||(O={})),function(e){e.RUNDOWN="rundown",e.ENETPULSE="enetpulse",e.JSONODDS="jsonOdds",e.OPTICODDS="opticOdds",e.EMPTY=""}(I||(I={}));var M=((l={})[T.NCAAF]={sport:A.FOOTBALL,id:T.NCAAF,label:"NCAA Football",opticOddsName:"NCAAF",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.NFL]={sport:A.FOOTBALL,id:T.NFL,label:"NFL",opticOddsName:"NFL",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.MLB]={sport:A.BASEBALL,id:T.MLB,label:"MLB",opticOddsName:"MLB",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.INNING,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.RUN_LINE,p.TOTAL_RUNS],betTypesForLiveTestnet:[_.MONEYLINE,s.RUN_LINE,p.TOTAL_RUNS]},l[T.NBA]={sport:A.BASKETBALL,id:T.NBA,label:"NBA",opticOddsName:"NBA",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.NCAAB]={sport:A.BASKETBALL,id:T.NCAAB,label:"NCAA Basketball",provider:I.RUNDOWN,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.NHL]={sport:A.HOCKEY,id:T.NHL,label:"NHL",opticOddsName:"NHL",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.OVERTIME,periodType:O.PERIOD,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.PUCK_LINE,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.PUCK_LINE,p.TOTAL_GOALS]},l[T.UFC]={sport:A.FIGHTING,id:T.UFC,label:"UFC",provider:I.OPTICODDS,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.WNBA]={sport:A.BASKETBALL,id:T.WNBA,label:"WNBA",opticOddsName:"WNBA",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.MLS]={sport:A.SOCCER,id:T.MLS,label:"MLS",opticOddsName:"USA - Major League Soccer",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.EPL]={sport:A.SOCCER,id:T.EPL,label:"EPL",opticOddsName:"England - Premier League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.LIGUE_ONE]={sport:A.SOCCER,id:T.LIGUE_ONE,label:"Ligue 1",opticOddsName:"France - Ligue 1",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.BUNDESLIGA]={sport:A.SOCCER,id:T.BUNDESLIGA,label:"Bundesliga",opticOddsName:"Germany - Bundesliga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.LA_LIGA]={sport:A.SOCCER,id:T.LA_LIGA,label:"La Liga",opticOddsName:"Spain - La Liga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.SERIE_A]={sport:A.SOCCER,id:T.SERIE_A,label:"Serie A",opticOddsName:"Italy - Serie A",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_CL]={sport:A.SOCCER,id:T.UEFA_CL,label:"UEFA Champions League",opticOddsName:"UEFA - Champions League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_EL]={sport:A.SOCCER,id:T.UEFA_EL,label:"UEFA Europa League",opticOddsName:"UEFA - Europa League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.FIFA_WC]={sport:A.SOCCER,id:T.FIFA_WC,label:"FIFA World Cup Qualifiers",provider:I.OPTICODDS,opticOddsName:"FIFA - World Cup Qualifiers",scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.J1_LEAGUE]={sport:A.SOCCER,id:T.J1_LEAGUE,label:"J1 League",opticOddsName:"Japan - J1 League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.IPL]={sport:A.CRICKET,id:T.IPL,label:"Indian Premier League",provider:I.RUNDOWN,scoringType:S.POINTS,matchResolveType:N.EMPTY,periodType:O.INNING,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.T20_BLAST]={sport:A.CRICKET,id:T.T20_BLAST,label:"T20 Blast",provider:I.RUNDOWN,scoringType:S.POINTS,matchResolveType:N.EMPTY,periodType:O.INNING,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.IIHF_WORLD_CHAMPIONSHIP]={sport:A.HOCKEY,id:T.IIHF_WORLD_CHAMPIONSHIP,label:"IIHF World Championship",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.PERIOD,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.COPA_AMERICA]={sport:A.SOCCER,id:T.COPA_AMERICA,label:"Copa America",opticOddsName:"CONMEBOL - Copa America",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.COPA_LIBERTADORES]={sport:A.SOCCER,id:T.COPA_LIBERTADORES,label:"Copa Libertadores",opticOddsName:"CONMEBOL - Copa Libertadores",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_EURO]={sport:A.SOCCER,id:T.UEFA_EURO,label:"UEFA EURO 2024",opticOddsName:"UEFA - European Championship",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.EREDIVISIE]={sport:A.SOCCER,id:T.EREDIVISIE,label:"Eredivisie",opticOddsName:"Netherlands - Eredivisie",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.PRIMEIRA_LIGA]={sport:A.SOCCER,id:T.PRIMEIRA_LIGA,label:"Primeira Liga",opticOddsName:"Portugal - Primeira Liga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.SUMMER_OLYMPICS_SOCCER_WOMEN]={sport:A.SOCCER,id:T.SUMMER_OLYMPICS_SOCCER_WOMEN,label:"Olympic Games Soccer Women",opticOddsName:"Olympics Soccer Women",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.SUMMER_OLYMPICS_SOCCER]={sport:A.SOCCER,id:T.SUMMER_OLYMPICS_SOCCER,label:"Olympic Games Soccer",opticOddsName:"Olympics Soccer Men",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.FIFA_WC_WOMEN]={sport:A.SOCCER,id:T.FIFA_WC_WOMEN,label:"FIFA World Cup Women",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.ENGLAND_CUP]={sport:A.SOCCER,id:T.ENGLAND_CUP,label:"FA Cup",opticOddsName:"England - FA Cup",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.FRANCE_CUP]={sport:A.SOCCER,id:T.FRANCE_CUP,label:"Coupe de France",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SPAIN_CUP]={sport:A.SOCCER,id:T.SPAIN_CUP,label:"Copa del Rey",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.ITALY_CUP]={sport:A.SOCCER,id:T.ITALY_CUP,label:"Coppa Italia",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.TENNIS_WTA]={sport:A.TENNIS,id:T.TENNIS_WTA,label:"WTA Events",opticOddsName:"WTA",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES],betTypesForLiveTestnet:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES]},l[T.TENNIS_GS]={sport:A.TENNIS,id:T.TENNIS_GS,label:"Grand Slam",opticOddsName:"ATP,WTA",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES],betTypesForLiveTestnet:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES]},l[T.TENNIS_MASTERS]={sport:A.TENNIS,id:T.TENNIS_MASTERS,label:"ATP Events",opticOddsName:"ATP",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES],betTypesForLiveTestnet:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES]},l[T.SUMMER_OLYMPICS_TENNIS]={sport:A.TENNIS,id:T.SUMMER_OLYMPICS_TENNIS,label:"Olympic Games Tennis",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GAME_SPREAD,p.TOTAL_GAMES]},l[T.GERMANY_CUP]={sport:A.SOCCER,id:T.GERMANY_CUP,label:"DFB Pokal",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.LIGA_MX]={sport:A.SOCCER,id:T.LIGA_MX,label:"Liga MX",opticOddsName:"Mexico - Liga MX",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.BRAZIL_1]={sport:A.SOCCER,id:T.BRAZIL_1,label:"Serie A",opticOddsName:"Brazil - Serie A",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_EURO_U21]={sport:A.SOCCER,id:T.UEFA_EURO_U21,label:"UEFA EURO U21",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.FIFA_WORLD_CUP_U20]={sport:A.SOCCER,id:T.FIFA_WORLD_CUP_U20,label:"FIFA World Cup U20",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_HANDBALL_WOMEN]={sport:A.HANDBALL,id:T.SUMMER_OLYMPICS_HANDBALL_WOMEN,label:"Olympic Games Handball Women",opticOddsName:"Olympics Handball Women",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.SUMMER_OLYMPICS_HANDBALL]={sport:A.HANDBALL,id:T.SUMMER_OLYMPICS_HANDBALL,label:"Olympic Games Handball",opticOddsName:"Olympics Handball Men",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.EUROLEAGUE]={sport:A.BASKETBALL,id:T.EUROLEAGUE,label:"Euroleague",opticOddsName:"Euroleague",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.SUMMER_OLYMPICS_BASKETBALL]={sport:A.BASKETBALL,id:T.SUMMER_OLYMPICS_BASKETBALL,label:"Olympic Games Basketball",opticOddsName:"Olympics Basketball Men",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.SUMMER_OLYMPICS_BASKETBALL_WOMEN]={sport:A.BASKETBALL,id:T.SUMMER_OLYMPICS_BASKETBALL_WOMEN,label:"Olympic Games Basketball Women",opticOddsName:"Olympics Basketball Women",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.POINT_SPREAD,p.TOTAL_POINTS]},l[T.FIBA_WORLD_CUP]={sport:A.BASKETBALL,id:T.FIBA_WORLD_CUP,label:"FIBA World Cup",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.FORMULA1]={sport:A.MOTOSPORT,id:T.FORMULA1,label:"Formula 1",provider:I.ENETPULSE,scoringType:S.EMPTY,matchResolveType:N.EMPTY,periodType:O.EMPTY,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN]={sport:A.VOLLEYBALL,id:T.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN,label:"Olympic Games Beach Voleyball Women",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_BEACH_VOLEYBALL]={sport:A.VOLLEYBALL,id:T.SUMMER_OLYMPICS_BEACH_VOLEYBALL,label:"Olympic Games Beach Voleyball",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_TABLE_TENNIS]={sport:A.TABLE_TENNIS,id:T.SUMMER_OLYMPICS_TABLE_TENNIS,label:"Olympic Games Table Tennis",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.MOTOGP]={sport:A.MOTOSPORT,id:T.MOTOGP,label:"MotoGP",provider:I.ENETPULSE,scoringType:S.EMPTY,matchResolveType:N.EMPTY,periodType:O.EMPTY,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SAUDI_PROFESSIONAL_LEAGUE]={sport:A.SOCCER,id:T.SAUDI_PROFESSIONAL_LEAGUE,label:"Saudi Professional League",opticOddsName:"Saudi Arabia - Saudi League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.SUMMER_OLYMPICS_WATERPOLO]={sport:A.WATERPOLO,id:T.SUMMER_OLYMPICS_WATERPOLO,label:"Olympic Games Water Polo",opticOddsName:"Olympics Water Polo",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.QUARTER,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.SUMMER_OLYMPICS_VOLEYBALL_WOMEN]={sport:A.VOLLEYBALL,id:T.SUMMER_OLYMPICS_VOLEYBALL_WOMEN,label:"Olympic Games Volleyball Women",opticOddsName:"Olympics Volleyball Women",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.SUMMER_OLYMPICS_VOLEYBALL]={sport:A.VOLLEYBALL,id:T.SUMMER_OLYMPICS_VOLEYBALL,label:"Olympic Games Volleyball",opticOddsName:"Olympics Volleyball Men",provider:I.ENETPULSE,scoringType:S.SETS,matchResolveType:N.REGULAR,periodType:O.SET,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.BOXING]={sport:A.FIGHTING,id:T.BOXING,label:"Boxing",provider:I.ENETPULSE,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_RUGBY]={sport:A.RUGBY,id:T.SUMMER_OLYMPICS_RUGBY,label:"Olympic Games Rugby",opticOddsName:"Olympics Rugby 7s Men",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_RUGBY_WOMEN]={sport:A.RUGBY,id:T.SUMMER_OLYMPICS_RUGBY_WOMEN,label:"Olympic Games Rugby Women",opticOddsName:"Olympics Rugby 7s Women",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_HOCKEY_WOMEN]={sport:A.HOCKEY,id:T.SUMMER_OLYMPICS_HOCKEY_WOMEN,label:"Olympic Games Hockey Women",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.PERIOD,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_HOCKEY]={sport:A.HOCKEY,id:T.SUMMER_OLYMPICS_HOCKEY,label:"Olympic Games Hockey",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.PERIOD,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.UEFA_NATIONS_LEAGUE]={sport:A.SOCCER,id:T.UEFA_NATIONS_LEAGUE,label:"UEFA Nations League",provider:I.OPTICODDS,opticOddsName:"UEFA - Nations League",scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.CONCACAF_NATIONS_LEAGUE]={sport:A.SOCCER,id:T.CONCACAF_NATIONS_LEAGUE,label:"CONCACAF Nations League",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.CSGO]={sport:A.ESPORTS,id:T.CSGO,label:"CS GO",opticOddsName:"CS2",provider:I.ENETPULSE,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.DOTA2]={sport:A.ESPORTS,id:T.DOTA2,label:"DOTA 2",opticOddsName:"Dota 2",provider:I.ENETPULSE,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SUMMER_OLYMPICS_BASKETBALL_3X3]={sport:A.BASKETBALL,id:T.SUMMER_OLYMPICS_BASKETBALL_3X3,label:"Olympic Games Basketball 3x3",opticOddsName:"Olympics Basketball 3x3 Men",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN]={sport:A.BASKETBALL,id:T.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN,label:"Olympic Games Basketball 3x3 Women",opticOddsName:"Olympics Basketball 3x3 Women",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE]},l[T.SUMMER_OLYMPICS_QUALIFICATION]={sport:A.BASKETBALL,id:T.SUMMER_OLYMPICS_QUALIFICATION,label:"Summer Olympics Basketball Qualification",provider:I.ENETPULSE,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.LOL]={sport:A.ESPORTS,id:T.LOL,label:"LOL",opticOddsName:"League of Legends",provider:I.ENETPULSE,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.CONMEBOL_WC_QUALIFICATIONS]={sport:A.SOCCER,id:T.CONMEBOL_WC_QUALIFICATIONS,label:"CONMEBOL WC Qualification",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.UEFA_CONFERENCE_LEAGUE]={sport:A.SOCCER,id:T.UEFA_CONFERENCE_LEAGUE,label:"UEFA Conference League",opticOddsName:"UEFA - Europa Conference League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.NON_TITLE_BOXING]={sport:A.FIGHTING,id:T.NON_TITLE_BOXING,label:"Boxing",provider:I.ENETPULSE,scoringType:S.ROUNDS,matchResolveType:N.EMPTY,periodType:O.ROUND,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION]={sport:A.SOCCER,id:T.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION,label:"UEFA Champions League Qualification",opticOddsName:"UEFA - Champions League",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_EUROPA_LEAGUE_QUALIFICATION]={sport:A.SOCCER,id:T.UEFA_EUROPA_LEAGUE_QUALIFICATION,label:"UEFA Europa League Qualification",opticOddsName:"UEFA - Europa League",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.UEFA_CONFERENCE_LEAGUE_QUALIFICATION]={sport:A.SOCCER,id:T.UEFA_CONFERENCE_LEAGUE_QUALIFICATION,label:"UEFA Conference League Qualification",opticOddsName:"UEFA - Europa Conference League",provider:I.ENETPULSE,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.US_ELECTION]={sport:A.POLITICS,id:T.US_ELECTION,label:"US Election 2024",provider:I.EMPTY,scoringType:S.EMPTY,matchResolveType:N.EMPTY,periodType:O.EMPTY,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.UEFA_SUPER_CUP]={sport:A.SOCCER,id:T.UEFA_SUPER_CUP,label:"UEFA Super Cup",opticOddsName:"UEFA - Super Cup",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.BRAZIL_CUP]={sport:A.SOCCER,id:T.BRAZIL_CUP,label:"Copa do Brasil",opticOddsName:"Brazil - Copa do Brasil",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.ENGLAND_CHAMPIONSHIP]={sport:A.SOCCER,id:T.ENGLAND_CHAMPIONSHIP,label:"EFL Championship",opticOddsName:"England - Championship",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.SCOTLAND_PREMIERSHIP]={sport:A.SOCCER,id:T.SCOTLAND_PREMIERSHIP,label:"Scotland Premiership",opticOddsName:"Scotland - Premiership",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.BELGIUM_LEAGUE]={sport:A.SOCCER,id:T.BELGIUM_LEAGUE,label:"Belgium Jupiler Pro League",opticOddsName:"Belgium - Jupiler Pro League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.CZECH_LEAGUE]={sport:A.SOCCER,id:T.CZECH_LEAGUE,label:"Czech Republic FNL",opticOddsName:"Czech Republic - FNL",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.CHILE_PRIMERA]={sport:A.SOCCER,id:T.CHILE_PRIMERA,label:"Chile Primera Division",opticOddsName:"Chile - Primera Division",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.FINLAND_LEAGUE]={sport:A.SOCCER,id:T.FINLAND_LEAGUE,label:"Finland Veikkausliiga",opticOddsName:"Finland - Veikkausliiga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.ARGENTINA_PRIMERA]={sport:A.SOCCER,id:T.ARGENTINA_PRIMERA,label:"Argentina Primera Division",opticOddsName:"Argentina - Primera Division",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.RUSSIA_PREMIER]={sport:A.SOCCER,id:T.RUSSIA_PREMIER,label:"Russia Premier League",opticOddsName:"Russia - Premier League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.TURKEY_SUPER_LEAGUE]={sport:A.SOCCER,id:T.TURKEY_SUPER_LEAGUE,label:"Turkey Super Lig",opticOddsName:"Turkey - Super Lig",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SERBIA_SUPER_LEAGUE]={sport:A.SOCCER,id:T.SERBIA_SUPER_LEAGUE,label:"Serbia Super Liga",opticOddsName:"Serbia - Super Liga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.GREECE_SUPER_LEAGUE]={sport:A.SOCCER,id:T.GREECE_SUPER_LEAGUE,label:"Greece Super League",opticOddsName:"Greece - Super League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.INDIA_PREMIER]={sport:A.SOCCER,id:T.INDIA_PREMIER,label:"India Calcutta Premier Division",opticOddsName:"India - Calcutta Premier Division",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.CHINA_SUPER_LEAGUE]={sport:A.SOCCER,id:T.CHINA_SUPER_LEAGUE,label:"China Super League",opticOddsName:"China - Super League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.AUSTRALIA_A_LEAGUE]={sport:A.SOCCER,id:T.AUSTRALIA_A_LEAGUE,label:"Australia A-League",opticOddsName:"Australia - A-League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SWITZERLAND_SUPER_LEAGUE]={sport:A.SOCCER,id:T.SWITZERLAND_SUPER_LEAGUE,label:"Switzerland Super League",opticOddsName:"Switzerland - Super League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.BUNDESLIGA_2]={sport:A.SOCCER,id:T.BUNDESLIGA_2,label:"Bundesliga 2",opticOddsName:"Germany - Bundesliga 2",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.LA_LIGA_2]={sport:A.SOCCER,id:T.LA_LIGA_2,label:"La Liga 2",opticOddsName:"Spain - La Liga 2",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SERIE_B]={sport:A.SOCCER,id:T.SERIE_B,label:"Serie B",opticOddsName:"Italy - Serie B",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.INDIA_SUPER_LEAGUE]={sport:A.SOCCER,id:T.INDIA_SUPER_LEAGUE,label:"India Super League",opticOddsName:"India - Super League",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.LIGUE_2]={sport:A.SOCCER,id:T.LIGUE_2,label:"Ligue 2",opticOddsName:"France - Ligue 2",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.AUSTRIA_BUNDESLIGA]={sport:A.SOCCER,id:T.AUSTRIA_BUNDESLIGA,label:"Austria Bundesliga",opticOddsName:"Austria - Bundesliga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.DENMARK_SUPER_LEAGUE]={sport:A.SOCCER,id:T.DENMARK_SUPER_LEAGUE,label:"Denmark Superliga",opticOddsName:"Denmark - Superliga",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.POLAND_LEAGUE]={sport:A.SOCCER,id:T.POLAND_LEAGUE,label:"Poland Ekstraklasa",opticOddsName:"Poland - Ekstraklasa",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.SWEDEN_LEAGUE]={sport:A.SOCCER,id:T.SWEDEN_LEAGUE,label:"Sweden Allsvenskan",opticOddsName:"Sweden - Allsvenskan",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.COLOMBIA_PRIMERA_A]={sport:A.SOCCER,id:T.COLOMBIA_PRIMERA_A,label:"Colombia Primera A",opticOddsName:"Colombia - Primera A",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.ENGLAND_EFL_CUP]={sport:A.SOCCER,id:T.ENGLAND_EFL_CUP,label:"England EFL Cup",opticOddsName:"England - EFL Cup",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[_.MONEYLINE],betTypesForLiveTestnet:[_.MONEYLINE,s.GOAL_SPREAD,p.TOTAL_GOALS]},l[T.ENGLAND_LEGAUE_1]={sport:A.SOCCER,id:T.ENGLAND_LEGAUE_1,label:"England League 1",opticOddsName:"England - League 1",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.URUGUAY_PRIMERA_DIVISION]={sport:A.SOCCER,id:T.URUGUAY_PRIMERA_DIVISION,label:"Uruguay Primera Division",opticOddsName:"Uruguay - Primera Division",provider:I.OPTICODDS,scoringType:S.GOALS,matchResolveType:N.REGULAR,periodType:O.HALF,isDrawAvailable:!0,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.EUROCUP]={sport:A.BASKETBALL,id:T.EUROCUP,label:"Eurocup",opticOddsName:"Eurocup",provider:I.OPTICODDS,scoringType:S.POINTS,matchResolveType:N.OVERTIME,periodType:O.QUARTER,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.GOLF_H2H]={sport:A.GOLF,id:T.GOLF_H2H,label:"Golf head-to-head",provider:I.JSONODDS,scoringType:S.EMPTY,matchResolveType:N.EMPTY,periodType:O.EMPTY,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l[T.GOLF_WINNER]={sport:A.GOLF,id:T.GOLF_WINNER,label:"Golf Tournament Winner",provider:I.JSONODDS,scoringType:S.EMPTY,matchResolveType:N.EMPTY,periodType:O.EMPTY,isDrawAvailable:!1,betTypesForLive:[],betTypesForLiveTestnet:[]},l),y=[T.CSGO,T.DOTA2,T.LOL,T.TENNIS_GS,T.TENNIS_MASTERS,T.SUMMER_OLYMPICS_TENNIS,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6,T.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7,T.TENNIS_MASTERS_LIVE_MAPPING_V2_1,T.TENNIS_MASTERS_LIVE_MAPPING_V2_2,T.TENNIS_MASTERS_LIVE_MAPPING_V2_3,T.TENNIS_MASTERS_LIVE_MAPPING_V2_4,T.TENNIS_MASTERS_LIVE_MAPPING_V2_5,T.TENNIS_MASTERS_LIVE_MAPPING_V2_6,T.TENNIS_MASTERS_LIVE_MAPPING_V2_7,T.TENNIS_MASTERS_LIVE_MAPPING_V2_8,T.TENNIS_MASTERS_LIVE_MAPPING_V2_9,T.TENNIS_MASTERS_LIVE_MAPPING_V2_10,T.TENNIS_MASTERS_LIVE_MAPPING_V2_11,T.TENNIS_MASTERS_LIVE_MAPPING_V2_12,T.TENNIS_MASTERS_LIVE_MAPPING_V2_13,T.TENNIS_MASTERS_LIVE_MAPPING_V2_14,T.TENNIS_MASTERS_LIVE_MAPPING_V2_15,T.TENNIS_MASTERS_LIVE_MAPPING_V2_16,T.TENNIS_MASTERS_LIVE_MAPPING_V2_17,T.TENNIS_MASTERS_LIVE_MAPPING_V2_18,T.TENNIS_MASTERS_LIVE_MAPPING_V2_19,T.TENNIS_MASTERS_LIVE_MAPPING_V2_20,T.TENNIS_MASTERS_LIVE_MAPPING_V2_21,T.TENNIS_MASTERS_LIVE_MAPPING_V2_22,T.TENNIS_WTA_LIVE_MAPPING_V2_1,T.TENNIS_WTA_LIVE_MAPPING_V2_2,T.TENNIS_WTA_LIVE_MAPPING_V2_3,T.TENNIS_WTA_LIVE_MAPPING_V2_4,T.TENNIS_WTA_LIVE_MAPPING_V2_5,T.TENNIS_WTA_LIVE_MAPPING_V2_6,T.TENNIS_WTA_LIVE_MAPPING_V2_7],c=[T.SUMMER_OLYMPICS_RUGBY,T.SUMMER_OLYMPICS_RUGBY_WOMEN],v=[T.NCAAF,T.NFL,T.MLB,T.NBA,T.NCAAB,T.NHL,T.WNBA,T.MLS,T.IPL,T.T20_BLAST],C=[701,702,703,704],G={1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,10:10,11:11,12:12,13:13,14:14,15:15,16:16,17:17,18:18,19:19,20:20,21:21},U={320:18,6:24,33:33,16:42,44:44,45:45,11:47,50:50,12:53,13:54,15:55,57:57,61:61,65:65,66:66,17:73,76:76,14:87,152:152,153:153,156:156,158:158,132:132,134:134,138:138,141:141,209:209,230:230,268:268,288:288,296:296,310:310,319:319,322:322,327:327,380:380,381:381,399:399,406:406,407:407,409:409,445:445,453:453,454:454,497:497,536:536,8881:8881,8893:8893,8894:8894,8910:8910,9196:9196,9578:9578,9588:9588,9698:9698,9699:9699,9806:9806,9821:9821,9977:9977,9983:9983,10071:10071,10072:10072,10502:10502,10138:10138,10199:10199,10216:10216,10595:10595,10611:10611,10613:10613,10615:10615},b={1:"NCAAF",2:"NFL",3:"MLB",4:"NBA",6:"NHL",7:"UFC",8:"WNBA",10:"USA - Major League Soccer",11:"England - Premier League",12:"France - Ligue 1",13:"Germany - Bundesliga",14:"Spain - La Liga",15:"Italy - Serie A",16:"UEFA - Champions League",17:"UEFA - Europa League",18:"FIFA - World Cup Qualifiers",19:"Japan - J1 League",45:"CONMEBOL - Copa Libertadores",57:"Netherlands - Eredivisie",61:"Portugal - Primeira Liga",230:"Mexico - Liga MX",268:"Brazil - Serie A",399:"Euroleague",536:"Saudi Arabia - Saudi League",9806:"UEFA - Nations League",9977:"CS2",9983:"Dota 2",10138:"League of Legends",10216:"UEFA - Europa Conference League",20001:"UEFA - Super Cup",20002:"Brazil - Copa do Brasil",20011:"England - Championship",20101:"Scotland - Premiership",20102:"Belgium - Jupiler Pro League",20103:"Czech Republic - FNL",20104:"Chile - Primera Division",20105:"Finland - Veikkausliiga",20106:"Argentina - Primera Division",20107:"Russia - Premier League",20108:"Turkey - Super Lig",20109:"Serbia - Super Liga",20110:"Greece - Super League",20111:"India - Calcutta Premier Division",20112:"China - Super League",20113:"Australia - A-League",20114:"Switzerland - Super League",20115:"Germany - Bundesliga 2",20116:"Spain - La Liga 2",20117:"Italy - Serie B",20118:"India - Super League",20119:"France - Ligue 2",20120:"Austria - Bundesliga",20121:"Denmark - Superliga",20122:"Poland - Ekstraklasa",20123:"Sweden - Allsvenskan",20124:"Colombia - Primera A",20125:"England - EFL Cup",20126:"England - League 1",20127:"Uruguay - Primera Division",20200:"Eurocup"},u=function(e){var r=M[e];return r?r.sport:A.EMPTY},m=function(e){var r=M[e];return r?r.label:""},F=function(e){var r=M[e];return r?r.provider:""},D=function(e){var r=M[e];return!!r&&r.isDrawAvailable},g=function(e){return Object.values(M).filter((function(r){return e?r.betTypesForLiveTestnet.length>0:r.betTypesForLive.length>0})).map((function(e){return e.id}))},h=function(e,r){var E=M[e];return E?r?E.betTypesForLiveTestnet:E.betTypesForLive:[]},V=function(e,r){var E=M[e];return!!E&&(r?E.betTypesForLiveTestnet.length>0:E.betTypesForLive.length>0)},B=function(e){var r=M[e];return r?r.opticOddsName:void 0},Y=function(e){var r=M[e];return r?r.periodType:""},f=function(e,r){var E;return h(e,r).forEach((function(e){Object.values(s).find((function(r){return r==e}))&&(E=e)})),E},w=function(e,r){var E;return h(e,r).forEach((function(e){Object.values(p).find((function(r){return r==e}))&&(E=e)})),E},H=function(e,r,E,i,o,L){var a,t;if(y.includes(e)?(a=i.toLowerCase()==r.toLowerCase()||i.toLowerCase()==E.toLowerCase(),t=o.toLowerCase()==r.toLowerCase()||o.toLowerCase()==E.toLowerCase()):(a=i.toLowerCase()==r.toLowerCase(),t=o.toLowerCase()==E.toLowerCase()),!0!==a){var A=L.get(i.toLowerCase()),T=L.get(r.toLowerCase()),_=L.get(E.toLowerCase());if([A,T].some((function(e){return null==e})))return!1;a=y.includes(e)?A==T||A==_:A==T}if(!0!==t){var s=L.get(o.toLowerCase());if(T=L.get(r.toLowerCase()),[s,_=L.get(E.toLowerCase())].some((function(e){return null==e})))return!1;t=y.includes(e)&&s==T||s==_}return a&&t},W=function(e,r,E,i){var o;if(u(E)==A.TENNIS){var L=r.getTime(),a=e.getTime();o=Math.abs(a-L)<=Number(60*i*1e3)}else o=r.toUTCString()==e.toUTCString();return o},k=0,K="Draw",Q=1e5,X=.2,j=10001,z=10002,Z=100,x={OPEN:0,PAUSED:1,IN_PROGRESS:3,FINISHED:8,RESOLVED:10,CANCELED:255},J=function(e,r,E){if(e.some((function(e){return 0===e})))return e;var i=e.reduce((function(e,r){return e+r}),0);if(i<=1)return Array(e.length).fill(0);if(0===E){if(!(r>100*(i-1)))return e;E=r}var o=1+E/100,L=o/i,a=e.map((function(e){return e*L}));if(a.some((function(e){return e>=1})))return Array(e.length).fill(0);var t=a.reduce((function(e,r){return e+r}),0);if(t<1)return Array(e.length).fill(0);var A=o/t;return a.map((function(e){return e*A}))},q=function(e,r,E,i){var o=e.find((function(e){return Number(e.typeId)===Number(E)&&Number(e.sportId)===Number(r)}));return o?{minSpread:o.minSpread?Number(o.minSpread):i,targetSpread:o.targetSpread?Number(o.targetSpread):0}:{minSpread:i,targetSpread:0}},$=function(e){return e===k?0:ee("decimal","impliedProbability",e)},ee=function(e,r,E){try{return n(e,E).to(r)}catch(e){return 0}},re=function(e,r,E,i,o){var L=new Map;return E.forEach((function(E){var a=0,t=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==E.toLowerCase()&&e.selection.toLowerCase()===i.homeTeam.toLowerCase()}));0!==t.length&&(a=t[0].price);var A=0,T=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==E.toLowerCase()&&e.selection.toLowerCase()===i.awayTeam.toLowerCase()}));0!==T.length&&(A=T[0].price);var _=0;if(!o){var s=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==E.toLowerCase()&&e.selection.toLowerCase()===K.toLowerCase()}));0!==s.length&&(_=s[0].price)}L.set(E.toLowerCase(),{homeOdds:a,awayOdds:A,drawOdds:_})})),L},Ee=function(e,r,E,i,o,L,a){var t={homeTeam:i.home_team,awayTeam:i.away_team},A=re(i.odds,_.MONEYLINE,E,t,e),T=d(A,E,e,a,X);if(T.errorMessage)return{odds:e?[0,0]:[0,0,0],errorMessage:T.errorMessage};var s=(e?[T.homeOdds,T.awayOdds]:[T.homeOdds,T.awayOdds,T.drawOdds]).map((function(e){return $(e)})),p=q(r,o,Q,L);return{odds:s=null!==p?J(s,p.minSpread,p.targetSpread):J(s,L,0)}},ie=function(e,r,E){return e.filter((function(e){return e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==E.toLowerCase()}))},oe=function(e,r,E,i,o,L){var a=[],t=e.filter((function(e){return e&&.5===Math.abs(e.selection_points%1)}));return Le(t,r).forEach((function(e){var r=e.line,t=e.odds,A=$(t[0])||k,T=$(t[1])||k,_=A===k||T===k;if(!_){var s,p=q(i,E,o,L);null!==p?(s=J([A,T],p.minSpread,p.targetSpread)).some((function(e){return e===k}))?_=!0:(A=s[0],T=s[1]):(s=J([A,T],L,0)).some((function(e){return e===k}))?_=!0:(A=s[0],T=s[1])}var S=process.env.MIN_ODDS_FOR_CHILD_MARKETS_FOR_LIVE,N=process.env.MAX_ODDS_FOR_CHILD_MARKETS_FOR_LIVE;S&&N&&(A>=S||A<=N||T>=S||T<=N)||a.push({leagueId:E,typeId:o,type:"spread",results:[],status:_?x.PAUSED:x.OPEN,line:r,odds:[A,T]})})),a},Le=function(e,r){var E=e.reduce((function(e,E){var i=E.selection_points,o=E.price,L=E.selection===r.homeTeam,a=L?i:-i;return e[a]||(e[a]={home:null,away:null}),L?e[a].home=o:e[a].away=o,e}),{}),i=Object.entries(E).reduce((function(e,r){var E=r[0],i=r[1],o=parseFloat(E);return null!==i.home&&null!==i.away&&e.push({line:o,odds:[i.home,i.away]}),e}),[]);return i},ae=function(e,r,E,i,o){var L=[],a=e.filter((function(e){return e&&.5===Math.abs(e.selection_points%1)})),t=te(a);return Object.entries(t).forEach((function(e){var a=e[0],t=e[1],A=t.over,T=t.under,_=a.split("_"),s=(_[0],_[1]),p=$(A)||k,S=$(T)||k,N=p===k||S===k;if(!N){var O,I=q(E,r,i,o);null!==I?(O=J([p,S],I.minSpread,I.targetSpread)).some((function(e){return e===k}))?N=!0:(p=O[0],S=O[1]):(O=J([p,S],o,0)).some((function(e){return e===k}))?N=!0:(p=O[0],S=O[1])}var l=process.env.MIN_ODDS_FOR_CHILD_MARKETS_FOR_LIVE,n=process.env.MAX_ODDS_FOR_CHILD_MARKETS_FOR_LIVE,R={leagueId:r,typeId:i,type:"total",results:[],status:N?x.PAUSED:x.OPEN,line:parseFloat(s),odds:[p,S]};l&&n&&(p>=l||p<=n||S>=l||S<=n)||L.push(R)})),L},te=function(e){return e.reduce((function(e,r){if(r){var E="".concat(r.selection,"_").concat(r.selection_points);e[E]||(e[E]={over:null,under:null}),"over"===r.selection_line?e[E].over=r.price:"under"===r.selection_line&&(e[E].under=r.price)}return e}),{})},Ae=function(){return Ae=Object.assign||function(e){for(var r,E=1,i=arguments.length;E<i;E++)for(var o in r=arguments[E])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e},Ae.apply(this,arguments)},Te=function(e,r,E,i,o,L,a,t){var A=i.filter((function(r){return r.sportId===String(e.leagueId)})),T=Ee(!o,A,E,r,e.leagueId,L,a);T.errorMessage?(e.odds=e.odds.map((function(){return{american:0,decimal:0,normalizedImplied:0}})),e.errorMessage=T.errorMessage):e.odds=T.odds.filter((function(e){return 0!=e})).map((function(e){return{american:n("impliedProbability",e).to("moneyline"),decimal:n("impliedProbability",e).to("decimal"),normalizedImplied:e}}));var _=_e(e.leagueId,A,r,E,L,t).map((function(r){var E=Ae(Ae({},e),r);return E.odds.length>0&&(E.odds=E.odds.map((function(e){return 0==e?{american:0,decimal:0,normalizedImplied:0}:{american:n("impliedProbability",e).to("moneyline"),decimal:n("impliedProbability",e).to("decimal"),normalizedImplied:e}}))),E}));return e.childMarkets=_,e},_e=function(e,r,E,i,o,L){var a=[];return(a=a.concat(se(E,e,r,i,o,L))).concat(pe(E,e,r,i,o,L))},se=function(e,r,E,i,o,L){var a=[],t=f(r,L),A={homeTeam:e.home_team,awayTeam:e.away_team};if(t){var T=ie(e.odds,t,i[0]);if(T.length>0){var _=oe(T,A,r,E,j,o);a.push.apply(a,_)}}else console.warn("Spread type for sport ID ".concat(r," not found."));return a},pe=function(e,r,E,i,o,L){var a=[],t=w(r,L);if(t){var A=ie(e.odds,t,i[0]);A.length>0&&a.push.apply(a,ae(A,r,E,z,o))}else console.warn("Configuration (totals) for sport ID ".concat(r," not found."));return a},Se=function(e,r,E){var i=e.score_home_total,o=e.score_away_total,L=e.clock,a=e.period,t=e.status,T=e.home_team,_=e.away_team,s=parseInt(a),p=u(r);return"completed"==t.toLowerCase()?{allow:!1,message:"Blocking game ".concat(T," - ").concat(_," because it is no longer live.")}:p===A.BASKETBALL?Ne(T,_,s,E.get(A.BASKETBALL)):p===A.HOCKEY?Ne(T,_,s,E.get(A.HOCKEY)):p===A.BASEBALL?Ne(T,_,s,E.get(A.BASEBALL)):p===A.SOCCER?Oe(T,_,L,a,E.get(A.SOCCER)):p===A.TENNIS?Ie(e,T,_,a,i,o,r,p):p===A.VOLLEYBALL?Ie(e,T,_,s,i,o,r,p):{allow:!0,message:"The sport ".concat(r," does not have constraint")}},Ne=function(e,r,E,i){return!Number.isNaN(E)&&E>=i?{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to period: ").concat(E,". period")}:{allow:!0,message:""}},Oe=function(e,r,E,i,o){var L=Number(E);return!Number.isNaN(L)&&L>=o||Number.isNaN(L)&&"HALF"!=i?{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to clock: ").concat(E,"min")}:{allow:!0,message:""}},Ie=function(e,r,E,i,o,L,a,t){var _=Number(i),s=le(_,e),p="atp"==e.league.toLowerCase(),S={home:o,away:L};return t==A.VOLLEYBALL?ne(r,E,s,S,Re,5==_?Pe:de):a.toString().startsWith(T.TENNIS_GS)&&p?ne(r,E,s,S,Me,ce):a.toString().startsWith(T.TENNIS_GS)&&!p||a.toString().startsWith(T.TENNIS_MASTERS)||a.toString().startsWith(T.SUMMER_OLYMPICS_TENNIS)||a.toString().startsWith(T.TENNIS_WTA)?ne(r,E,s,S,ye,ce):{allow:!0,message:"The sport ".concat(a," does not have result constraint")}},le=function(e,r){var E=0,i=0;switch(e){case 1:E=Number(r.score_home_period_1),i=Number(r.score_away_period_1);break;case 2:E=Number(r.score_home_period_2),i=Number(r.score_away_period_2);break;case 3:E=Number(r.score_home_period_3),i=Number(r.score_away_period_3);break;case 4:E=Number(r.score_home_period_4),i=Number(r.score_away_period_4);break;case 5:E=Number(r.score_home_period_5),i=Number(r.score_away_period_5)}return{home:E,away:i}},ne=function(e,r,E,i,o,L){return Number(i.home)!=o&&Number(i.away)!=o||!(Number(i.home)==o&&E.home>=L||Number(i.away)==o&&E.away>=L)?{allow:!0,message:"",currentHomeGameScore:E.home,currentAwayGameScore:E.away}:{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to current result: ").concat(i.home," - ").concat(i.away," (").concat(E.home," - ").concat(E.away,")")}},Re=2,de=20,Pe=10,Me=2,ye=1,ce=5;return r})()));
1
+ !function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.thalesUtils=r():e.thalesUtils=r()}(this,(()=>(()=>{"use strict";var e={d:(r,a)=>{for(var E in a)e.o(a,E)&&!e.o(r,E)&&Object.defineProperty(r,E,{enumerable:!0,get:a[E]})},o:(e,r)=>Object.prototype.hasOwnProperty.call(e,r),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},r={};e.r(r),e.d(r,{AMERICAN_LEAGUES:()=>C,DRAW:()=>K,LEAGUES_NO_FORMAL_HOME_AWAY:()=>M,LEAGUES_NO_LIVE_CONSTRAINTS:()=>U,League:()=>t,LeagueIdMapEnetpulse:()=>G,LeagueIdMapOpticOdds:()=>y,LeagueIdMapRundown:()=>m,LeagueMap:()=>c,MIN_ODDS_FOR_DIFF_CHECKING:()=>j,MONEYLINE_TYPE_ID:()=>Q,MULTIPLIER_100:()=>Z,MatchResolveType:()=>T,MoneylineTypes:()=>S,PeriodType:()=>N,Provider:()=>I,ScoringType:()=>s,Sport:()=>L,SpreadTypes:()=>p,TAG_CHILD_SPREAD:()=>X,TAG_CHILD_TOTALS:()=>z,TotalTypes:()=>l,UFC_LEAGUE_IDS:()=>u,ZERO:()=>k,adjustSpreadOnChildOdds:()=>Le,adjustSpreadOnOdds:()=>x,allowGameSportWithPeriodConstraint:()=>le,allowGameSportWithResultConstraint:()=>Te,allowSoccerGame:()=>se,calculateImpliedOddsDifference:()=>P,checkGameContraints:()=>pe,checkOddsFromBookmakers:()=>R,createChildMarkets:()=>ie,fetchResultInCurrentSet:()=>Ne,filterOddsByMarketNameBookmaker:()=>oe,filterOddsByMarketNameTeamNameBookmaker:()=>ae,gamesDatesMatching:()=>W,getBetTypesForLeague:()=>h,getBookmakersArray:()=>O,getLeagueInfo:()=>B,getLeagueIsDrawAvailable:()=>b,getLeagueLabel:()=>D,getLeagueOpticOddsName:()=>V,getLeaguePeriodType:()=>w,getLeagueProvider:()=>g,getLeagueSport:()=>v,getLeagueSpreadTypes:()=>f,getLeagueTotalTypes:()=>Y,getLiveSupportedLeagues:()=>F,getParentOdds:()=>Ee,getSpreadData:()=>J,groupAndFormatSpreadOdds:()=>Ae,groupAndFormatTotalOdds:()=>_e,processMarket:()=>Se,teamNamesMatching:()=>H}),"function"!=typeof Object.assign&&(Object.assign=function(e,r){if(null==e)throw new TypeError("Cannot convert undefined or null to object");for(var a=Object(e),E=1;E<arguments.length;E++){var i=arguments[E];if(null!=i)for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(a[o]=i[o])}return a});var a=function(e){return parseFloat(e.toPrecision(12))};function E(e,r,a){return void 0===a||0==+a?Math[e](r):(r=+r,a=+a,isNaN(r)||"number"!=typeof a||a%1!=0?NaN:r<0?-E(e,-r,a):(r=r.toString().split("e"),+((r=(r=Math[e](+(r[0]+"e"+(r[1]?+r[1]-a:-a)))).toString().split("e"))[0]+"e"+(r[1]?+r[1]+a:a))))}var i,o,A={decimal:{from:function(e){if((e=parseFloat(e))<=1)throw new Error("Outside valid range.");return e},to:function(){return this.decimalValue}},moneyline:{from:function(e){return(e=parseFloat(e))>=0?e/100+1:100/-e+1},to:function(){return this.decimalValue>=2?a(100*(this.decimalValue-1)):a(-100/(this.decimalValue-1))}},hongKong:{from:function(e){if((e=parseFloat(e))<0)throw new Error("Outside valid range.");return e+1},to:function(){return a(this.decimalValue-1)}},impliedProbability:{from:function(e){if((e="string"==typeof e&&"%"==e.slice(-1)?parseFloat(e)/100:parseFloat(e))<=0||e>=1)throw new Error("Outside valid range");return 1/e},to:function(e){if(e.percentage){var r=a(100/this.decimalValue);return null!==e.precision&&(r=E("round",r,-e.precision)),r.toString()+"%"}return a(1/this.decimalValue)}},fractional:{from:function(e){var r,a=e.toString().split("/");if(e=parseFloat(a[0]),2===a.length)r=parseFloat(a[1]);else{if(1!==a.length)throw new Error("Invalid fraction");r=1}if(0===e||0===r||e/r<=0)throw new Error("Outside valid range");return 1+e/r},to:function(e){return function(e,r){for(var a,E=[0,1],i=[1,0],o=function(e){var r=null,a=e.toString().indexOf("E");-1==a&&(a=e.toString().indexOf("e"));var E=null,i=(r=-1==a?e.toString():e.toString().substring(0,a)).toString().indexOf(".");-1==i?E=r:0===i?E=r.substring(1,r.length):i<r.length&&(E=r.substring(0,i)+r.substring(i+1,r.length));var o=E,A=o.toString().length,_=e,L=_.toString().length;0===_&&(L=0);var t,S=A-L;for(t=S;t>0&&o%2==0;t--)o/=2;for(t=S;t>0&&o%5==0;t--)o/=5;return o}(e),A=e,_=Math.pow(10,-r)/2,L=2;L<1e3;L++){var t=Math.floor(A);if(E[L]=t*E[L-1]+E[L-2],Math.abs(E[L])>o)return;if(i[L]=t*i[L-1]+i[L-2],a=E[L]/i[L],Math.abs(a-e)<_||NaN==a)return E[L].toString()+"/"+i[L].toString();A=1/(A-t)}}(this.decimalValue-1,e.precision||12)}},malay:{from:function(e){if((e=parseFloat(e))<=-1||e>1)throw new Error("Outside valid range.");return e<0&&(e=-1/e),e+1},to:function(){return this.decimalValue<=2?a(this.decimalValue-1):a(-1/(this.decimalValue-1))}},indonesian:{from:function(e){if(0===(e=parseFloat(e)))throw new Error("Outside valid range.");return e>=1?e+1:-1/e+1},to:function(){return this.decimalValue<2?a(-1/(this.decimalValue-1)):a(this.decimalValue-1)}}},_=((o=function(e){if("number"!=typeof e||isNaN(e))throw new Error("Invalid odds");this.decimalValue=a(e)}).prototype=(i=function(){throw new Error("This constructor is private, please use the from* functions")}).prototype,i.from=function(e,r){if(!A.hasOwnProperty(e))throw new Error("Unknown format "+e+".");var a=A[e].from(r);return new o(a)},i);_.prototype.to=function(e,r){if(!A.hasOwnProperty(e))throw new Error("Unknown format "+e+".");r=Object.assign({precision:null,percentage:!1},r);var a=A[e].to.call(this,r);return"number"==typeof a&&null!==r.precision&&(a=E("round",a,-r.precision)),a};var L,t,S,p,l,s,T,N,I,n,d=_.from,O=function(e,r,a){var E=e.find((function(e){return Number(e.sportId)===Number(r)}));if(E){if(""==E.primaryBookmaker)return a;var i=[];return E.primaryBookmaker&&i.push(E.primaryBookmaker),E.secondaryBookmaker&&i.push(E.secondaryBookmaker),E.tertiaryBookmaker&&i.push(E.tertiaryBookmaker),i}return a},R=function(e,r,a,E,i){var o=e.get(r[0]);if(!o)return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds cause no matching bookmakers have been found"};var A=o.homeOdds,_=o.awayOdds,L=a?0:o.drawOdds;if(r.some((function(r){var E=e.get(r);return!!E&&(0===E.homeOdds||0===E.awayOdds||!a&&0===E.drawOdds||1===E.homeOdds||1===E.awayOdds||!a&&1===E.drawOdds)})))return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds cause bookmakers have 0 or 1 odds"};if(1==r.length)return{homeOdds:A,awayOdds:_,drawOdds:a?0:L};if(r.slice(1).some((function(r){var o=e[r];if(o){var t=o.homeOdds,S=o.awayOdds,p=o.drawOdds,l=d("decimal",A).to("impliedProbability"),s=d("decimal",_).to("impliedProbability"),T=a?0:d("decimal",L).to("impliedProbability"),N=d("decimal",t).to("impliedProbability"),I=d("decimal",S).to("impliedProbability"),n=a?0:d("decimal",p).to("impliedProbability"),O=P(l,N),R=P(s,I),c=a?0:P(T,n);if(O>E&&l>i&&N>i||R>E&&s>i&&I>i||!a&&c>E&&T>i&&n>i)return!0}return!1})))return{homeOdds:0,awayOdds:0,drawOdds:0,errorMessage:"Returning zero odds due to percentage difference between bookmakers"};var t=[];return r.forEach((function(r){return t.push(e.get(r))})),{homeOdds:A,awayOdds:_,drawOdds:a?0:L}},P=function(e,r){var a=Math.abs(e-r)/e*100;return console.log("% diff: "+a),a};!function(e){e.SOCCER="Soccer",e.FOOTBALL="Football",e.BASKETBALL="Basketball",e.BASEBALL="Baseball",e.HOCKEY="Hockey",e.FIGHTING="Fighting",e.TENNIS="Tennis",e.ESPORTS="eSports",e.RUGBY="Rugby",e.VOLLEYBALL="Volleyball",e.HANDBALL="Handball",e.WATERPOLO="Waterpolo",e.CRICKET="Cricket",e.MOTOSPORT="Motosport",e.GOLF="Golf",e.TABLE_TENNIS="TableTennis",e.POLITICS="Politics",e.FUTURES="Futures",e.EMPTY=""}(L||(L={})),function(e){e[e.NCAAF=1]="NCAAF",e[e.NFL=2]="NFL",e[e.MLB=3]="MLB",e[e.NBA=4]="NBA",e[e.NCAAB=5]="NCAAB",e[e.NHL=6]="NHL",e[e.UFC=7]="UFC",e[e.WNBA=8]="WNBA",e[e.MLS=10]="MLS",e[e.EPL=11]="EPL",e[e.LIGUE_ONE=12]="LIGUE_ONE",e[e.BUNDESLIGA=13]="BUNDESLIGA",e[e.LA_LIGA=14]="LA_LIGA",e[e.SERIE_A=15]="SERIE_A",e[e.UEFA_CL=16]="UEFA_CL",e[e.UEFA_EL=17]="UEFA_EL",e[e.FIFA_WC=18]="FIFA_WC",e[e.J1_LEAGUE=19]="J1_LEAGUE",e[e.IPL=20]="IPL",e[e.T20_BLAST=21]="T20_BLAST",e[e.IIHF_WORLD_CHAMPIONSHIP=33]="IIHF_WORLD_CHAMPIONSHIP",e[e.COPA_AMERICA=44]="COPA_AMERICA",e[e.COPA_LIBERTADORES=45]="COPA_LIBERTADORES",e[e.UEFA_EURO=50]="UEFA_EURO",e[e.EREDIVISIE=57]="EREDIVISIE",e[e.PRIMEIRA_LIGA=61]="PRIMEIRA_LIGA",e[e.SUMMER_OLYMPICS_SOCCER_WOMEN=65]="SUMMER_OLYMPICS_SOCCER_WOMEN",e[e.SUMMER_OLYMPICS_SOCCER=66]="SUMMER_OLYMPICS_SOCCER",e[e.FIFA_WC_WOMEN=76]="FIFA_WC_WOMEN",e[e.ENGLAND_CUP=132]="ENGLAND_CUP",e[e.FRANCE_CUP=134]="FRANCE_CUP",e[e.SPAIN_CUP=138]="SPAIN_CUP",e[e.ITALY_CUP=141]="ITALY_CUP",e[e.TENNIS_WTA=152]="TENNIS_WTA",e[e.TENNIS_GS=153]="TENNIS_GS",e[e.TENNIS_MASTERS=156]="TENNIS_MASTERS",e[e.SUMMER_OLYMPICS_TENNIS=158]="SUMMER_OLYMPICS_TENNIS",e[e.GERMANY_CUP=209]="GERMANY_CUP",e[e.LIGA_MX=230]="LIGA_MX",e[e.BRAZIL_1=268]="BRAZIL_1",e[e.UEFA_EURO_U21=288]="UEFA_EURO_U21",e[e.FIFA_WORLD_CUP_U20=296]="FIFA_WORLD_CUP_U20",e[e.SUMMER_OLYMPICS_HANDBALL_WOMEN=380]="SUMMER_OLYMPICS_HANDBALL_WOMEN",e[e.SUMMER_OLYMPICS_HANDBALL=381]="SUMMER_OLYMPICS_HANDBALL",e[e.EUROLEAGUE=399]="EUROLEAGUE",e[e.SUMMER_OLYMPICS_BASKETBALL=406]="SUMMER_OLYMPICS_BASKETBALL",e[e.SUMMER_OLYMPICS_BASKETBALL_WOMEN=407]="SUMMER_OLYMPICS_BASKETBALL_WOMEN",e[e.FIBA_WORLD_CUP=409]="FIBA_WORLD_CUP",e[e.FORMULA1=445]="FORMULA1",e[e.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN=453]="SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN",e[e.SUMMER_OLYMPICS_BEACH_VOLEYBALL=454]="SUMMER_OLYMPICS_BEACH_VOLEYBALL",e[e.MOTOGP=497]="MOTOGP",e[e.SAUDI_PROFESSIONAL_LEAGUE=536]="SAUDI_PROFESSIONAL_LEAGUE",e[e.SUMMER_OLYMPICS_WATERPOLO=8881]="SUMMER_OLYMPICS_WATERPOLO",e[e.SUMMER_OLYMPICS_VOLEYBALL_WOMEN=8893]="SUMMER_OLYMPICS_VOLEYBALL_WOMEN",e[e.SUMMER_OLYMPICS_VOLEYBALL=8894]="SUMMER_OLYMPICS_VOLEYBALL",e[e.SUMMER_OLYMPICS_TABLE_TENNIS=8910]="SUMMER_OLYMPICS_TABLE_TENNIS",e[e.BOXING=9196]="BOXING",e[e.SUMMER_OLYMPICS_RUGBY=9578]="SUMMER_OLYMPICS_RUGBY",e[e.SUMMER_OLYMPICS_RUGBY_WOMEN=9588]="SUMMER_OLYMPICS_RUGBY_WOMEN",e[e.SUMMER_OLYMPICS_HOCKEY_WOMEN=9698]="SUMMER_OLYMPICS_HOCKEY_WOMEN",e[e.SUMMER_OLYMPICS_HOCKEY=9699]="SUMMER_OLYMPICS_HOCKEY",e[e.UEFA_NATIONS_LEAGUE=9806]="UEFA_NATIONS_LEAGUE",e[e.CONCACAF_NATIONS_LEAGUE=9821]="CONCACAF_NATIONS_LEAGUE",e[e.CSGO=9977]="CSGO",e[e.DOTA2=9983]="DOTA2",e[e.SUMMER_OLYMPICS_BASKETBALL_3X3=10071]="SUMMER_OLYMPICS_BASKETBALL_3X3",e[e.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN=10072]="SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN",e[e.SUMMER_OLYMPICS_QUALIFICATION=10502]="SUMMER_OLYMPICS_QUALIFICATION",e[e.LOL=10138]="LOL",e[e.CONMEBOL_WC_QUALIFICATIONS=10199]="CONMEBOL_WC_QUALIFICATIONS",e[e.UEFA_CONFERENCE_LEAGUE=10216]="UEFA_CONFERENCE_LEAGUE",e[e.NON_TITLE_BOXING=10595]="NON_TITLE_BOXING",e[e.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION=10611]="UEFA_CHAMPIONS_LEAGUE_QUALIFICATION",e[e.UEFA_EUROPA_LEAGUE_QUALIFICATION=10613]="UEFA_EUROPA_LEAGUE_QUALIFICATION",e[e.UEFA_CONFERENCE_LEAGUE_QUALIFICATION=10615]="UEFA_CONFERENCE_LEAGUE_QUALIFICATION",e[e.US_ELECTION=2e4]="US_ELECTION",e[e.UEFA_SUPER_CUP=20001]="UEFA_SUPER_CUP",e[e.BRAZIL_CUP=20002]="BRAZIL_CUP",e[e.ENGLAND_CHAMPIONSHIP=20011]="ENGLAND_CHAMPIONSHIP",e[e.SCOTLAND_PREMIERSHIP=20101]="SCOTLAND_PREMIERSHIP",e[e.BELGIUM_LEAGUE=20102]="BELGIUM_LEAGUE",e[e.CZECH_LEAGUE=20103]="CZECH_LEAGUE",e[e.CHILE_PRIMERA=20104]="CHILE_PRIMERA",e[e.FINLAND_LEAGUE=20105]="FINLAND_LEAGUE",e[e.ARGENTINA_PRIMERA=20106]="ARGENTINA_PRIMERA",e[e.RUSSIA_PREMIER=20107]="RUSSIA_PREMIER",e[e.TURKEY_SUPER_LEAGUE=20108]="TURKEY_SUPER_LEAGUE",e[e.SERBIA_SUPER_LEAGUE=20109]="SERBIA_SUPER_LEAGUE",e[e.GREECE_SUPER_LEAGUE=20110]="GREECE_SUPER_LEAGUE",e[e.INDIA_PREMIER=20111]="INDIA_PREMIER",e[e.CHINA_SUPER_LEAGUE=20112]="CHINA_SUPER_LEAGUE",e[e.AUSTRALIA_A_LEAGUE=20113]="AUSTRALIA_A_LEAGUE",e[e.SWITZERLAND_SUPER_LEAGUE=20114]="SWITZERLAND_SUPER_LEAGUE",e[e.BUNDESLIGA_2=20115]="BUNDESLIGA_2",e[e.LA_LIGA_2=20116]="LA_LIGA_2",e[e.SERIE_B=20117]="SERIE_B",e[e.INDIA_SUPER_LEAGUE=20118]="INDIA_SUPER_LEAGUE",e[e.LIGUE_2=20119]="LIGUE_2",e[e.AUSTRIA_BUNDESLIGA=20120]="AUSTRIA_BUNDESLIGA",e[e.DENMARK_SUPER_LEAGUE=20121]="DENMARK_SUPER_LEAGUE",e[e.POLAND_LEAGUE=20122]="POLAND_LEAGUE",e[e.SWEDEN_LEAGUE=20123]="SWEDEN_LEAGUE",e[e.COLOMBIA_PRIMERA_A=20124]="COLOMBIA_PRIMERA_A",e[e.ENGLAND_EFL_CUP=20125]="ENGLAND_EFL_CUP",e[e.ENGLAND_LEGAUE_1=20126]="ENGLAND_LEGAUE_1",e[e.URUGUAY_PRIMERA_DIVISION=20127]="URUGUAY_PRIMERA_DIVISION",e[e.EUROCUP=20200]="EUROCUP",e[e.NFL_FUTURES=30002]="NFL_FUTURES",e[e.NBA_FUTURES=30004]="NBA_FUTURES",e[e.EPL_FUTURES=30011]="EPL_FUTURES",e[e.GOLF_H2H=100021]="GOLF_H2H",e[e.GOLF_WINNER=100121]="GOLF_WINNER",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1=15312]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2=15313]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3=15314]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4=15315]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5=15316]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6=15317]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6",e[e.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7=15318]="TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_1=15622]="TENNIS_MASTERS_LIVE_MAPPING_V2_1",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_2=15623]="TENNIS_MASTERS_LIVE_MAPPING_V2_2",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_3=15624]="TENNIS_MASTERS_LIVE_MAPPING_V2_3",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_4=15625]="TENNIS_MASTERS_LIVE_MAPPING_V2_4",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_5=15626]="TENNIS_MASTERS_LIVE_MAPPING_V2_5",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_6=15627]="TENNIS_MASTERS_LIVE_MAPPING_V2_6",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_7=15628]="TENNIS_MASTERS_LIVE_MAPPING_V2_7",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_8=15632]="TENNIS_MASTERS_LIVE_MAPPING_V2_8",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_9=15633]="TENNIS_MASTERS_LIVE_MAPPING_V2_9",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_10=15634]="TENNIS_MASTERS_LIVE_MAPPING_V2_10",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_11=15635]="TENNIS_MASTERS_LIVE_MAPPING_V2_11",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_12=15636]="TENNIS_MASTERS_LIVE_MAPPING_V2_12",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_13=15637]="TENNIS_MASTERS_LIVE_MAPPING_V2_13",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_14=15638]="TENNIS_MASTERS_LIVE_MAPPING_V2_14",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_15=15641]="TENNIS_MASTERS_LIVE_MAPPING_V2_15",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_16=15642]="TENNIS_MASTERS_LIVE_MAPPING_V2_16",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_17=15643]="TENNIS_MASTERS_LIVE_MAPPING_V2_17",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_18=15644]="TENNIS_MASTERS_LIVE_MAPPING_V2_18",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_19=15645]="TENNIS_MASTERS_LIVE_MAPPING_V2_19",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_20=15646]="TENNIS_MASTERS_LIVE_MAPPING_V2_20",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_21=15647]="TENNIS_MASTERS_LIVE_MAPPING_V2_21",e[e.TENNIS_MASTERS_LIVE_MAPPING_V2_22=15648]="TENNIS_MASTERS_LIVE_MAPPING_V2_22",e[e.TENNIS_WTA_LIVE_MAPPING_V2_1=15322]="TENNIS_WTA_LIVE_MAPPING_V2_1",e[e.TENNIS_WTA_LIVE_MAPPING_V2_2=15323]="TENNIS_WTA_LIVE_MAPPING_V2_2",e[e.TENNIS_WTA_LIVE_MAPPING_V2_3=15324]="TENNIS_WTA_LIVE_MAPPING_V2_3",e[e.TENNIS_WTA_LIVE_MAPPING_V2_4=15325]="TENNIS_WTA_LIVE_MAPPING_V2_4",e[e.TENNIS_WTA_LIVE_MAPPING_V2_5=15326]="TENNIS_WTA_LIVE_MAPPING_V2_5",e[e.TENNIS_WTA_LIVE_MAPPING_V2_6=15327]="TENNIS_WTA_LIVE_MAPPING_V2_6",e[e.TENNIS_WTA_LIVE_MAPPING_V2_7=15328]="TENNIS_WTA_LIVE_MAPPING_V2_7"}(t||(t={})),function(e){e.MONEYLINE="Moneyline"}(S||(S={})),function(e){e.ASIAN_HANDICAP="Asian Handicap",e.GAME_SPREAD="Game Spread",e.POINT_SPREAD="Point Spread",e.GOAL_SPREAD="Goal Spread",e.RUN_LINE="Run Line",e.PUCK_LINE="Puck Line"}(p||(p={})),function(e){e.TOTAL_GAMES="Total Games",e.TOTAL_GOALS="Total Goals",e.TOTAL_POINTS="Total Points",e.TOTAL_RUNS="Total Runs"}(l||(l={})),function(e){e.POINTS="points",e.GOALS="goals",e.ROUNDS="rounds",e.SETS="sets",e.EMPTY=""}(s||(s={})),function(e){e.OVERTIME="overtime",e.REGULAR="regular",e.EMPTY=""}(T||(T={})),function(e){e.QUARTER="quarter",e.HALF="half",e.PERIOD="period",e.ROUND="round",e.INNING="inning",e.SET="set",e.EMPTY=""}(N||(N={})),function(e){e.RUNDOWN="rundown",e.ENETPULSE="enetpulse",e.JSONODDS="jsonOdds",e.OPTICODDS="opticOdds",e.EMPTY=""}(I||(I={}));var c=((n={})[t.NCAAF]={sport:L.FOOTBALL,id:t.NCAAF,label:"NCAA Football",opticOddsName:"NCAAF",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.NFL]={sport:L.FOOTBALL,id:t.NFL,label:"NFL",opticOddsName:"NFL",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.MLB]={sport:L.BASEBALL,id:t.MLB,label:"MLB",opticOddsName:"MLB",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.INNING,isDrawAvailable:!1},n[t.NBA]={sport:L.BASKETBALL,id:t.NBA,label:"NBA",opticOddsName:"NBA",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.NCAAB]={sport:L.BASKETBALL,id:t.NCAAB,label:"NCAA Basketball",provider:I.RUNDOWN,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.NHL]={sport:L.HOCKEY,id:t.NHL,label:"NHL",opticOddsName:"NHL",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.OVERTIME,periodType:N.PERIOD,isDrawAvailable:!1},n[t.UFC]={sport:L.FIGHTING,id:t.UFC,label:"UFC",provider:I.OPTICODDS,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.WNBA]={sport:L.BASKETBALL,id:t.WNBA,label:"WNBA",opticOddsName:"WNBA",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.MLS]={sport:L.SOCCER,id:t.MLS,label:"MLS",opticOddsName:"USA - Major League Soccer",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.EPL]={sport:L.SOCCER,id:t.EPL,label:"EPL",opticOddsName:"England - Premier League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.LIGUE_ONE]={sport:L.SOCCER,id:t.LIGUE_ONE,label:"Ligue 1",opticOddsName:"France - Ligue 1",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.BUNDESLIGA]={sport:L.SOCCER,id:t.BUNDESLIGA,label:"Bundesliga",opticOddsName:"Germany - Bundesliga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.LA_LIGA]={sport:L.SOCCER,id:t.LA_LIGA,label:"La Liga",opticOddsName:"Spain - La Liga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SERIE_A]={sport:L.SOCCER,id:t.SERIE_A,label:"Serie A",opticOddsName:"Italy - Serie A",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_CL]={sport:L.SOCCER,id:t.UEFA_CL,label:"UEFA Champions League",opticOddsName:"UEFA - Champions League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_EL]={sport:L.SOCCER,id:t.UEFA_EL,label:"UEFA Europa League",opticOddsName:"UEFA - Europa League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.FIFA_WC]={sport:L.SOCCER,id:t.FIFA_WC,label:"FIFA World Cup Qualifiers",provider:I.OPTICODDS,opticOddsName:"FIFA - World Cup Qualifiers",scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.J1_LEAGUE]={sport:L.SOCCER,id:t.J1_LEAGUE,label:"J1 League",opticOddsName:"Japan - J1 League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.IPL]={sport:L.CRICKET,id:t.IPL,label:"Indian Premier League",provider:I.RUNDOWN,scoringType:s.POINTS,matchResolveType:T.EMPTY,periodType:N.INNING,isDrawAvailable:!1},n[t.T20_BLAST]={sport:L.CRICKET,id:t.T20_BLAST,label:"T20 Blast",provider:I.RUNDOWN,scoringType:s.POINTS,matchResolveType:T.EMPTY,periodType:N.INNING,isDrawAvailable:!1},n[t.IIHF_WORLD_CHAMPIONSHIP]={sport:L.HOCKEY,id:t.IIHF_WORLD_CHAMPIONSHIP,label:"IIHF World Championship",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.PERIOD,isDrawAvailable:!0},n[t.COPA_AMERICA]={sport:L.SOCCER,id:t.COPA_AMERICA,label:"Copa America",opticOddsName:"CONMEBOL - Copa America",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.COPA_LIBERTADORES]={sport:L.SOCCER,id:t.COPA_LIBERTADORES,label:"Copa Libertadores",opticOddsName:"CONMEBOL - Copa Libertadores",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_EURO]={sport:L.SOCCER,id:t.UEFA_EURO,label:"UEFA EURO 2024",opticOddsName:"UEFA - European Championship",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.EREDIVISIE]={sport:L.SOCCER,id:t.EREDIVISIE,label:"Eredivisie",opticOddsName:"Netherlands - Eredivisie",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.PRIMEIRA_LIGA]={sport:L.SOCCER,id:t.PRIMEIRA_LIGA,label:"Primeira Liga",opticOddsName:"Portugal - Primeira Liga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_SOCCER_WOMEN]={sport:L.SOCCER,id:t.SUMMER_OLYMPICS_SOCCER_WOMEN,label:"Olympic Games Soccer Women",opticOddsName:"Olympics Soccer Women",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_SOCCER]={sport:L.SOCCER,id:t.SUMMER_OLYMPICS_SOCCER,label:"Olympic Games Soccer",opticOddsName:"Olympics Soccer Men",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.FIFA_WC_WOMEN]={sport:L.SOCCER,id:t.FIFA_WC_WOMEN,label:"FIFA World Cup Women",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ENGLAND_CUP]={sport:L.SOCCER,id:t.ENGLAND_CUP,label:"FA Cup",opticOddsName:"England - FA Cup",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.FRANCE_CUP]={sport:L.SOCCER,id:t.FRANCE_CUP,label:"Coupe de France",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SPAIN_CUP]={sport:L.SOCCER,id:t.SPAIN_CUP,label:"Copa del Rey",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ITALY_CUP]={sport:L.SOCCER,id:t.ITALY_CUP,label:"Coppa Italia",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.TENNIS_WTA]={sport:L.TENNIS,id:t.TENNIS_WTA,label:"WTA Events",opticOddsName:"WTA",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.TENNIS_GS]={sport:L.TENNIS,id:t.TENNIS_GS,label:"Grand Slam",opticOddsName:"ATP,WTA",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.TENNIS_MASTERS]={sport:L.TENNIS,id:t.TENNIS_MASTERS,label:"ATP Events",opticOddsName:"ATP",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_TENNIS]={sport:L.TENNIS,id:t.SUMMER_OLYMPICS_TENNIS,label:"Olympic Games Tennis",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.GERMANY_CUP]={sport:L.SOCCER,id:t.GERMANY_CUP,label:"DFB Pokal",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.LIGA_MX]={sport:L.SOCCER,id:t.LIGA_MX,label:"Liga MX",opticOddsName:"Mexico - Liga MX",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.BRAZIL_1]={sport:L.SOCCER,id:t.BRAZIL_1,label:"Serie A",opticOddsName:"Brazil - Serie A",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_EURO_U21]={sport:L.SOCCER,id:t.UEFA_EURO_U21,label:"UEFA EURO U21",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.FIFA_WORLD_CUP_U20]={sport:L.SOCCER,id:t.FIFA_WORLD_CUP_U20,label:"FIFA World Cup U20",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_HANDBALL_WOMEN]={sport:L.HANDBALL,id:t.SUMMER_OLYMPICS_HANDBALL_WOMEN,label:"Olympic Games Handball Women",opticOddsName:"Olympics Handball Women",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_HANDBALL]={sport:L.HANDBALL,id:t.SUMMER_OLYMPICS_HANDBALL,label:"Olympic Games Handball",opticOddsName:"Olympics Handball Men",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.EUROLEAGUE]={sport:L.BASKETBALL,id:t.EUROLEAGUE,label:"Euroleague",opticOddsName:"Euroleague",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BASKETBALL]={sport:L.BASKETBALL,id:t.SUMMER_OLYMPICS_BASKETBALL,label:"Olympic Games Basketball",opticOddsName:"Olympics Basketball Men",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BASKETBALL_WOMEN]={sport:L.BASKETBALL,id:t.SUMMER_OLYMPICS_BASKETBALL_WOMEN,label:"Olympic Games Basketball Women",opticOddsName:"Olympics Basketball Women",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.FIBA_WORLD_CUP]={sport:L.BASKETBALL,id:t.FIBA_WORLD_CUP,label:"FIBA World Cup",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.FORMULA1]={sport:L.MOTOSPORT,id:t.FORMULA1,label:"Formula 1",provider:I.ENETPULSE,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN]={sport:L.VOLLEYBALL,id:t.SUMMER_OLYMPICS_BEACH_VOLEYBALL_WOMEN,label:"Olympic Games Beach Voleyball Women",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BEACH_VOLEYBALL]={sport:L.VOLLEYBALL,id:t.SUMMER_OLYMPICS_BEACH_VOLEYBALL,label:"Olympic Games Beach Voleyball",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_TABLE_TENNIS]={sport:L.TABLE_TENNIS,id:t.SUMMER_OLYMPICS_TABLE_TENNIS,label:"Olympic Games Table Tennis",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.MOTOGP]={sport:L.MOTOSPORT,id:t.MOTOGP,label:"MotoGP",provider:I.ENETPULSE,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.SAUDI_PROFESSIONAL_LEAGUE]={sport:L.SOCCER,id:t.SAUDI_PROFESSIONAL_LEAGUE,label:"Saudi Professional League",opticOddsName:"Saudi Arabia - Saudi League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_WATERPOLO]={sport:L.WATERPOLO,id:t.SUMMER_OLYMPICS_WATERPOLO,label:"Olympic Games Water Polo",opticOddsName:"Olympics Water Polo",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.QUARTER,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_VOLEYBALL_WOMEN]={sport:L.VOLLEYBALL,id:t.SUMMER_OLYMPICS_VOLEYBALL_WOMEN,label:"Olympic Games Volleyball Women",opticOddsName:"Olympics Volleyball Women",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_VOLEYBALL]={sport:L.VOLLEYBALL,id:t.SUMMER_OLYMPICS_VOLEYBALL,label:"Olympic Games Volleyball",opticOddsName:"Olympics Volleyball Men",provider:I.ENETPULSE,scoringType:s.SETS,matchResolveType:T.REGULAR,periodType:N.SET,isDrawAvailable:!1},n[t.BOXING]={sport:L.FIGHTING,id:t.BOXING,label:"Boxing",provider:I.ENETPULSE,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_RUGBY]={sport:L.RUGBY,id:t.SUMMER_OLYMPICS_RUGBY,label:"Olympic Games Rugby",opticOddsName:"Olympics Rugby 7s Men",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_RUGBY_WOMEN]={sport:L.RUGBY,id:t.SUMMER_OLYMPICS_RUGBY_WOMEN,label:"Olympic Games Rugby Women",opticOddsName:"Olympics Rugby 7s Women",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_HOCKEY_WOMEN]={sport:L.HOCKEY,id:t.SUMMER_OLYMPICS_HOCKEY_WOMEN,label:"Olympic Games Hockey Women",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.PERIOD,isDrawAvailable:!0},n[t.SUMMER_OLYMPICS_HOCKEY]={sport:L.HOCKEY,id:t.SUMMER_OLYMPICS_HOCKEY,label:"Olympic Games Hockey",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.PERIOD,isDrawAvailable:!0},n[t.UEFA_NATIONS_LEAGUE]={sport:L.SOCCER,id:t.UEFA_NATIONS_LEAGUE,label:"UEFA Nations League",provider:I.OPTICODDS,opticOddsName:"UEFA - Nations League",scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.CONCACAF_NATIONS_LEAGUE]={sport:L.SOCCER,id:t.CONCACAF_NATIONS_LEAGUE,label:"CONCACAF Nations League",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.CSGO]={sport:L.ESPORTS,id:t.CSGO,label:"CS GO",opticOddsName:"CS2",provider:I.ENETPULSE,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.DOTA2]={sport:L.ESPORTS,id:t.DOTA2,label:"DOTA 2",opticOddsName:"Dota 2",provider:I.ENETPULSE,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BASKETBALL_3X3]={sport:L.BASKETBALL,id:t.SUMMER_OLYMPICS_BASKETBALL_3X3,label:"Olympic Games Basketball 3x3",opticOddsName:"Olympics Basketball 3x3 Men",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN]={sport:L.BASKETBALL,id:t.SUMMER_OLYMPICS_BASKETBALL_3X3_WOMEN,label:"Olympic Games Basketball 3x3 Women",opticOddsName:"Olympics Basketball 3x3 Women",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.SUMMER_OLYMPICS_QUALIFICATION]={sport:L.BASKETBALL,id:t.SUMMER_OLYMPICS_QUALIFICATION,label:"Summer Olympics Basketball Qualification",provider:I.ENETPULSE,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.LOL]={sport:L.ESPORTS,id:t.LOL,label:"LOL",opticOddsName:"League of Legends",provider:I.ENETPULSE,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.CONMEBOL_WC_QUALIFICATIONS]={sport:L.SOCCER,id:t.CONMEBOL_WC_QUALIFICATIONS,label:"CONMEBOL WC Qualification",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_CONFERENCE_LEAGUE]={sport:L.SOCCER,id:t.UEFA_CONFERENCE_LEAGUE,label:"UEFA Conference League",opticOddsName:"UEFA - Europa Conference League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.NON_TITLE_BOXING]={sport:L.FIGHTING,id:t.NON_TITLE_BOXING,label:"Boxing",provider:I.ENETPULSE,scoringType:s.ROUNDS,matchResolveType:T.EMPTY,periodType:N.ROUND,isDrawAvailable:!1},n[t.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION]={sport:L.SOCCER,id:t.UEFA_CHAMPIONS_LEAGUE_QUALIFICATION,label:"UEFA Champions League Qualification",opticOddsName:"UEFA - Champions League",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_EUROPA_LEAGUE_QUALIFICATION]={sport:L.SOCCER,id:t.UEFA_EUROPA_LEAGUE_QUALIFICATION,label:"UEFA Europa League Qualification",opticOddsName:"UEFA - Europa League",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.UEFA_CONFERENCE_LEAGUE_QUALIFICATION]={sport:L.SOCCER,id:t.UEFA_CONFERENCE_LEAGUE_QUALIFICATION,label:"UEFA Conference League Qualification",opticOddsName:"UEFA - Europa Conference League",provider:I.ENETPULSE,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.US_ELECTION]={sport:L.POLITICS,id:t.US_ELECTION,label:"US Election 2024",provider:I.EMPTY,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.UEFA_SUPER_CUP]={sport:L.SOCCER,id:t.UEFA_SUPER_CUP,label:"UEFA Super Cup",opticOddsName:"UEFA - Super Cup",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.BRAZIL_CUP]={sport:L.SOCCER,id:t.BRAZIL_CUP,label:"Copa do Brasil",opticOddsName:"Brazil - Copa do Brasil",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ENGLAND_CHAMPIONSHIP]={sport:L.SOCCER,id:t.ENGLAND_CHAMPIONSHIP,label:"EFL Championship",opticOddsName:"England - Championship",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SCOTLAND_PREMIERSHIP]={sport:L.SOCCER,id:t.SCOTLAND_PREMIERSHIP,label:"Scotland Premiership",opticOddsName:"Scotland - Premiership",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.BELGIUM_LEAGUE]={sport:L.SOCCER,id:t.BELGIUM_LEAGUE,label:"Belgium Jupiler Pro League",opticOddsName:"Belgium - Jupiler Pro League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.CZECH_LEAGUE]={sport:L.SOCCER,id:t.CZECH_LEAGUE,label:"Czech Republic FNL",opticOddsName:"Czech Republic - FNL",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.CHILE_PRIMERA]={sport:L.SOCCER,id:t.CHILE_PRIMERA,label:"Chile Primera Division",opticOddsName:"Chile - Primera Division",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.FINLAND_LEAGUE]={sport:L.SOCCER,id:t.FINLAND_LEAGUE,label:"Finland Veikkausliiga",opticOddsName:"Finland - Veikkausliiga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ARGENTINA_PRIMERA]={sport:L.SOCCER,id:t.ARGENTINA_PRIMERA,label:"Argentina Primera Division",opticOddsName:"Argentina - Primera Division",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.RUSSIA_PREMIER]={sport:L.SOCCER,id:t.RUSSIA_PREMIER,label:"Russia Premier League",opticOddsName:"Russia - Premier League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.TURKEY_SUPER_LEAGUE]={sport:L.SOCCER,id:t.TURKEY_SUPER_LEAGUE,label:"Turkey Super Lig",opticOddsName:"Turkey - Super Lig",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SERBIA_SUPER_LEAGUE]={sport:L.SOCCER,id:t.SERBIA_SUPER_LEAGUE,label:"Serbia Super Liga",opticOddsName:"Serbia - Super Liga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.GREECE_SUPER_LEAGUE]={sport:L.SOCCER,id:t.GREECE_SUPER_LEAGUE,label:"Greece Super League",opticOddsName:"Greece - Super League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.INDIA_PREMIER]={sport:L.SOCCER,id:t.INDIA_PREMIER,label:"India Calcutta Premier Division",opticOddsName:"India - Calcutta Premier Division",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.CHINA_SUPER_LEAGUE]={sport:L.SOCCER,id:t.CHINA_SUPER_LEAGUE,label:"China Super League",opticOddsName:"China - Super League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.AUSTRALIA_A_LEAGUE]={sport:L.SOCCER,id:t.AUSTRALIA_A_LEAGUE,label:"Australia A-League",opticOddsName:"Australia - A-League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SWITZERLAND_SUPER_LEAGUE]={sport:L.SOCCER,id:t.SWITZERLAND_SUPER_LEAGUE,label:"Switzerland Super League",opticOddsName:"Switzerland - Super League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.BUNDESLIGA_2]={sport:L.SOCCER,id:t.BUNDESLIGA_2,label:"Bundesliga 2",opticOddsName:"Germany - Bundesliga 2",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.LA_LIGA_2]={sport:L.SOCCER,id:t.LA_LIGA_2,label:"La Liga 2",opticOddsName:"Spain - La Liga 2",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SERIE_B]={sport:L.SOCCER,id:t.SERIE_B,label:"Serie B",opticOddsName:"Italy - Serie B",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.INDIA_SUPER_LEAGUE]={sport:L.SOCCER,id:t.INDIA_SUPER_LEAGUE,label:"India Super League",opticOddsName:"India - Super League",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.LIGUE_2]={sport:L.SOCCER,id:t.LIGUE_2,label:"Ligue 2",opticOddsName:"France - Ligue 2",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.AUSTRIA_BUNDESLIGA]={sport:L.SOCCER,id:t.AUSTRIA_BUNDESLIGA,label:"Austria Bundesliga",opticOddsName:"Austria - Bundesliga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.DENMARK_SUPER_LEAGUE]={sport:L.SOCCER,id:t.DENMARK_SUPER_LEAGUE,label:"Denmark Superliga",opticOddsName:"Denmark - Superliga",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.POLAND_LEAGUE]={sport:L.SOCCER,id:t.POLAND_LEAGUE,label:"Poland Ekstraklasa",opticOddsName:"Poland - Ekstraklasa",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.SWEDEN_LEAGUE]={sport:L.SOCCER,id:t.SWEDEN_LEAGUE,label:"Sweden Allsvenskan",opticOddsName:"Sweden - Allsvenskan",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.COLOMBIA_PRIMERA_A]={sport:L.SOCCER,id:t.COLOMBIA_PRIMERA_A,label:"Colombia Primera A",opticOddsName:"Colombia - Primera A",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ENGLAND_EFL_CUP]={sport:L.SOCCER,id:t.ENGLAND_EFL_CUP,label:"England EFL Cup",opticOddsName:"England - EFL Cup",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.ENGLAND_LEGAUE_1]={sport:L.SOCCER,id:t.ENGLAND_LEGAUE_1,label:"England League 1",opticOddsName:"England - League 1",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.URUGUAY_PRIMERA_DIVISION]={sport:L.SOCCER,id:t.URUGUAY_PRIMERA_DIVISION,label:"Uruguay Primera Division",opticOddsName:"Uruguay - Primera Division",provider:I.OPTICODDS,scoringType:s.GOALS,matchResolveType:T.REGULAR,periodType:N.HALF,isDrawAvailable:!0},n[t.EUROCUP]={sport:L.BASKETBALL,id:t.EUROCUP,label:"Eurocup",opticOddsName:"Eurocup",provider:I.OPTICODDS,scoringType:s.POINTS,matchResolveType:T.OVERTIME,periodType:N.QUARTER,isDrawAvailable:!1},n[t.NFL_FUTURES]={sport:L.FUTURES,id:t.NFL_FUTURES,label:"NFL Futures",provider:I.EMPTY,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.NBA_FUTURES]={sport:L.FUTURES,id:t.NBA_FUTURES,label:"NBA Futures",provider:I.EMPTY,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.EPL_FUTURES]={sport:L.FUTURES,id:t.EPL_FUTURES,label:"EPL Futures",provider:I.EMPTY,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.GOLF_H2H]={sport:L.GOLF,id:t.GOLF_H2H,label:"Golf head-to-head",provider:I.JSONODDS,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n[t.GOLF_WINNER]={sport:L.GOLF,id:t.GOLF_WINNER,label:"Golf Tournament Winner",provider:I.JSONODDS,scoringType:s.EMPTY,matchResolveType:T.EMPTY,periodType:N.EMPTY,isDrawAvailable:!1},n),M=[t.CSGO,t.DOTA2,t.LOL,t.TENNIS_GS,t.TENNIS_MASTERS,t.SUMMER_OLYMPICS_TENNIS,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_1,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_2,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_3,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_4,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_5,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_6,t.TENNIS_GRAND_SLAM_LIVE_MAPPING_V2_7,t.TENNIS_MASTERS_LIVE_MAPPING_V2_1,t.TENNIS_MASTERS_LIVE_MAPPING_V2_2,t.TENNIS_MASTERS_LIVE_MAPPING_V2_3,t.TENNIS_MASTERS_LIVE_MAPPING_V2_4,t.TENNIS_MASTERS_LIVE_MAPPING_V2_5,t.TENNIS_MASTERS_LIVE_MAPPING_V2_6,t.TENNIS_MASTERS_LIVE_MAPPING_V2_7,t.TENNIS_MASTERS_LIVE_MAPPING_V2_8,t.TENNIS_MASTERS_LIVE_MAPPING_V2_9,t.TENNIS_MASTERS_LIVE_MAPPING_V2_10,t.TENNIS_MASTERS_LIVE_MAPPING_V2_11,t.TENNIS_MASTERS_LIVE_MAPPING_V2_12,t.TENNIS_MASTERS_LIVE_MAPPING_V2_13,t.TENNIS_MASTERS_LIVE_MAPPING_V2_14,t.TENNIS_MASTERS_LIVE_MAPPING_V2_15,t.TENNIS_MASTERS_LIVE_MAPPING_V2_16,t.TENNIS_MASTERS_LIVE_MAPPING_V2_17,t.TENNIS_MASTERS_LIVE_MAPPING_V2_18,t.TENNIS_MASTERS_LIVE_MAPPING_V2_19,t.TENNIS_MASTERS_LIVE_MAPPING_V2_20,t.TENNIS_MASTERS_LIVE_MAPPING_V2_21,t.TENNIS_MASTERS_LIVE_MAPPING_V2_22,t.TENNIS_WTA_LIVE_MAPPING_V2_1,t.TENNIS_WTA_LIVE_MAPPING_V2_2,t.TENNIS_WTA_LIVE_MAPPING_V2_3,t.TENNIS_WTA_LIVE_MAPPING_V2_4,t.TENNIS_WTA_LIVE_MAPPING_V2_5,t.TENNIS_WTA_LIVE_MAPPING_V2_6,t.TENNIS_WTA_LIVE_MAPPING_V2_7],U=[t.SUMMER_OLYMPICS_RUGBY,t.SUMMER_OLYMPICS_RUGBY_WOMEN],C=[t.NCAAF,t.NFL,t.MLB,t.NBA,t.NCAAB,t.NHL,t.WNBA,t.MLS,t.IPL,t.T20_BLAST],u=[701,702,703,704],m={1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,10:10,11:11,12:12,13:13,14:14,15:15,16:16,17:17,18:18,19:19,20:20,21:21},G={320:18,6:24,33:33,16:42,44:44,45:45,11:47,50:50,12:53,13:54,15:55,57:57,61:61,65:65,66:66,17:73,76:76,14:87,152:152,153:153,156:156,158:158,132:132,134:134,138:138,141:141,209:209,230:230,268:268,288:288,296:296,310:310,319:319,322:322,327:327,380:380,381:381,399:399,406:406,407:407,409:409,445:445,453:453,454:454,497:497,536:536,8881:8881,8893:8893,8894:8894,8910:8910,9196:9196,9578:9578,9588:9588,9698:9698,9699:9699,9806:9806,9821:9821,9977:9977,9983:9983,10071:10071,10072:10072,10502:10502,10138:10138,10199:10199,10216:10216,10595:10595,10611:10611,10613:10613,10615:10615},y={1:"NCAAF",2:"NFL",3:"MLB",4:"NBA",6:"NHL",7:"UFC",8:"WNBA",10:"USA - Major League Soccer",11:"England - Premier League",12:"France - Ligue 1",13:"Germany - Bundesliga",14:"Spain - La Liga",15:"Italy - Serie A",16:"UEFA - Champions League",17:"UEFA - Europa League",18:"FIFA - World Cup Qualifiers",19:"Japan - J1 League",45:"CONMEBOL - Copa Libertadores",57:"Netherlands - Eredivisie",61:"Portugal - Primeira Liga",230:"Mexico - Liga MX",268:"Brazil - Serie A",399:"Euroleague",536:"Saudi Arabia - Saudi League",9806:"UEFA - Nations League",9977:"CS2",9983:"Dota 2",10138:"League of Legends",10216:"UEFA - Europa Conference League",20001:"UEFA - Super Cup",20002:"Brazil - Copa do Brasil",20011:"England - Championship",20101:"Scotland - Premiership",20102:"Belgium - Jupiler Pro League",20103:"Czech Republic - FNL",20104:"Chile - Primera Division",20105:"Finland - Veikkausliiga",20106:"Argentina - Primera Division",20107:"Russia - Premier League",20108:"Turkey - Super Lig",20109:"Serbia - Super Liga",20110:"Greece - Super League",20111:"India - Calcutta Premier Division",20112:"China - Super League",20113:"Australia - A-League",20114:"Switzerland - Super League",20115:"Germany - Bundesliga 2",20116:"Spain - La Liga 2",20117:"Italy - Serie B",20118:"India - Super League",20119:"France - Ligue 2",20120:"Austria - Bundesliga",20121:"Denmark - Superliga",20122:"Poland - Ekstraklasa",20123:"Sweden - Allsvenskan",20124:"Colombia - Primera A",20125:"England - EFL Cup",20126:"England - League 1",20127:"Uruguay - Primera Division",20200:"Eurocup"},v=function(e){var r=c[e];return r?r.sport:L.EMPTY},D=function(e){var r=c[e];return r?r.label:""},g=function(e){var r=c[e];return r?r.provider:""},b=function(e){var r=c[e];return!!r&&r.isDrawAvailable},F=function(e){return e.filter((function(e){return"true"===e.enabled})).map((function(e){return Number(e.sportId)}))},h=function(e,r){return r.filter((function(r){return Number(r.sportId)===Number(e)&&"true"===r.enabled})).map((function(e){return e.marketName}))},B=function(e,r){return r.filter((function(r){return Number(r.sportId)===e}))},V=function(e){var r=c[e];return r?r.opticOddsName:void 0},w=function(e){var r=c[e];return r?r.periodType:""},f=function(e,r){return r.filter((function(r){return Number(r.sportId)===Number(e)&&"Spread"===r.type&&"true"===r.enabled})).map((function(e){return e.marketName.toLowerCase()}))},Y=function(e,r){return r.filter((function(r){return Number(r.sportId)===Number(e)&&"Total"===r.type&&"true"===r.enabled})).map((function(e){return e.marketName.toLowerCase()}))},H=function(e,r,a,E,i,o){var A,_;if(M.includes(e)?(A=E.toLowerCase()==r.toLowerCase()||E.toLowerCase()==a.toLowerCase(),_=i.toLowerCase()==r.toLowerCase()||i.toLowerCase()==a.toLowerCase()):(A=E.toLowerCase()==r.toLowerCase(),_=i.toLowerCase()==a.toLowerCase()),!0!==A){var L=o.get(E.toLowerCase()),t=o.get(r.toLowerCase()),S=o.get(a.toLowerCase());if([L,t].some((function(e){return null==e})))return!1;A=M.includes(e)?L==t||L==S:L==t}if(!0!==_){var p=o.get(i.toLowerCase());if(t=o.get(r.toLowerCase()),[p,S=o.get(a.toLowerCase())].some((function(e){return null==e})))return!1;_=M.includes(e)&&p==t||p==S}return A&&_},W=function(e,r,a,E){var i;if(v(a)==L.TENNIS){var o=r.getTime(),A=e.getTime();i=Math.abs(A-o)<=Number(60*E*1e3)}else i=r.toUTCString()==e.toUTCString();return i},k=0,K="Draw",Q=0,j=.2,X=10001,z=10002,Z=100,x=function(e,r,a){if(e.some((function(e){return 0===e})))return e;var E=e.reduce((function(e,r){return e+r}),0);if(E<=1)return Array(e.length).fill(0);if(0===a){if(!(r>100*(E-1)))return e;a=r}var i=1+a/100,o=i/E,A=e.map((function(e){return e*o}));if(A.some((function(e){return e>=1})))return Array(e.length).fill(0);var _=A.reduce((function(e,r){return e+r}),0);if(_<1)return Array(e.length).fill(0);var L=i/_;return A.map((function(e){return e*L}))},J=function(e,r,a,E){var i=e.find((function(e){return Number(e.typeId)===Number(a)&&Number(e.sportId)===Number(r)}));return i?{minSpread:i.minSpread?Number(i.minSpread):E,targetSpread:i.targetSpread?Number(i.targetSpread):0}:{minSpread:E,targetSpread:0}},q=function(){return q=Object.assign||function(e){for(var r,a=1,E=arguments.length;a<E;a++)for(var i in r=arguments[a])Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i]);return e},q.apply(this,arguments)},$=function(e,r,a){if(a||2===arguments.length)for(var E,i=0,o=r.length;i<o;i++)!E&&i in r||(E||(E=Array.prototype.slice.call(r,0,i)),E[i]=r[i]);return e.concat(E||Array.prototype.slice.call(r))},ee=function(e){return e===k?0:re("decimal","impliedProbability",e)},re=function(e,r,a){try{return d(e,a).to(r)}catch(e){return 0}},ae=function(e,r,a,E,i){var o=new Map;return a.forEach((function(a){var A=0,_=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==a.toLowerCase()&&e.selection.toLowerCase()===E.homeTeam.toLowerCase()}));0!==_.length&&(A=_[0].price);var L=0,t=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==a.toLowerCase()&&e.selection.toLowerCase()===E.awayTeam.toLowerCase()}));0!==t.length&&(L=t[0].price);var S=0;if(!i){var p=e.filter((function(e){return e&&e.market_name.toLowerCase()===r.toLowerCase()&&e.sports_book_name.toLowerCase()==a.toLowerCase()&&e.selection.toLowerCase()===K.toLowerCase()}));0!==p.length&&(S=p[0].price)}o.set(a.toLowerCase(),{homeOdds:A,awayOdds:L,drawOdds:S})})),o},Ee=function(e,r,a,E,i,o,A){var _={homeTeam:E.home_team,awayTeam:E.away_team},L=ae(E.odds,S.MONEYLINE,a,_,e),t=R(L,a,e,A,j);if(t.errorMessage)return{odds:e?[0,0]:[0,0,0],errorMessage:t.errorMessage};var p=(e?[t.homeOdds,t.awayOdds]:[t.homeOdds,t.awayOdds,t.drawOdds]).map((function(e){return ee(e)})),l=J(r,i,Q,o);return{odds:p=null!==l?x(p,l.minSpread,l.targetSpread):x(p,o,0)}},ie=function(e,r,a,E,i,o){var A=[[],[],[]],_=A[0],L=A[1],t=A[2],S=B(a,o),p={homeTeam:e.home_team,awayTeam:e.away_team};if(S.length>0){oe(e.odds,S,E[0]).filter((function(e){return e&&.5===Math.abs(e.selection_points%1)})).forEach((function(e){"Total"===e.type?L.push(e):"Spread"===e.type&&_.push(e)}));var l=$($([],Ae(_,p),!0),_e(L,p),!0);Le(l,r,i).forEach((function(e){var r={leagueId:Number(e.sportId),typeId:Number(e.typeId),type:e.type.toLowerCase(),line:Number(e.line),odds:e.odds},a=S.find((function(r){return Number(r.typeId)===Number(e.typeId)})),E=null==a?void 0:a.minOdds,i=null==a?void 0:a.maxOdds;E&&i&&(e.odds[0]>=E||e.odds[0]<=i||e.odds[1]>=E||e.odds[1]<=i)||t.push(r)}))}else console.warn("No child markets for leagueID: ".concat(Number(a)));return t},oe=function(e,r,a){var E=r.filter((function(e){return e.marketName.toLowerCase()!==S.MONEYLINE.toLowerCase()})).map((function(e){return e.marketName.toLowerCase()}));return e.filter((function(e){return E.includes(e.market_name.toLowerCase())&&e.sports_book_name.toLowerCase()==a.toLowerCase()})).map((function(e){return q(q({},e),r.find((function(r){return r.marketName===e.market_name})))}))},Ae=function(e,r){var a=e.reduce((function(e,a){var E=a.selection_points,i=a.price,o=a.selection,A=a.typeId,_=a.sportId,L=a.type,t=o===r.homeTeam,S=t?E:-E;return e[S]||(e[S]={home:null,away:null,typeId:null,sportId:null}),t?e[S].home=i:e[S].away=i,e[S].typeId=A,e[S].type=L,e[S].sportId=_,e}),{}),E=Object.entries(a).reduce((function(e,r){var a=r[0],E=r[1],i=parseFloat(a);return null!==E.home&&null!==E.away&&e.push({line:i,odds:[E.home,E.away],typeId:E.typeId,sportId:E.sportId,type:E.type}),e}),[]);return E},_e=function(e,r){var a=e.reduce((function(e,r){if(r){var a="".concat(r.selection,"_").concat(r.selection_points);e[a]||(e[a]={over:null,under:null}),"over"===r.selection_line?e[a].over=r.price:"under"===r.selection_line&&(e[a].under=r.price),e[a].typeId=r.typeId,e[a].type=r.type,e[a].sportId=r.sportId}return e}),{}),E=Object.entries(a).reduce((function(e,a){var E=a[0],i=a[1],o=E.split("_"),A=o[0],_=o[1],L=parseFloat(_),t=A===r.awayTeam;return null!==i.over&&null!==i.under&&e.push({line:L,odds:[i.over,i.under],typeId:t?Number(i.typeId)+1:i.typeId,sportId:i.sportId,type:i.type}),e}),[]);return E},Le=function(e,r,a){var E=[];return e.forEach((function(e){var i=ee(e.odds[0])||k,o=ee(e.odds[1])||k;if(i!==k&&o!==k){var A,_=J(r,e.sportId,e.typeId,a);i=(A=null!==_?x([i,o],_.minSpread,_.targetSpread):x([i,o],a,0))[0],o=A[1],E.push(q(q({},e),{odds:A}))}})),E},te=function(){return te=Object.assign||function(e){for(var r,a=1,E=arguments.length;a<E;a++)for(var i in r=arguments[a])Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i]);return e},te.apply(this,arguments)},Se=function(e,r,a,E,i,o,A,_){var L=E.filter((function(r){return r.sportId===String(e.leagueId)})),t=Ee(!i,L,a,r,e.leagueId,o,A);t.errorMessage?(e.odds=e.odds.map((function(){return{american:0,decimal:0,normalizedImplied:0}})),e.errorMessage=t.errorMessage):e.odds=t.odds.filter((function(e){return 0!=e})).map((function(e){return{american:d("impliedProbability",e).to("moneyline"),decimal:d("impliedProbability",e).to("decimal"),normalizedImplied:e}}));var S=ie(r,L,e.leagueId,a,o,_).map((function(r){var a=te(te({},e),r);return a.odds.length>0&&(a.odds=a.odds.map((function(e){return 0==e?{american:0,decimal:0,normalizedImplied:0}:{american:d("impliedProbability",e).to("moneyline"),decimal:d("impliedProbability",e).to("decimal"),normalizedImplied:e}}))),a}));return e.childMarkets=S,e},pe=function(e,r,a){var E=e.score_home_total,i=e.score_away_total,o=e.clock,A=e.period,_=e.status,t=e.home_team,S=e.away_team,p=parseInt(A),l=v(r);return"completed"==_.toLowerCase()?{allow:!1,message:"Blocking game ".concat(t," - ").concat(S," because it is no longer live.")}:l===L.BASKETBALL?le(t,S,p,a.get(L.BASKETBALL)):l===L.HOCKEY?le(t,S,p,a.get(L.HOCKEY)):l===L.BASEBALL?le(t,S,p,a.get(L.BASEBALL)):l===L.SOCCER?se(t,S,o,A,a.get(L.SOCCER)):l===L.TENNIS?Te(e,t,S,A,E,i,r,l):l===L.VOLLEYBALL?Te(e,t,S,p,E,i,r,l):{allow:!0,message:"The sport ".concat(r," does not have constraint")}},le=function(e,r,a,E){return!Number.isNaN(a)&&a>=E?{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to period: ").concat(a,". period")}:{allow:!0,message:""}},se=function(e,r,a,E,i){var o=Number(a);return!Number.isNaN(o)&&o>=i||Number.isNaN(o)&&"HALF"!=E?{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to clock: ").concat(a,"min")}:{allow:!0,message:""}},Te=function(e,r,a,E,i,o,A,_){var S=Number(E),p=Ne(S,e),l="atp"==e.league.toLowerCase(),s={home:i,away:o};return _==L.VOLLEYBALL?Ie(r,a,p,s,ne,5==S?Oe:de):A.toString().startsWith(t.TENNIS_GS)&&l?Ie(r,a,p,s,Re,ce):A.toString().startsWith(t.TENNIS_GS)&&!l||A.toString().startsWith(t.TENNIS_MASTERS)||A.toString().startsWith(t.SUMMER_OLYMPICS_TENNIS)||A.toString().startsWith(t.TENNIS_WTA)?Ie(r,a,p,s,Pe,ce):{allow:!0,message:"The sport ".concat(A," does not have result constraint")}},Ne=function(e,r){var a=0,E=0;switch(e){case 1:a=Number(r.score_home_period_1),E=Number(r.score_away_period_1);break;case 2:a=Number(r.score_home_period_2),E=Number(r.score_away_period_2);break;case 3:a=Number(r.score_home_period_3),E=Number(r.score_away_period_3);break;case 4:a=Number(r.score_home_period_4),E=Number(r.score_away_period_4);break;case 5:a=Number(r.score_home_period_5),E=Number(r.score_away_period_5)}return{home:a,away:E}},Ie=function(e,r,a,E,i,o){return Number(E.home)!=i&&Number(E.away)!=i||!(Number(E.home)==i&&a.home>=o||Number(E.away)==i&&a.away>=o)?{allow:!0,message:"",currentHomeGameScore:a.home,currentAwayGameScore:a.away}:{allow:!1,message:"Blocking game ".concat(e," - ").concat(r," due to current result: ").concat(E.home," - ").concat(E.away," (").concat(a.home," - ").concat(a.away,")")}},ne=2,de=20,Oe=10,Re=2,Pe=1,ce=5;return r})()));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "overtime-live-trading-utils",
3
- "version": "0.2.10",
3
+ "version": "0.3.1",
4
4
  "description": "",
5
5
  "main": "main.js",
6
6
  "scripts": {
@@ -1,6 +1,6 @@
1
1
  export const ZERO = 0;
2
2
  export const DRAW = 'Draw';
3
- export const LIVE_TYPE_ID_BASE = 100000;
3
+ export const MONEYLINE_TYPE_ID = 0;
4
4
  export const MIN_ODDS_FOR_DIFF_CHECKING = 0.2;
5
5
  export const TAG_CHILD_SPREAD = 10001;
6
6
  export const TAG_CHILD_TOTALS = 10002;