package Ġus . j wf . a oc 2 0 1 9 . int code Ċ Ċ interface ĠMemory Ġ{ ĊĠ Ġfun Ġload From ( ĊĠĠĠ Ġsource : ĠLong Array , ĊĠĠĠ Ġsource Start : ĠInt Ġ= Ġ 0 , ĊĠĠĠ Ġsource End : ĠInt Ġ= Ġsource . size , ĊĠĠĠ Ġlocal Offset : ĠLong Ġ= Ġ 0 ĊĠ Ġ) ĊĊĠ Ġoperator Ġfun Ġget ( position : ĠLong ): ĠLong ĊĠ Ġoperator Ġfun Ġset ( position : ĠLong , Ġvalue : ĠLong ) ĊĠ Ġfun Ġclear () Ċ } Ċ Ċ class ĠHashMap Memory ( initial Size : ĠInt Ġ= Ġ 4 0 9 6 ) Ġ: ĠMemory Ġ{ ĊĠ Ġprivate Ġval Ġmemory Map Ġ= Ġmutable Map Of < Long , ĠLong >() ĊĊĠ Ġoverride Ġfun Ġload From ( source : ĠLong Array , Ġsource Start : ĠInt , Ġsource End : ĠInt , Ġlocal Offset : ĠLong ) Ġ{ ĊĠĠĠ Ġ( source Start Ġuntil Ġsource End ). forEach Ġ{ Ġi Ġ-> ĊĠĠĠĠĠ Ġmemory Map [ i Ġ+ Ġlocal Offset ] Ġ= Ġsource [ i ] ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġget ( position : ĠLong ): ĠLong Ġ= Ġmemory Map [ position ] Ġ?: Ġ 0 ĊĊĠ Ġoverride Ġfun Ġset ( position : ĠLong , Ġvalue : ĠLong ) Ġ{ ĊĠĠĠ Ġmemory Map [ position ] Ġ= Ġvalue ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġclear () Ġ= Ġmemory Map . clear () Ċ } Ċ