package Ġcom . l xd nz . nz . aria or iente ering Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . SharedPreferences Ċ import Ġandroid . net . Uri Ċ import Ġandroid . support . design . widget . Tab Layout Ċ import Ġandroid . support . v 7 . app . AppCompatActivity Ċ Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . support . v 4 . app . FragmentManager Ċ import Ġandroid . support . v 4 . app . Fragment Pager Adapter Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . view .* Ċ import Ġandroid . widget . Toast Ċ import Ġcom . google . firebase . auth . Firebase Auth Ċ import Ġcom . l xd nz . nz . aria or iente ering . dialogs . Login Dialog Activity Ċ import Ġcom . l xd nz . nz . aria or iente ering . fragments . Help Fragment Ċ import Ġcom . l xd nz . nz . aria or iente ering . fragments . Home Fragment Ċ import Ġcom . l xd nz . nz . aria or iente ering . fragments . Map Fragment Ċ import Ġcom . l xd nz . nz . aria or iente ering . model . User Ċ import Ġcom . l xd nz . nz . aria or iente ering . services . Location Service Ċ Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ import Ġkotlinx . android . synt hetic . main . fragment _ main . view .* Ċ import Ġnl . k omp onent s . kov enant . task Ċ import Ġnl . k omp onent s . kov enant . then Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity (), ĠHome Fragment . On Fragment Interaction Listener , ĊĠĠĠĠĠĠĠ ĠMap Fragment . On Fragment Interaction Listener , ĠHelp Fragment . On Fragment Interaction Listener Ġ{ ĊĊĠĠĠ Ġprivate Ġvar ĠLOG GED _ IN Ġ= Ġ" Logged ĠOut " ĊĠĠĠ Ġlateinit Ġprivate Ġvar Ġsave State : ĠBundle ĊĠĠĠ Ġlateinit Ġvar Ġlocation Service : ĠLocation Service ĊĠĠĠ Ġval Ġm Auth Ġ= ĠFirebase Auth . getInstance () ĊĠĠĠ Ġlateinit Ġvar Ġshared Preferences : ĠSharedPreferences ĊĠĠĠ Ġval ĠMY _ PRE FS Ġ= Ġ" My Prefs " ĊĠĠĠ Ġval ĠACT IVE Ġ= Ġ" active " ĊĊĊĠĠĠ Ġ// Ġrequired Ġfor Ġcallback Ġimplementation Ġfrom ĠF rag ments ĊĠĠĠ Ġoverride Ġfun Ġon Fragment Interaction ( uri : ĠUri ) Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" not Ġimplemented ") Ġ// To Ġchange Ġbody Ġof Ġcreated Ġfunctions Ġuse ĠFile Ġ| ĠSettings Ġ| ĠFile ĠTemplates . ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġ[ android . support . v 4 . view . Pager Adapter ] Ġthat Ġwill Ġprovide ĊĠĠĠĠ Ġ* Ġfragments Ġfor Ġeach Ġof Ġthe Ġsections . ĠWe Ġuse Ġa ĊĠĠĠĠ Ġ* Ġ{@ link ĠFragment Pager Adapter } Ġderivative , Ġwhich Ġwill Ġkeep Ġevery ĊĠĠĠĠ Ġ* Ġloaded Ġfragment Ġin Ġmemory . ĠIf Ġthis Ġbecomes Ġtoo Ġmemory Ġint ensive , Ġit ĊĠĠĠĠ Ġ* Ġmay Ġbe Ġbest Ġto Ġswitch Ġto Ġa ĊĠĠĠĠ Ġ* Ġ[ android . support . v 4 . app . Fragment State Pager Adapter ]. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġvar Ġm Sections Pager Adapter : ĠSe ctions Pager Adapter ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġ// ĠLogin ĠIntent ĊĠĠĠĠĠĠĠ Ġval Ġi Ġ= ĠIntent ( this , ĠLogin Dialog Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġ// Ġcheck Ġif Ġlogged Ġin Ġ: ĠLaunch ĠLogin ĠActivity Ġif Ġnot ĊĠĠĠĠĠĠĠ Ġif Ġ( m Auth . currentUser Ġ== Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( i ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// TODO : ĠUpdate Ġthe ĠLOG GED _ IN Ġtext Ġon Ġthe ĠUI ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLOG GED _ IN Ġ= Ġ" Logged ĠIn " ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġset Support ActionBar ( toolbar ) ĊĠĠĠĠĠĠĠ Ġ// setUp Start Button () ĊĠĠĠĠĠĠĠ Ġ// ĠCreate Ġthe Ġadapter Ġthat Ġwill Ġreturn Ġa Ġfragment Ġfor Ġeach Ġof Ġthe Ġthree ĊĠĠĠĠĠĠĠ Ġ// Ġprimary Ġsections Ġof Ġthe Ġactivity . ĊĠĠĠĠĠĠĠ Ġm Sections Pager Adapter Ġ= ĠSe ctions Pager Adapter ( support FragmentManager ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġup Ġthe ĠView Pager Ġwith Ġthe Ġsections Ġadapter . ĊĠĠĠĠĠĠĠ Ġcontainer . adapter Ġ= Ġm Sections Pager Adapter ĊĊĠĠĠĠĠĠĠ Ġcontainer . add On Page ChangeListener ( Tab Layout . Tab Layout On Page ChangeListener ( tabs )) ĊĠĠĠĠĠĠĠ Ġtabs . add On Tab Selected Listener ( Tab Layout . ViewPager On Tab Selected Listener ( container )) ĊĊĠĠĠĠĠĠĠ Ġ// ĠButton ĠTouch ĠListener ĊĊĠĠĠĠĠĠĠ Ġvar Ġd X Ġ= Ġ 0 f ĊĠĠĠĠĠĠĠ Ġvar Ġd Y Ġ= Ġ 0 f ĊĠĠĠĠĠĠĠ Ġvar Ġstart X Ġ= Ġ 0 f ĊĠĠĠĠĠĠĠ Ġvar Ġstart Y Ġ= Ġ 0 f ĊĊĠĠĠĠĠĠĠ Ġfab . setOn Touch Listener ( View . On Touch Listener Ġ{ v : ĠView , Ġevent : ĠMotion Event Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( event . action Mask ed ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMotion Event . ACTION _ DOWN Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġd X Ġ= Ġv . x Ġ- Ġevent . raw X ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġd Y Ġ= Ġv . y Ġ- Ġevent . raw Y ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart X Ġ= Ġevent . raw X ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Y Ġ= Ġevent . raw Y ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMotion Event . ACTION _ MOVE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv . set Y ( event . raw Y Ġ+ Ġd Y ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv . set X ( event . raw X Ġ+ Ġd X ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMotion Event . ACTION _ UP Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Math . abs ( start X Ġ- Ġevent . raw X ) Ġ< Ġ 1 0 Ġ&& ĠMath . abs ( start Y Ġ- Ġevent . raw Y ) Ġ< Ġ 1 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( this , Ġ" Clicked !", ĠToast . LENGTH _ SHORT ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( i ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġshared Preferences Ġ= Ġget SharedPreferences ( MY _ PRE FS , ĠContext . MODE _ PRIVATE ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onStart () ĊĠĠĠĠĠĠĠ ĠLog . i (" Main ", Ġ" On Start () ") ĊĠĠĠĠĠĠĠ Ġcheck Author ised User () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠsetUp Start Button () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// TODO Ġimplement Ġstart Button Ġactivities ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcheck Author ised User () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( m Auth . currentUser Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" Main ", Ġ" Firebase ĠUser Ġactive ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( shared Preferences . contains ( ACTIVE )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( shared Preferences . getBoolean ( ACTIVE , Ġfalse )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtask Ġ{ ĠUser . activate ( m Auth . currentUser !!. uid ) Ġ} Ġthen Ġ{ Ġit Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . add On Complete Listener Ġ{ Ġactivate Local User () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtask Ġ{ ĠUser . retrieve ( m Auth . currentUser !!. uid ) Ġ} Ġthen Ġ{ Ġit Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . add On Complete Listener Ġ{ Ġuser Ġ-> Ġif Ġ(! user . result . active ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" Main ", Ġ" Adjust ing Ġuser Ġactive ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUser . activate ( user . result . uid )} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Options Menu ( menu : ĠMenu ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠInf late Ġthe Ġmenu ; Ġthis Ġadds Ġitems Ġto Ġthe Ġaction Ġbar Ġif Ġit Ġis Ġpresent . ĊĠĠĠĠĠĠĠ Ġmenu Inflater . inflate ( R . menu . menu _ main , Ġmenu ) ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Options ItemSelected ( item : ĠMenuItem ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠHandle Ġaction Ġbar Ġitem Ġclicks Ġhere . ĠThe Ġaction Ġbar Ġwill ĊĠĠĠĠĠĠĠ Ġ// Ġautomatically Ġhandle Ġclicks Ġon Ġthe ĠHome / Up Ġbutton , Ġso Ġlong ĊĠĠĠĠĠĠĠ Ġ// Ġas Ġyou Ġspecify Ġa Ġparent Ġactivity Ġin ĠAndroid Manifest . xml . ĊĠĠĠĠĠĠĠ Ġval Ġid Ġ= Ġitem . itemId ĊĊĠĠĠĠĠĠĠ Ġif Ġ( id Ġ== ĠR . id . action _ settings ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Options ItemSelected ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġlocation Service Ġ= ĠLocation Service ( this . application Context ) ĊĠĠĠĠĠĠĠ Ġdeactivate Local User () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( location Service . is Service Running ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocation Service . stop () ĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġthis . stop Service ( Intent ( this , ĠLocation Service :: class . java )) ĊĠĠĠĠĠĠĠ Ġif Ġ( m Auth . currentUser Ġ!= Ġnull ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠUser . deactivate ( m Auth . currentUser !!. uid ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsuper . on Stop () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ ĠLog . i (" Main ", Ġ" on Resume () ") ĊĠĠĠĠĠĠĠ Ġlocation Service Ġ= ĠLocation Service ( this . application Context ) ĊĊĊĠĠĠĠĠĠĠ Ġif Ġ(! location Service . is Service Running ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . start Service ( Intent ( this , ĠLocation Service :: class . java )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdeactivate Local User () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġshared Preferences . edit () ĊĠĠĠĠĠĠĠ Ġeditor . put Boolean ( ACTIVE , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġactivate Local User () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġshared Preferences . edit () ĊĠĠĠĠĠĠĠ Ġeditor . put Boolean ( ACTIVE , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġeditor . apply () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġ[ Fragment Pager Adapter ] Ġthat Ġreturns Ġa Ġfragment Ġcorresponding Ġto ĊĠĠĠĠ Ġ* Ġone Ġof Ġthe Ġsections / tabs / pages . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġinner Ġclass ĠSe ctions Pager Adapter ( fm : ĠFragment Manager ) Ġ: ĠFragment Pager Adapter ( fm ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem ( position : ĠInt ): ĠFragment ? Ġ= Ġwhen Ġ( position ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠgetItem Ġis Ġcalled Ġto Ġinstantiate Ġthe Ġfragment Ġfor Ġthe Ġgiven Ġpage . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠReturn Ġa ĠPlace holder Fragment Ġ( defined Ġas Ġa Ġstatic Ġinner Ġclass Ġbelow ). ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// return ĠPlace holder Fragment . newInstance ( position Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠHome Fragment . newInstance ( position . toString (), LOG GED _ IN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠOther ĠF rag ments ĠHere ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> ĠMap Fragment . newInstance ( position . toString (), Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> ĠHelp Fragment . newInstance ( position . toString (), Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠShow Ġ 3 Ġtotal Ġpages . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġ 3 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġplaceholder Ġfragment Ġcontaining Ġa Ġsimple Ġview . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġclass ĠPlace holder Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġroot View Ġ= Ġinflater . inflate ( R . layout . fragment _ main , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġroot View . section _ label . text Ġ= ĠgetString ( R . string . section _ format , Ġarguments ?. getInt ( ARG _ SECTION _ NUMBER )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġroot View ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠThe Ġfragment Ġargument Ġrepresenting Ġthe Ġsection Ġnumber Ġfor Ġthis ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġfragment . ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval ĠARG _ SECTION _ NUMBER Ġ= Ġ" section _ number " ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* ĠReturns Ġa Ġnew Ġinstance Ġof Ġthis Ġfragment Ġfor Ġthe Ġgiven Ġsection ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ* Ġnumber . ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( section Number : ĠInt ): ĠPlace holder Fragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment Ġ= ĠPlace holder Fragment () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Int ( ARG _ SECTION _ NUMBER , Ġsection Number ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . arguments Ġ= Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ