package Ġdog . snow . android re cruit test . repository . model Ċ Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġdog . snow . android re cruit test . ui . List Fragment Ċ import Ġdog . snow . android re cruit test . ui . model . Detail Ċ import Ġdog . snow . android re cruit test . ui . model . ListItem Ċ import Ġjava . util . ArrayList Ċ Ċ class ĠGlobal Ġ{ ĊĊĠĠĠ Ġ// state Ġvariables ĊĠĠĠ Ġvar Ġis Data Downloaded Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Detail Show ed Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Error Ġ= Ġfalse ĊĊĠĠĠ Ġvar Ġmanager : ĠFragment Manager ? Ġ= Ġnull ĊĠĠĠ Ġvar Ġfragment List : ĠList Fragment ? Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġitem List Ġ= ĠArrayList < ListItem >() ĊĠĠĠ Ġvar Ġdetail List Ġ= ĠHashMap < Int , Detail >() ĊĊĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġm Instance : ĠGlobal ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġ@ Synchron ized Ġfun ĠgetInstance (): ĠGlobal ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( null Ġ== Ġm Instance ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Instance Ġ= ĠGlobal () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġm Instance ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }