package Ġkim . w oose op . calcul ist . calculator Ċ Ċ import Ġkim . w oose op . calcul ist . persistence . Preferences Ċ Ċ object ĠCalculator Factory Ġ{ ĊĊĠĠĠ Ġfun Ġfrom Prefs ( prefs : ĠPreferences , Ġtype : ĠCalculator Type ): ĠSimple Calculator Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcreate Ġ= Ġwhen Ġ( type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCalculator Type . SIMPLE Ġ-> Ġ:: Simple Calculator ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcreate ( prefs . computed ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠonUpdate Ġ{ Ġprefs . computed Ġ= Ġit Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ