/* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġat . spec ure . info . band Ċ Ċ import Ġat . spec ure . info . cell . Cell Channel At tribution Ċ import Ġkotlin . math . round ToInt Ċ Ċ /** Ċ Ġ* ĠContains Ġinformation Ġabout Ġcell ular Ġband Ġand Ġfrequency Ġavailable Ġfor Ġcurrent Ġnetwork Ċ Ġ*/ Ċ data Ġclass ĠCell Band ( ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠNetwork Ġchannel Ġband ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġband : ĠInt , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠNetwork Ġchannel Ġat tribution Ġfor Ġcurrent Ġnetwork ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġchannel At tribution : ĠCell Channel At tribution , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠChannel ĠNumber ĊĠĠĠĠ Ġ* Ġfor Ġ[ Cell Channel At tribution . NR AR FC N ] ĠNR Ġtechnology Ġ- Ġn rar fc n ĊĠĠĠĠ Ġ* Ġfor Ġ[ Cell Channel At tribution . EAR FC N ] ĠL TE Ġtechnology Ġ- Ġear fc n ĊĠĠĠĠ Ġ* Ġfor Ġ[ Cell Channel At tribution . U AR FC N ] ĠW CD MA Ġtechnology Ġ- Ġu ar fc n ĊĠĠĠĠ Ġ* Ġfor Ġ[ Cell Channel At tribution . AR FC N ] ĠG SM Ġtechnology Ġ- Ġar fc n ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġchannel : ĠInt , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠBand Ġname ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġname : ĠString ?, ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDownload Ġfrequency Ġin Ġmd B ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġfrequency DL : ĠDouble , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDownload Ġfrequency Ġin Ġmd B ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġfrequency UL : ĠDouble Ċ ) Ġ: ĠBand () Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġinform al Name : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġname Ġ?: Ġ"" ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġfrom Channel Number ( channel : ĠInt , Ġchannel At tribution : ĠCell Channel At tribution ): ĠCell Band ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdata : ĠCell Band Data ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstep : ĠDouble ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( channel At tribution ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCell Channel At tribution . AR FC N Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġget Band From Ar fc n ( channel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstep Ġ= Ġ 0 . 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCell Channel At tribution . U AR FC N Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġget Band From U ar fc n ( channel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstep Ġ= Ġ 0 . 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCell Channel At tribution . EAR FC N Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġget Band From E ar fc n ( channel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstep Ġ= Ġ 0 . 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCell Channel At tribution . NR AR FC N Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġget Band From N rar fc n ( channel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstep Ġ= Ġ 0 . 0 Ġ// Ġnot Ġapplicable Ġfor ĠNR Ġcells ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( data Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCell Band ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġband Ġ= Ġdata . band , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel At tribution Ġ= Ġchannel At tribution , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Ġ= Ġchannel , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġdata . inform al Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency DL Ġ= Ġdata . get Frequency DL ( step , Ġchannel ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency UL Ġ= Ġdata . get Frequency UL ( step , Ġchannel ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġar fc n ĠFrequency Ġto Ġcheck ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠGS MB and Ġobject Ġfor Ġmatched Ġband , Ġor ĠNULL Ġif Ġinvalid Ġear fc n Ġis Ġpassed ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Band From Ar fc n ( ar fc n : ĠInt ): ĠCell Band Data ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġwe Ġcan 't Ġdifferent iate Ġbetween ĠU L Ġand ĠDL Ġwith Ġum ts ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( g sm Band Ġin Ġg sm B ands ) Ġ{ Ġ// ĠLoop Ġthrough Ġall Ġl te B ands ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( g sm Band . contains Channel ( ar fc n )) Ġ{ Ġ// ĠIf Ġthe Ġband Ġcontains Ġthe Ġear fc n Ġthen Ġreturn Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġg sm Band ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġu ar fc n ĠFrequency Ġto Ġcheck ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠU MT SB and Ġobject Ġfor Ġmatched Ġband , Ġor ĠNULL Ġif Ġinvalid Ġear fc n Ġis Ġpassed ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Band From U ar fc n ( uar fc n : ĠInt ): ĠCell Band Data ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġwe Ġcan 't Ġdifferent iate Ġbetween ĠU L Ġand ĠDL Ġwith Ġum ts ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( um ts Band Ġin Ġum ts B ands ) Ġ{ Ġ// ĠLoop Ġthrough Ġall Ġl te B ands ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( um ts Band . contains Channel ( uar fc n )) Ġ{ Ġ// ĠIf Ġthe Ġband Ġcontains Ġthe Ġear fc n Ġthen Ġreturn Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġum ts Band ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġear fc n ĠFrequency Ġto Ġcheck ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠL TE Band Ġobject Ġfor Ġmatched Ġband , Ġor ĠNULL Ġif Ġinvalid Ġear fc n Ġis Ġpassed ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Band From E ar fc n ( ear fc n : ĠInt ): ĠCell Band Data ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( ear fc n Ġin Ġ 1 .. 1 7 9 9 9 ) Ġ{ Ġ// ĠDL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( band Ġin Ġl te B ands ) Ġ{ Ġ// ĠLoop Ġthrough Ġall Ġl te B ands ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( band . contains DL Channel ( ear fc n )) Ġ{ Ġ// ĠIf Ġthe Ġband Ġcontains Ġthe Ġear fc n Ġthen Ġreturn Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġband ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( ear fc n Ġin Ġ 1 8 0 0 0 .. 6 5 5 3 5 ) Ġ{ Ġ// ĠU L ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( band Ġin Ġl te B ands ) Ġ{ Ġ// ĠLoop Ġthrough Ġall Ġl te B ands ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( band . contains UL Channel ( ear fc n )) Ġ{ Ġ// ĠIf Ġthe Ġband Ġcontains Ġthe Ġear fc n Ġthen Ġreturn Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġband ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġn rar fc n ĠFrequency Ġto Ġcheck ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠN RB and Ġobject Ġfor Ġmatched Ġband , Ġor ĠNULL Ġif Ġinvalid Ġn rar fc n Ġis Ġpassed ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Band From N rar fc n ( nr ar fc n : ĠInt ): ĠCell Band Data ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġdifferent Ġcalculation Ġ- Ġget Ġfrequency Ġfrom Ġn rar fc n Ġdirectly , Ġthen Ġassign Ġband ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfrequency MHz : ĠDouble Ġ= Ġget Nr Frequency From Nr Ar fc n ( nr ar fc n ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( frequency MHz Ġ== Ġ 0 . 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġcheck Ġif Ġa Ġband Ġcontains Ġthis Ġfrequency ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( band Ġin Ġnr B ands ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( band . contains UL Frequency ( frequency MHz )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġband ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġget Nr Frequency From Nr Ar fc n ( nr ar fc n : ĠInt ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfrequency Offset : ĠDouble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdelta Frequency K Hz : ĠDouble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġn Ref Offs : ĠDouble ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( nr ar fc n ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġin Ġ 0 .. 5 9 9 9 9 9 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Offset Ġ= Ġ 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelta Frequency K Hz Ġ= Ġ 5 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġn Ref Offs Ġ= Ġ 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġin Ġ 6 0 0 0 0 0 .. 2 0 1 6 6 6 6 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Offset Ġ= Ġ 3 0 0 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelta Frequency K Hz Ġ= Ġ 1 5 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġn Ref Offs Ġ= Ġ 6 0 0 0 0 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġin Ġ 2 0 1 6 6 6 7 .. 3 2 7 9 1 6 4 Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Offset Ġ= Ġ 2 4 2 5 0 . 0 8 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelta Frequency K Hz Ġ= Ġ 6 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġn Ref Offs Ġ= Ġ 2 0 1 6 6 6 7 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġinvalid Ġinput ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ 0 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠF REF Ġ= ĠF REF - Offs Ġ+ ĠÎĶ F Global Ġ( N REF ĠâĢĵ ĠN REF - Offs ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfrequency Offset Ġ+ Ġdelta Frequency K Hz Ġ/ Ġ 1 0 0 0 f Ġ* Ġ( nr ar fc n Ġ- Ġn Ref Offs ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġclass ĠCell Band Data ( ĊĠĠĠ Ġval Ġband : ĠInt , ĊĠĠĠ Ġval Ġupload Frequency Lower Bound : ĠDouble , ĊĠĠĠ Ġval Ġupload Frequency Upper Bound : ĠDouble , ĊĠĠĠ Ġval Ġdownload Frequency Lower Bound : ĠDouble , ĊĠĠĠ Ġval Ġdownload Frequency Upper Bound : ĠDouble , ĊĠĠĠ Ġval Ġupload Channel Lower Bound : ĠDouble , ĊĠĠĠ Ġval Ġupload Channel Upper Bound : ĠDouble , ĊĠĠĠ Ġval Ġchannel Offset : ĠDouble , ĊĠĠĠ Ġval Ġinform al Name : ĠString ? Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġcontains Channel ( channel : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontains DL Channel ( channel ) Ġ|| Ġcontains UL Channel ( channel ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcontains DL Channel ( channel : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġchannel Ġ> Ġupload Channel Lower Bound Ġ- Ġchannel Offset Ġ&& Ġchannel Ġ< Ġupload Channel Upper Bound Ġ- Ġchannel Offset ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcontains UL Channel ( channel : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġchannel Ġ> Ġupload Channel Lower Bound Ġ&& Ġchannel Ġ< Ġupload Channel Upper Bound ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcontains UL Frequency ( frequency MHz : ĠDouble ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfrequency MHz Ġin Ġupload Frequency Lower Bound .. upload Frequency Upper Bound ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcontains DL Frequency ( frequency MHz : ĠDouble ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfrequency MHz Ġin Ġdownload Frequency Lower Bound .. download Frequency Upper Bound ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Frequency DL ( step : ĠDouble , Ġchannel : ĠInt ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġchannel Offset Ġ= Ġif Ġ(! contains DL Channel ( channel )) Ġ 0 . 0 Ġelse Ġthis . channel Offset ĊĠĠĠĠĠĠĠ Ġvar Ġfrequency Ġ= Ġthis . download Frequency Lower Bound Ġ+ Ġstep Ġ* Ġ( channel Ġ- Ġ( this . upload Channel Lower Bound Ġ- Ġchannel Offset )) ĊĠĠĠĠĠĠĠ Ġfrequency Ġ= Ġ( frequency Ġ* Ġ 1 0 0 0 ). round ToInt (). toDouble () Ġ/ Ġ 1 0 0 0 ĊĠĠĠĠĠĠĠ Ġreturn Ġfrequency ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Frequency UL ( step : ĠDouble , Ġchannel : ĠInt ): ĠDouble Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġchannel Offset Ġ= Ġif Ġ(! contains UL Channel ( channel )) Ġ 0 . 0 Ġelse Ġ- this . channel Offset ĊĠĠĠĠĠĠĠ Ġvar Ġfrequency Ġ= Ġthis . download Frequency Lower Bound Ġ+ Ġstep Ġ* Ġ( channel Ġ- Ġ( this . upload Channel Lower Bound Ġ- Ġchannel Offset )) ĊĠĠĠĠĠĠĠ Ġfrequency Ġ= Ġ( frequency Ġ* Ġ 1 0 0 0 ). round ToInt (). toDouble () Ġ/ Ġ 1 0 0 0 ĊĠĠĠĠĠĠĠ Ġreturn Ġfrequency ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun ĠMutable Set < Cell Band Data >. add ( ĊĠĠĠ Ġband : ĠInt , ĊĠĠĠ Ġupload Frequency Lower Bound : ĠDouble , ĊĠĠĠ Ġupload Frequency Upper Bound : ĠDouble , ĊĠĠĠ Ġdownload Frequency Lower Bound : ĠDouble , ĊĠĠĠ Ġdownload Frequency Upper Bound : ĠDouble , ĊĠĠĠ Ġupload Channel Lower Bound : ĠDouble , ĊĠĠĠ Ġupload Channel Upper Bound : ĠDouble , ĊĠĠĠ Ġchannel Offset : ĠDouble , ĊĠĠĠ Ġinform al Name : ĠString ? Ċ ) Ġ{ ĊĠĠĠ Ġadd ( ĊĠĠĠĠĠĠĠ ĠCell Band Data ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġband Ġ= Ġband , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupload Frequency Lower Bound Ġ= Ġupload Frequency Lower Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupload Frequency Upper Bound Ġ= Ġupload Frequency Upper Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdownload Frequency Lower Bound Ġ= Ġdownload Frequency Lower Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdownload Frequency Upper Bound Ġ= Ġdownload Frequency Upper Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupload Channel Lower Bound Ġ= Ġupload Channel Lower Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupload Channel Upper Bound Ġ= Ġupload Channel Upper Bound , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Offset Ġ= Ġchannel Offset , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinform al Name Ġ= Ġinform al Name ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } Ċ Ċ /** Ċ Ġ* ĠTable Ġof ĠNR ĠBand Ġchannels , ĠEuropean Ġchannels Ġare Ġon Ġthe Ġtop Ċ Ġ*/ Ċ private Ġval Ġnr B ands : ĠSet < Cell Band Data > Ġ= Ġmutable Set Of < Cell Band Data >(). apply Ġ{ ĊĠĠĠ Ġadd ( 1 , Ġ 1 9 2 0 . 0 , Ġ 1 9 8 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 1 7 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 2 1 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 3 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 5 . 0 , Ġ 1 8 0 5 . 0 , Ġ 1 8 8 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 1 8 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 8 0 . 0 , Ġ 9 1 5 . 0 , Ġ 9 2 5 . 0 , Ġ 9 6 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 7 , Ġ 2 5 0 0 . 0 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 2 6 9 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 2 6 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 7 8 , Ġ 3 3 0 0 . 0 , Ġ 3 8 0 0 . 0 , Ġ 3 3 0 0 . 0 , Ġ 3 8 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 3 5 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 7 5 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 1 4 3 2 . 0 , Ġ 1 5 1 7 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 1 5 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 5 8 , Ġ 2 4 2 5 0 . 0 , Ġ 2 7 5 0 0 . 0 , Ġ 2 4 2 5 0 . 0 , Ġ 2 7 5 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 2 6 ĠG Hz ") ĊĠĠĠ Ġadd ( 2 0 , Ġ 8 3 2 . 0 , Ġ 8 6 2 . 0 , Ġ 7 9 1 . 0 , Ġ 8 2 1 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 8 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 8 , Ġ 7 0 3 . 0 , Ġ 7 4 8 . 0 , Ġ 7 5 8 . 0 , Ġ 8 0 3 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 7 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 4 0 , Ġ 2 3 0 0 . 0 , Ġ 2 4 0 0 . 0 , Ġ 2 3 0 0 . 0 , Ġ 2 4 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 2 3 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 0 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 1 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 5 , Ġ 8 2 4 . 0 , Ġ 8 4 9 . 0 , Ġ 8 6 9 . 0 , Ġ 8 9 4 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 8 5 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 1 2 , Ġ 6 9 9 . 0 , Ġ 7 1 6 . 0 , Ġ 7 2 9 . 0 , Ġ 7 4 6 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 7 0 0 ĠM Hz ĠUS ĠA ") ĊĠĠĠ Ġadd ( 2 5 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 5 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 5 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 1 9 0 0 ĠM Hz Ġ+ ") ĊĠĠĠ Ġadd ( 3 4 , Ġ 2 0 1 0 . 0 , Ġ 2 0 2 5 . 0 , Ġ 2 0 1 0 . 0 , Ġ 2 0 2 5 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 2 ĠG Hz Ġupper ") ĊĠĠĠ Ġadd ( 3 8 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 2 6 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 3 9 , Ġ 1 8 8 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 1 8 8 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 1 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 4 1 , Ġ 2 4 9 6 . 0 , Ġ 2 6 9 0 . 0 , Ġ 2 4 9 6 . 0 , Ġ 2 6 9 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 2 . 6 ĠG Hz Ġ+ ") ĊĠĠĠ Ġadd ( 5 0 , Ġ 1 4 3 2 . 0 , Ġ 1 5 1 7 . 0 , Ġ 1 4 3 2 . 0 , Ġ 1 5 1 7 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 1 5 0 0 ĠM Hz Ġ+ ") ĊĠĠĠ Ġadd ( 5 1 , Ġ 1 4 2 7 . 0 , Ġ 1 4 3 2 . 0 , Ġ 1 4 2 7 . 0 , Ġ 1 4 3 2 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" TD Ġ 1 5 0 0 ĠM Hz Ġ- ") ĊĠĠĠ Ġadd ( 6 6 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 2 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" AWS - 3 ") ĊĠĠĠ Ġadd ( 7 0 , Ġ 1 6 9 5 . 0 , Ġ 1 7 1 0 . 0 , Ġ 1 9 9 5 . 0 , Ġ 2 0 2 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" AWS - 4 ") ĊĠĠĠ Ġadd ( 7 1 , Ġ 6 6 3 . 0 , Ġ 6 9 8 . 0 , Ġ 6 1 7 . 0 , Ġ 6 5 2 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 6 0 0 ĠM Hz ĠUS ") ĊĠĠĠ Ġadd ( 7 4 , Ġ 1 4 2 7 . 0 , Ġ 1 4 7 0 . 0 , Ġ 1 4 7 5 . 0 , Ġ 1 5 1 8 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" L - Band ") ĊĠĠĠ Ġadd ( 7 6 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 1 4 2 7 . 0 , Ġ 1 4 3 2 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 5 0 0 ĠM Hz Ġ- ") ĊĊĠĠĠ Ġadd ( 7 7 , Ġ 3 3 0 0 . 0 , Ġ 4 2 0 0 . 0 , Ġ 3 3 0 0 . 0 , Ġ 4 2 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 3 5 0 0 ĠM Hz Ġ+ ") ĊĠĠĠ Ġadd ( 7 9 , Ġ 4 4 0 0 . 0 , Ġ 5 0 0 0 . 0 , Ġ 4 4 0 0 . 0 , Ġ 5 0 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 4 5 0 0 ĠM Hz ") ĊĊĠĠĠ Ġadd ( 8 0 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 5 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 1 8 0 0 ĠM Hz +") ĊĠĠĠ Ġadd ( 8 1 , Ġ 8 8 0 . 0 , Ġ 9 1 5 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 2 , Ġ 8 3 2 . 0 , Ġ 8 6 2 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 8 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 3 , Ġ 7 0 3 . 0 , Ġ 7 4 8 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 7 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 4 , Ġ 1 9 2 0 . 0 , Ġ 1 9 8 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 2 1 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 6 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" S UL Ġ 1 8 0 0 ĠM Hz ") ĊĊĠĠĠ Ġadd ( 2 5 7 , Ġ 2 6 5 0 0 . 0 , Ġ 2 9 5 0 0 . 0 , Ġ 2 6 5 0 0 . 0 , Ġ 2 9 5 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 2 8 ĠG Hz ") ĊĠĠĠ Ġadd ( 2 6 0 , Ġ 3 7 0 0 0 . 0 , Ġ 4 0 0 0 0 . 0 , Ġ 3 7 0 0 0 . 0 , Ġ 4 0 0 0 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 3 9 ĠG Hz ĠUS ") ĊĠĠĠ Ġadd ( 2 6 1 , Ġ 2 7 5 0 0 . 0 , Ġ 2 8 3 5 0 . 0 , Ġ 2 7 5 0 0 . 0 , Ġ 2 8 3 5 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ" 2 8 ĠG Hz ĠUS ") Ċ } Ċ Ċ /** Ċ Ġ* ĠStatic Ġlist Ġof Ġall ĠL TE ĠB ands Ċ Ġ* Ġtaken Ġfrom Ġthe Ġ 3 g pp Ġ 3 6 . 1 0 1 Ġstandard Ċ Ġ* Ġhttp :// www . 3 g pp . org / ftp // Specs / archive / 3 6 _ series / 3 6 . 1 0 1 / Ċ Ġ* Ġlatest Ġupdate Ġe 3 0 Ġ( 2 0 1 7 - 0 3 - 2 8 ) Ċ Ġ*/ Ċ private Ġval Ġl te B ands : ĠSet < Cell Band Data > Ġ= Ġmutable Set Of < Cell Band Data >(). apply Ġ{ ĊĠĠĠ Ġadd ( 1 , Ġ 1 9 2 0 . 0 , Ġ 1 9 8 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 1 7 0 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ 1 8 5 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 2 1 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 0 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 0 . 0 , Ġ 1 8 6 0 0 . 0 , Ġ 1 9 1 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" PC S ĠA - F Ġblocks Ġ 1 , 9 ĠG Hz ") ĊĠĠĠ Ġadd ( 3 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 5 . 0 , Ġ 1 8 0 5 . 0 , Ġ 1 8 8 0 . 0 , Ġ 1 9 2 0 0 . 0 , Ġ 1 9 9 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 1 8 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 4 , Ġ 1 7 1 0 . 0 , Ġ 1 7 5 5 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 1 5 5 . 0 , Ġ 1 9 9 5 0 . 0 , Ġ 2 0 3 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" AWS - 1 Ġ 1 . 7 + 2 . 1 ĠG Hz ") ĊĠĠĠ Ġadd ( 5 , Ġ 8 2 4 . 0 , Ġ 8 4 9 . 0 , Ġ 8 6 9 . 0 , Ġ 8 9 4 . 0 , Ġ 2 0 4 0 0 . 0 , Ġ 2 0 6 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 5 0 MHz Ġ( was ĠC DMA )") ĊĠĠĠ Ġadd ( 6 , Ġ 8 3 0 . 0 , Ġ 8 4 0 . 0 , Ġ 8 7 5 . 0 , Ġ 8 8 5 . 0 , Ġ 2 0 6 5 0 . 0 , Ġ 2 0 7 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 5 0 MHz Ġsubset Ġ( was ĠC DMA )") ĊĠĠĠ Ġadd ( 7 , Ġ 2 5 0 0 . 0 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 2 6 9 0 . 0 , Ġ 2 0 7 5 0 . 0 , Ġ 2 1 4 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 2 6 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 8 0 . 0 , Ġ 9 1 5 . 0 , Ġ 9 2 5 . 0 , Ġ 9 6 0 . 0 , Ġ 2 1 4 5 0 . 0 , Ġ 2 1 7 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 9 , Ġ 1 7 4 9 . 9 , Ġ 1 7 8 4 . 9 , Ġ 1 8 4 4 . 9 , Ġ 1 8 7 9 . 9 , Ġ 2 1 8 0 0 . 0 , Ġ 2 2 1 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" D CS 1 8 0 0 Ġsubset ") ĊĠĠĠ Ġadd ( 1 0 , Ġ 1 7 1 0 . 0 , Ġ 1 7 7 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 1 7 0 . 0 , Ġ 2 2 1 5 0 . 0 , Ġ 2 2 7 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" Extended ĠAWS / AWS - 2 / AWS - 3 ") ĊĠĠĠ Ġadd ( 1 1 , Ġ 1 4 2 7 . 9 , Ġ 1 4 4 7 . 9 , Ġ 1 4 7 5 . 9 , Ġ 1 4 9 5 . 9 , Ġ 2 2 7 5 0 . 0 , Ġ 2 2 9 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 1 . 5 ĠG Hz Ġlower ") ĊĠĠĠ Ġadd ( 1 2 , Ġ 6 9 9 . 0 , Ġ 7 1 6 . 0 , Ġ 7 2 9 . 0 , Ġ 7 4 6 . 0 , Ġ 2 3 0 1 0 . 0 , Ġ 2 3 1 7 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 7 0 0 ĠM Hz Ġlower ĠA ( BC ) Ġblocks ") ĊĠĠĠ Ġadd ( 1 3 , Ġ 7 7 7 . 0 , Ġ 7 8 7 . 0 , Ġ 7 4 6 . 0 , Ġ 7 5 6 . 0 , Ġ 2 3 1 8 0 . 0 , Ġ 2 3 2 7 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 7 0 0 ĠM Hz Ġupper ĠC Ġblock ") ĊĠĠĠ Ġadd ( 1 4 , Ġ 7 8 8 . 0 , Ġ 7 9 8 . 0 , Ġ 7 5 8 . 0 , Ġ 7 6 8 . 0 , Ġ 2 3 2 8 0 . 0 , Ġ 2 3 3 7 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 7 0 0 ĠM Hz Ġupper ĠD Ġblock ") ĊĠĠĠ Ġadd ( 1 7 , Ġ 7 0 4 . 0 , Ġ 7 1 6 . 0 , Ġ 7 3 4 . 0 , Ġ 7 4 6 . 0 , Ġ 2 3 7 3 0 . 0 , Ġ 2 3 8 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 7 0 0 ĠM Hz Ġlower ĠBC Ġblocks ") ĊĠĠĠ Ġadd ( 1 8 , Ġ 8 1 5 . 0 , Ġ 8 3 0 . 0 , Ġ 8 6 0 . 0 , Ġ 8 7 5 . 0 , Ġ 2 3 8 5 0 . 0 , Ġ 2 3 9 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 0 0 ĠM Hz Ġlower ") ĊĠĠĠ Ġadd ( 1 9 , Ġ 8 3 0 . 0 , Ġ 8 4 5 . 0 , Ġ 8 7 5 . 0 , Ġ 8 9 0 . 0 , Ġ 2 4 0 0 0 . 0 , Ġ 2 4 1 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 0 0 ĠM Hz Ġupper ") ĊĠĠĠ Ġadd ( 2 0 , Ġ 8 3 2 . 0 , Ġ 8 6 2 . 0 , Ġ 7 9 1 . 0 , Ġ 8 2 1 . 0 , Ġ 2 4 1 5 0 . 0 , Ġ 2 4 4 4 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 1 , Ġ 1 4 4 7 . 9 , Ġ 1 4 6 2 . 9 , Ġ 1 4 9 5 . 9 , Ġ 1 5 1 0 . 9 , Ġ 2 4 4 5 0 . 0 , Ġ 2 4 5 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 1 . 5 ĠG Hz Ġupper ") ĊĠĠĠ Ġadd ( 2 2 , Ġ 3 4 1 0 . 0 , Ġ 3 4 9 0 . 0 , Ġ 3 5 1 0 . 0 , Ġ 3 5 9 0 . 0 , Ġ 2 4 6 0 0 . 0 , Ġ 2 5 3 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 3 . 5 ĠG Hz ") ĊĠĠĠ Ġadd ( 2 3 , Ġ 2 0 0 0 . 0 , Ġ 2 0 2 0 . 0 , Ġ 2 1 8 0 . 0 , Ġ 2 2 0 0 . 0 , Ġ 2 5 5 0 0 . 0 , Ġ 2 5 6 9 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 2 ĠG Hz ĠS - Band ") ĊĠĠĠ Ġadd ( 2 4 , Ġ 1 6 2 6 . 5 , Ġ 1 6 6 0 . 5 , Ġ 1 5 2 5 . 0 , Ġ 1 5 5 9 . 0 , Ġ 2 5 7 0 0 . 0 , Ġ 2 6 0 3 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 1 . 6 ĠG Hz ĠL - Band ") ĊĠĠĠ Ġadd ( 2 5 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 5 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 5 . 0 , Ġ 2 6 0 4 0 . 0 , Ġ 2 6 6 8 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" PC S ĠA - G Ġblocks Ġ 1 9 0 0 ") ĊĠĠĠ Ġadd ( 2 6 , Ġ 8 1 4 . 0 , Ġ 8 4 9 . 0 , Ġ 8 5 9 . 0 , Ġ 8 9 4 . 0 , Ġ 2 6 6 9 0 . 0 , Ġ 2 7 0 3 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" ES MR + Ġ 8 5 0 Ġ( was : Ġi DEN )") ĊĠĠĠ Ġadd ( 2 7 , Ġ 8 0 7 . 0 , Ġ 8 2 4 . 0 , Ġ 8 5 2 . 0 , Ġ 8 6 9 . 0 , Ġ 2 7 0 4 0 . 0 , Ġ 2 7 2 0 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 8 0 0 ĠM Hz ĠS MR Ġ( was Ġi DEN )") ĊĠĠĠ Ġadd ( 2 8 , Ġ 7 0 3 . 0 , Ġ 7 4 8 . 0 , Ġ 7 5 8 . 0 , Ġ 8 0 3 . 0 , Ġ 2 7 2 1 0 . 0 , Ġ 2 7 6 5 9 . 0 , Ġ 1 8 0 0 0 . 0 , Ġ" 7 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 9 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 7 1 7 . 0 , Ġ 7 2 8 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ- 9 6 6 0 . 0 , Ġ" 7 0 0 Ġlower ĠDE Ġblocks Ġ( sup pl . ĠDL )") ĊĠĠĠ Ġadd ( 3 0 , Ġ 2 3 0 5 . 0 , Ġ 2 3 1 5 . 0 , Ġ 2 3 5 0 . 0 , Ġ 2 3 6 0 . 0 , Ġ 2 7 6 6 0 . 0 , Ġ 2 7 7 5 9 . 0 , Ġ 1 7 8 9 0 . 0 , Ġ" 2 . 3 GH z ĠW CS ") ĊĠĠĠ Ġadd ( 3 1 , Ġ 4 5 2 . 5 , Ġ 4 5 7 . 5 , Ġ 4 6 2 . 5 , Ġ 4 6 7 . 5 , Ġ 2 7 7 6 0 . 0 , Ġ 2 7 8 0 9 . 0 , Ġ 1 7 8 9 0 . 0 , Ġ" IM T Ġ 4 5 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 3 2 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 1 4 5 2 . 0 , Ġ 1 4 9 6 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ- 9 9 2 0 . 0 , Ġ" 1 . 5 ĠG Hz ĠL - Band Ġ( sup pl . ĠDL )") ĊĠĠĠ Ġadd ( 3 3 , Ġ 1 9 0 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 1 9 0 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 3 6 0 0 0 . 0 , Ġ 3 6 1 9 9 . 0 , Ġ 0 . 0 , Ġ" 2 ĠG Hz ĠT DD Ġlower ") ĊĠĠĠ Ġadd ( 3 4 , Ġ 2 0 1 0 . 0 , Ġ 2 0 2 5 . 0 , Ġ 2 0 1 0 . 0 , Ġ 2 0 2 5 . 0 , Ġ 3 6 2 0 0 . 0 , Ġ 3 6 3 4 9 . 0 , Ġ 0 . 0 , Ġ" 2 ĠG Hz ĠT DD Ġupper ") ĊĠĠĠ Ġadd ( 3 5 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 0 . 0 , Ġ 1 8 5 0 . 0 , Ġ 1 9 1 0 . 0 , Ġ 3 6 3 5 0 . 0 , Ġ 3 6 9 4 9 . 0 , Ġ 0 . 0 , Ġ" 1 , 9 ĠG Hz ĠT DD Ġlower ") ĊĠĠĠ Ġadd ( 3 6 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 0 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 9 0 . 0 , Ġ 3 6 9 5 0 . 0 , Ġ 3 7 5 4 9 . 0 , Ġ 0 . 0 , Ġ" 1 . 9 ĠG Hz ĠT DD Ġupper ") ĊĠĠĠ Ġadd ( 3 7 , Ġ 1 9 1 0 . 0 , Ġ 1 9 3 0 . 0 , Ġ 1 9 1 0 . 0 , Ġ 1 9 3 0 . 0 , Ġ 3 7 5 5 0 . 0 , Ġ 3 7 7 4 9 . 0 , Ġ 0 . 0 , Ġ" PC S ĠT DD ") ĊĠĠĠ Ġadd ( 3 8 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 3 7 7 5 0 . 0 , Ġ 3 8 2 4 9 . 0 , Ġ 0 . 0 , Ġ" 2 6 0 0 ĠM Hz ĠT DD ") ĊĠĠĠ Ġadd ( 3 9 , Ġ 1 8 8 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 1 8 8 0 . 0 , Ġ 1 9 2 0 . 0 , Ġ 3 8 2 5 0 . 0 , Ġ 3 8 6 4 9 . 0 , Ġ 0 . 0 , Ġ" IM T Ġ 1 . 9 ĠG Hz ĠT DD Ġ( was ĠTD - SC DMA )") ĊĠĠĠ Ġadd ( 4 0 , Ġ 2 3 0 0 . 0 , Ġ 2 4 0 0 . 0 , Ġ 2 3 0 0 . 0 , Ġ 2 4 0 0 . 0 , Ġ 3 8 6 5 0 . 0 , Ġ 3 9 6 4 9 . 0 , Ġ 0 . 0 , Ġ" 2 3 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 4 1 , Ġ 2 4 9 6 . 0 , Ġ 2 6 9 0 . 0 , Ġ 2 4 9 6 . 0 , Ġ 2 6 9 0 . 0 , Ġ 3 9 6 5 0 . 0 , Ġ 4 1 5 8 9 . 0 , Ġ 0 . 0 , Ġ" Expanded ĠT DD Ġ 2 . 6 ĠG Hz ") ĊĠĠĠ Ġadd ( 4 2 , Ġ 3 4 0 0 . 0 , Ġ 3 6 0 0 . 0 , Ġ 3 4 0 0 . 0 , Ġ 3 6 0 0 . 0 , Ġ 4 1 5 9 0 . 0 , Ġ 4 3 5 8 9 . 0 , Ġ 0 . 0 , Ġ" 3 , 4 - 3 , 6 ĠG Hz ") ĊĠĠĠ Ġadd ( 4 3 , Ġ 3 6 0 0 . 0 , Ġ 3 8 0 0 . 0 , Ġ 3 6 0 0 . 0 , Ġ 3 8 0 0 . 0 , Ġ 4 3 5 9 0 . 0 , Ġ 4 5 5 8 9 . 0 , Ġ 0 . 0 , Ġ" 3 . 6 - 3 , 8 ĠG Hz ") ĊĠĠĠ Ġadd ( 4 4 , Ġ 7 0 3 . 0 , Ġ 8 0 3 . 0 , Ġ 7 0 3 . 0 , Ġ 8 0 3 . 0 , Ġ 4 5 5 9 0 . 0 , Ġ 4 6 5 8 9 . 0 , Ġ 0 . 0 , Ġ" 7 0 0 ĠM Hz ĠA PT ĠT DD ") ĊĠĠĠ Ġadd ( 4 5 , Ġ 1 4 4 7 . 0 , Ġ 1 4 6 7 . 0 , Ġ 1 4 4 7 . 0 , Ġ 1 4 6 7 . 0 , Ġ 4 6 5 9 0 . 0 , Ġ 4 6 7 8 9 . 0 , Ġ 0 . 0 , Ġ" 1 5 0 0 ĠM HZ ") ĊĠĠĠ Ġadd ( 4 6 , Ġ 5 1 5 0 . 0 , Ġ 5 9 2 5 . 0 , Ġ 5 1 5 0 . 0 , Ġ 5 9 2 5 . 0 , Ġ 4 6 7 9 0 . 0 , Ġ 5 4 5 3 9 . 0 , Ġ 0 . 0 , Ġ" TD ĠUn license d ") ĊĠĠĠ Ġadd ( 4 7 , Ġ 5 8 5 5 . 0 , Ġ 5 9 2 5 . 0 , Ġ 5 8 5 5 . 0 , Ġ 5 9 2 5 . 0 , Ġ 5 4 5 4 0 . 0 , Ġ 5 5 2 3 9 . 0 , Ġ 0 . 0 , Ġ" Vehicle Ġto ĠEverything Ġ( V 2 X ) ĠT DD ") ĊĠĠĠ Ġadd ( 6 5 , Ġ 1 9 2 0 . 0 , Ġ 2 0 1 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 2 0 0 . 0 , Ġ 1 3 1 0 7 2 . 0 , Ġ 1 3 1 9 7 1 . 0 , Ġ 6 5 5 3 6 . 0 , Ġ" Extended ĠI MT Ġ 2 1 0 0 ") ĊĠĠĠ Ġadd ( 6 6 , Ġ 1 7 1 0 . 0 , Ġ 1 7 8 0 . 0 , Ġ 2 1 1 0 . 0 , Ġ 2 2 0 0 . 0 , Ġ 1 3 1 9 7 2 . 0 , Ġ 1 3 2 6 7 1 . 0 , Ġ 6 5 5 3 6 . 0 , Ġ" AWS - 3 ") ĊĠĠĠ Ġadd ( 6 7 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 7 3 8 . 0 , Ġ 7 5 8 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ- 6 7 3 3 6 . 0 , Ġ" 7 0 0 ĠEU Ġ( Sup pl . ĠDL )") ĊĠĠĠ Ġadd ( 6 8 , Ġ 6 9 8 . 0 , Ġ 7 2 8 . 0 , Ġ 7 5 3 . 0 , Ġ 7 8 3 . 0 , Ġ 1 3 2 6 7 2 . 0 , Ġ 1 3 2 9 7 1 . 0 , Ġ 6 5 1 3 6 . 0 , Ġ" 7 0 0 ĠME ") ĊĠĠĠ Ġadd ( 6 9 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 2 5 7 0 . 0 , Ġ 2 6 2 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ- 6 7 8 3 6 . 0 , Ġ" IM T - E ĠF DD ĠCA ") ĊĠĠĠ Ġadd ( 7 0 , Ġ 1 6 9 5 . 0 , Ġ 1 7 1 0 . 0 , Ġ 1 9 9 5 . 0 , Ġ 2 0 2 0 . 0 , Ġ 1 3 2 9 7 2 . 0 , Ġ 1 3 3 1 2 1 . 0 , Ġ 6 4 6 3 6 . 0 , Ġ" AWS - 4 ") ĊĠĠĠ Ġadd ( 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġ 0 . 0 , Ġnull ) Ċ } Ċ Ċ /** Ċ Ġ* ĠStatic Ġlist Ġof Ġall ĠU MT S ĠB ands Ċ Ġ* Ġtaken Ġfrom Ġthe Ġ 3 G PP ĠTS Ġ 2 5 . 1 0 1 Ġstandard Ċ Ġ* Ġftp :// ftp . 3 g pp . org / Specs / latest / Rel - 1 4 / 2 5 _ series / 2 5 1 0 1 - e 0 0 . zip Ċ Ġ* Ġlatest Ġupdate Ġ 2 0 1 6 - 0 6 Ċ Ġ* Ċ Ġ* Ġorder Ġby Ġpriority Ġ( if Ġone Ġu ar fc n Ġis Ġcontained Ġin Ġmultiple Ġbands ) Ċ Ġ*/ Ċ private Ġval Ġum ts B ands : ĠSet < Cell Band Data > Ġ= Ġmutable Set Of < Cell Band Data >(). apply Ġ{ ĊĠĠĠ Ġadd ( 1 , Ġ 1 9 2 2 . 4 , Ġ 1 9 7 7 . 6 , Ġ 2 1 1 2 . 4 , Ġ 2 1 6 7 . 6 , Ġ 9 6 1 2 . 0 , Ġ 9 8 8 8 . 0 , Ġ- 9 5 0 . 0 , Ġ" 2 1 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 , Ġ 1 8 5 2 . 4 , Ġ 1 9 0 7 . 6 , Ġ 1 9 3 2 . 4 , Ġ 1 9 8 7 . 6 , Ġ 9 2 6 2 . 0 , Ġ 9 5 3 8 . 0 , Ġ- 4 0 0 . 0 , Ġ" 1 9 0 0 ĠM Hz ĠP CS ") ĊĠĠĠ Ġadd ( 3 , Ġ 1 7 1 2 . 4 , Ġ 1 7 8 2 . 6 , Ġ 1 8 0 7 . 4 , Ġ 1 8 7 7 . 6 , Ġ 9 3 7 . 0 , Ġ 1 2 8 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 1 8 0 0 ĠM Hz ĠD CS ") ĊĠĠĠ Ġadd ( 4 , Ġ 1 7 1 2 . 4 , Ġ 1 7 5 2 . 6 , Ġ 2 1 1 2 . 4 , Ġ 2 1 5 2 . 6 , Ġ 1 3 1 2 . 0 , Ġ 1 5 1 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" AWS - 1 ") ĊĠĠĠ Ġadd ( 5 , Ġ 8 2 6 . 4 , Ġ 8 4 6 . 6 , Ġ 8 7 1 . 4 , Ġ 8 9 1 . 6 , Ġ 4 1 3 2 . 0 , Ġ 4 2 3 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" 8 5 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 6 , Ġ 8 3 2 . 4 , Ġ 8 3 7 . 6 , Ġ 8 7 7 . 4 , Ġ 8 8 2 . 6 , Ġ 4 1 6 2 . 0 , Ġ 4 1 8 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 8 5 0 ĠM Hz ĠJ apan ") ĊĠĠĠ Ġadd ( 7 , Ġ 2 5 0 2 . 4 , Ġ 2 5 6 7 . 6 , Ġ 2 6 2 2 . 4 , Ġ 2 6 8 7 . 6 , Ġ 2 0 1 2 . 0 , Ġ 2 3 3 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 2 6 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 8 2 . 4 , Ġ 9 1 2 . 6 , Ġ 9 2 7 . 4 , Ġ 9 5 7 . 6 , Ġ 2 7 1 2 . 0 , Ġ 2 8 6 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" 9 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 9 , Ġ 1 7 5 2 . 4 , Ġ 1 7 8 2 . 4 , Ġ 1 8 4 7 . 4 , Ġ 1 8 7 7 . 4 , Ġ 8 7 6 2 . 0 , Ġ 8 9 1 2 . 0 , Ġ- 4 7 5 . 0 , Ġ" 1 8 0 0 ĠM Hz ĠJ apan ") ĊĠĠĠ Ġadd ( 1 0 , Ġ 1 7 1 2 . 4 , Ġ 1 7 6 7 . 6 , Ġ 2 1 1 2 . 4 , Ġ 2 1 6 7 . 6 , Ġ 2 8 8 7 . 0 , Ġ 3 1 6 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" AWS - 1 +") ĊĠĠĠ Ġadd ( 1 1 , Ġ 1 4 3 0 . 4 , Ġ 1 4 4 5 . 4 , Ġ 1 4 7 8 . 4 , Ġ 1 4 9 3 . 4 , Ġ 3 4 8 7 . 0 , Ġ 3 5 6 2 . 0 , Ġ- 2 2 5 . 0 , Ġ" 1 5 0 0 ĠM Hz ĠLower ") ĊĠĠĠ Ġadd ( 1 2 , Ġ 7 0 1 . 4 , Ġ 7 1 3 . 6 , Ġ 7 3 1 . 4 , Ġ 7 4 3 . 6 , Ġ 3 6 1 7 . 0 , Ġ 3 6 7 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 7 0 0 ĠM Hz ĠUS Ġa ") ĊĠĠĠ Ġadd ( 1 3 , Ġ 7 7 9 . 4 , Ġ 7 8 4 . 6 , Ġ 7 4 8 . 4 , Ġ 7 5 3 . 6 , Ġ 3 7 9 2 . 0 , Ġ 3 8 1 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 7 0 0 ĠM Hz ĠUS Ġc ") ĊĠĠĠ Ġadd ( 1 4 , Ġ 7 9 0 . 4 , Ġ 7 9 5 . 6 , Ġ 7 6 0 . 4 , Ġ 7 6 5 . 6 , Ġ 3 8 9 2 . 0 , Ġ 3 9 1 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 7 0 0 ĠM Hz ĠUS ĠPS ") ĊĠĠĠ Ġadd ( 1 9 , Ġ 8 3 2 . 4 , Ġ 8 4 2 . 6 , Ġ 8 7 7 . 4 , Ġ 8 8 7 . 6 , Ġ 3 1 2 . 0 , Ġ 3 6 3 . 0 , Ġ- 4 0 0 . 0 , Ġ" 8 0 0 ĠM Hz ĠJ apan ") ĊĠĠĠ Ġadd ( 2 0 , Ġ 8 3 4 . 4 , Ġ 8 5 9 . 6 , Ġ 7 9 3 . 4 , Ġ 8 1 8 . 6 , Ġ 4 2 8 7 . 0 , Ġ 4 4 1 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" 8 0 0 ĠM Hz ĠEU ĠDD ") ĊĠĠĠ Ġadd ( 2 1 , Ġ 1 4 5 0 . 4 , Ġ 1 4 6 0 . 4 , Ġ 1 4 9 8 . 4 , Ġ 1 5 0 8 . 4 , Ġ 4 6 2 . 0 , Ġ 5 1 2 . 0 , Ġ- 4 0 0 . 0 , Ġ" 1 5 0 0 ĠM Hz ĠUpper ") ĊĠĠĠ Ġadd ( 2 2 , Ġ 3 4 1 2 . 4 , Ġ 3 4 8 7 . 6 , Ġ 3 5 1 2 . 4 , Ġ 3 5 8 7 . 6 , Ġ 4 4 3 7 . 0 , Ġ 4 8 1 3 . 0 , Ġ- 2 2 5 . 0 , Ġ" 3 5 0 0 ĠM Hz ") ĊĠĠĠ Ġadd ( 2 5 , Ġ 1 8 5 2 . 4 , Ġ 1 9 1 2 . 6 , Ġ 1 9 3 2 . 4 , Ġ 1 9 9 2 . 6 , Ġ 4 8 8 7 . 0 , Ġ 5 1 8 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 1 9 0 0 + ĠM Hz ") ĊĠĠĠ Ġadd ( 2 6 , Ġ 8 1 6 . 4 , Ġ 8 4 6 . 6 , Ġ 8 6 1 . 4 , Ġ 8 9 1 . 6 , Ġ 5 5 3 7 . 0 , Ġ 5 6 8 8 . 0 , Ġ- 2 2 5 . 0 , Ġ" 8 5 0 + ĠM Hz ") Ċ } Ċ Ċ /** Ċ Ġ* ĠStatic Ġlist Ġof Ġall ĠG SM ĠB ands Ċ Ġ* Ġtaken Ġfrom Ġthe Ġ 3 G PP ĠTS Ġ 4 5 . 0 0 5 Ġstandard Ċ Ġ* Ġhttp :// www . 3 g pp . org / ftp / Specs / archive / 4 5 _ series / 4 5 . 0 0 5 / 4 5 0 0 5 - e 1 0 . zip Ċ Ġ* Ġlatest Ġupdate Ġ 2 0 1 7 - 0 6 Ċ Ġ* Ċ Ġ* Ġorder Ġby Ġpriority Ġ( if Ġone Ġu ar fc n Ġis Ġcontained Ġin Ġmultiple Ġbands ) Ċ Ġ*/ Ċ private Ġval Ġg sm B ands : ĠSet < Cell Band Data > Ġ= Ġmutable Set Of < Cell Band Data >(). apply Ġ{ ĊĠĠĠ Ġadd ( 5 , Ġ 8 2 4 . 2 , Ġ 8 4 8 . 8 , Ġ 8 6 9 . 2 , Ġ 8 9 3 . 8 , Ġ 1 2 8 . 0 , Ġ 2 5 1 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 8 5 0 ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 9 0 . 2 , Ġ 9 1 4 . 8 , Ġ 9 3 5 . 2 , Ġ 9 5 9 . 8 , Ġ 1 . 0 , Ġ 1 2 4 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 9 0 0 ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 9 0 . 0 , Ġ 9 1 4 . 8 , Ġ 9 3 5 . 0 , Ġ 9 5 9 . 8 , Ġ 0 . 0 , Ġ 1 2 4 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 9 0 0 ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 8 0 . 2 , Ġ 8 8 9 . 8 , Ġ 9 2 5 . 2 , Ġ 9 3 4 . 8 , Ġ 9 7 5 . 0 , Ġ 1 0 2 3 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 9 0 0 ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 9 0 . 0 , Ġ 9 1 4 . 8 , Ġ 9 3 5 . 0 , Ġ 9 5 9 . 8 , Ġ 0 . 0 , Ġ 1 2 4 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 9 0 0 ") ĊĠĠĠ Ġadd ( 8 , Ġ 8 7 6 . 2 , Ġ 8 8 9 . 8 , Ġ 9 2 1 . 2 , Ġ 9 3 4 . 8 , Ġ 9 5 5 . 0 , Ġ 1 0 2 3 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 9 0 0 ") ĊĠĠĠ Ġadd ( 3 , Ġ 1 7 1 0 . 2 , Ġ 1 7 8 4 . 8 , Ġ 1 8 0 5 . 2 , Ġ 1 8 7 9 . 8 , Ġ 5 1 2 . 0 , Ġ 8 8 5 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 1 8 0 0 ") ĊĠĠĠ Ġadd ( 2 , Ġ 1 8 5 0 . 2 , Ġ 1 9 0 9 . 8 , Ġ 1 9 3 0 . 2 , Ġ 1 9 8 9 . 8 , Ġ 5 1 2 . 0 , Ġ 8 1 0 . 0 , Ġ 0 . 0 , Ġ" G SM Ġ 1 9 0 0 ") Ċ }