package Ġarrow . opt ics Ċ Ċ import Ġarrow . opt ics . type classes . Id Ċ Ċ /** Ċ Ġ* Ġ[ PI so ] Ġthat Ġdefines Ġthe Ġequality Ġbetween Ġa Ġ[ Id ] Ġwrapped Ġtype Ġ[ A ] Ġand Ġthe Ġtype Ġ[ A ] Ġitself . Ċ Ġ*/ Ċ internal Ġfun Ġ< A , ĠB > ĠId . Companion . to P Value (): ĠPI so < Id < A >, ĠId < B >, ĠA , ĠB > Ġ= ĠPI so ( ĊĠ Ġget Ġ= ĠId < A >:: value , ĊĠ Ġreverse Get Ġ= Ġ:: Id Ċ ) Ċ Ċ /** Ċ Ġ* Ġ[ Iso ] Ġthat Ġdefines Ġthe Ġequality Ġbetween Ġa Ġ[ Id ] Ġwrapped Ġtype Ġ[ A ] Ġand Ġthe Ġtype Ġ[ A ] Ġitself . Ċ Ġ*/ Ċ internal Ġfun Ġ< A > ĠId . Companion . to Value (): ĠI so < Id < A >, ĠA > Ġ= Ġto P Value () Ċ