package Ġdev . ols he v ski . safe args Ċ Ċ import Ġandroid . net . Uri Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . navigation . Nav Type Ċ Ċ object ĠEn coded StringType Ġ: ĠNav Type < String ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠString ? Ġ= Ġbundle . getString ( key ) ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠString Ġ= ĠUri . decode ( value ) Ċ Ċ } Ċ Ċ object ĠNullable Boolean Type Ġ: ĠNav Type < Boolean ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠBoolean ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Boolean ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠBoolean ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . getBoolean ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠBoolean Ġ= Ġvalue . to Boolean () Ċ Ċ } Ċ Ċ object ĠNullable Byte Type Ġ: ĠNav Type < Byte ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠByte ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Byte ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠByte ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . getByte ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠByte Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( value . startsWith (" 0 x ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . substring ( 2 ). to Byte ( 1 6 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . to Byte () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ object ĠNullable Short Type Ġ: ĠNav Type < Short ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠShort ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Short ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠShort ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . get Short ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠShort Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( value . startsWith (" 0 x ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . substring ( 2 ). to Short ( 1 6 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . to Short () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ object ĠNullable Int Type Ġ: ĠNav Type < Int ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠInt ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Int ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠInt ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . getInt ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( value . startsWith (" 0 x ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . substring ( 2 ). toInt ( 1 6 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue . toInt () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ object ĠNullable Long Type Ġ: ĠNav Type < Long ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠLong ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Long ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠLong ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . getLong ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠLong Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAt Ġruntime Ġthe ĠL Ġsuffix Ġis Ġoptional , Ġcontr ary Ġto Ġthe ĠSafe ĠArgs Ġplugin . ĊĠĠĠĠĠĠĠ Ġ// ĠThis Ġis Ġin Ġorder Ġto Ġbe Ġable Ġto Ġparse Ġlong Ġnumbers Ġpassed Ġas Ġdeep Ġlink ĠURL ĊĠĠĠĠĠĠĠ Ġ// Ġparameters ĊĠĠĠĠĠĠĠ Ġvar Ġlocal Value Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġif Ġ( value . endsWith (" L ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocal Value Ġ= Ġlocal Value . substring ( 0 , Ġvalue . length Ġ- Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( value . startsWith (" 0 x ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocal Value . substring ( 2 ). to Long ( 1 6 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocal Value . to Long () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ object ĠNullable Float Type Ġ: ĠNav Type < Float ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠFloat ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Float ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠFloat ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . get Float ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠFloat Ġ= Ġvalue . toFloat () Ċ Ċ } Ċ Ċ object ĠNullable Double Type Ġ: ĠNav Type < Double ? >( is Nullable Allowed Ġ= Ġtrue ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġput ( bundle : ĠBundle , Ġkey : ĠString , Ġvalue : ĠDouble ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Double ( key , Ġvalue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ( bundle : ĠBundle , Ġkey : ĠString ): ĠDouble ? Ġ= Ġif Ġ( bundle . containsKey ( key )) Ġ{ ĊĠĠĠĠĠĠĠ Ġbundle . getDouble ( key ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġparse Value ( value : ĠString ): ĠDouble Ġ= Ġvalue . toDouble () Ċ Ċ } ĊĊ