package Ġcom . luc a 0 2 0 4 0 0 . class iper lo . ui . cp Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . live Data Ċ import Ġcom . luc a 0 2 0 4 0 0 . class iper lo . classes . Data Item Ċ import Ġcom . luc a 0 2 0 4 0 0 . class iper lo . classes . Url Ċ import Ġkotlinx . coroutines . Dispatch ers Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġokhttp 3 . Request Ċ import Ġorg . js oup . J soup Ċ Ċ class ĠC p ViewModel Ġ: ĠViewModel () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġclient Ġ= ĠOk HttpClient () ĊĊĠĠĠ Ġval Ġdata Ġ= Ġlive Data ( Dispatch ers . IO ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠRequest . Builder (). url (" http :// www . class iper lo . alter v ista . org ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. get (). build () ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient . new Call ( request ). execute (). use Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! it . is Successful ) Ġthrow ĠException (" Unexpected Ġcode Ġ$ it ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= ĠJ soup . parse ( it . body ?. string ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemit ( doc . select ("# css menu Ġ> Ġul Ġ> Ġli "). filter Ġ{ Ġit . text () Ġ!= Ġ" Cont at to " Ġ}. map Ġ{ Ġelement Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠData Item ( element . text (), ĠUrl ( element . select (" a "). attr (" href "))) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. to Mutable List ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ