import Ġjava . util .* Ċ Ċ private Ġoperator Ġfun ĠInt . times ( map : ĠMutable Map < String , ĠInt >): ĠMutable Map < String , ĠInt > Ġ{ ĊĠ Ġval Ġr Ġ= Ġmutable Map Of < String , ĠInt >() ĊĠ Ġfor Ġ( key Ġin Ġmap . keys ) Ġ{ ĊĠĠĠ Ġr [ key ] Ġ= Ġthis Ġ* Ġmap [ key ] !! ĊĠ Ġ} ĊĠ Ġreturn Ġr Ċ } Ċ Ċ private Ġoperator Ġfun ĠMutable Map < String , ĠInt >. plus Assign ( map : ĠMutable Map < String , ĠInt >) Ġ{ ĊĠ Ġfor Ġ( key Ġin Ġmap . keys ) Ġ{ ĊĠĠĠ Ġthis [ key ] Ġ= Ġ( map [ key ] Ġ?: Ġ 0 ) Ġ+ Ġ( this [ key ] Ġ?: Ġ 0 ) ĊĠ Ġ} Ċ } Ċ Ċ fun Ġmain () Ġ{ ĊĠ Ġval Ġs Ġ= ĠScanner ( System .` in `) ĊĊĠ Ġval Ġcontents Ġ= Ġmutable Map Of < String , ĠMutable Map < String , ĠInt >>() ĊĠ Ġwhile Ġ( s . hasNext ()) Ġ{ ĊĠĠĠ Ġval Ġcolor Ġ= Ġs . next () Ġ+ Ġ' Ġ' Ġ+ Ġs . next () ĊĠĠĠ Ġcontents [ color ] Ġ= Ġmutable Map Of () ĊĠĠĠ Ġs . next () Ġ// Ġbags ĊĠĠĠ Ġs . next () Ġ// Ġcontain ĊĠĠĠ Ġdo Ġ{ ĊĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcount Ġ= Ġs . nextInt () ĊĠĠĠĠĠĠĠ Ġval Ġchild Color Ġ= Ġs . next () Ġ+ Ġ' Ġ' Ġ+ Ġs . next () ĊĠĠĠĠĠĠĠ Ġcontents [ color ] ! ![ child Color ] Ġ= Ġcount ĊĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠInput Mismatch Exception ) Ġ{ ĊĠĠĠĠĠĠĠ Ġs . next () Ġ// Ġno ĊĠĠĠĠĠĠĠ Ġs . next () Ġ// Ġother ĊĠĠĠĠĠĠĠ Ġs . next () Ġ// Ġbags . ĊĠĠĠĠĠĠĠ Ġbreak ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġwhile Ġ( s . next (). endsWith (',' )) ĊĠ Ġ} ĊĊĠ Ġval Ġexpanded Contents Ġ= Ġmutable Map Of < String , ĠMutable Map < String , ĠInt >>() ĊĠ Ġfun Ġexpand Color ( color : ĠString ) Ġ{ ĊĠĠĠ Ġif Ġ( expanded Contents . containsKey ( color )) Ġ{ ĊĠĠĠĠĠ Ġreturn ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġexpanded Contents [ color ] Ġ= Ġmutable Map Of () ĊĠĠĠ Ġfor Ġ( child Color Ġin Ġcontents [ color ] !!. keys ) Ġ{ ĊĠĠĠĠĠ Ġexpand Color ( child Color ) ĊĠĠĠĠĠ Ġif Ġ( expanded Contents [ child Color ] !!. isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġexpanded Contents [ color ] ! ![ child Color ] Ġ= Ġcontents [ color ] ! ![ child Color ] !! ĊĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġexpanded Contents [ color ]?. plus Assign ( contents [ color ] ! ![ child Color ] !! Ġ* Ġexpanded Contents [ child Color ] !! ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġexpanded Contents [ color ] ! ![ child Color ] Ġ= Ġcontents [ color ] ! ![ child Color ] !! ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĠ Ġfor Ġ( color Ġin Ġcontents . keys ) Ġ{ ĊĠĠĠ Ġexpand Color ( color ) ĊĠ Ġ} ĊĊĠ Ġprintln ( expanded Contents [" sh iny Ġgold "] !!. values . sum ()) Ċ } Ċ