import Ġcom . github . aj alt . cli kt . parameters . groups . Option Group Ċ import Ġcom . sk sam uel . scri mage . nio . Image Writer Ċ import Ġcom . sk sam uel . scri mage . nio . J peg Writer Ċ import Ġcom . sk sam uel . scri mage . nio . P ng Writer Ċ Ċ sealed Ġclass ĠFile type ( ĊĠĠĠ Ġval Ġwriter : ĠImage Writer , ĊĠĠĠ Ġval Ġextension : ĠString , Ċ ) Ġ: ĠOption Group () Ġ{ ĊĊĠĠĠ Ġval Ġname : ĠString ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġthis :: class . simple Name !!. lowercase () ĊĊĠĠĠ Ġval Ġchoice : ĠPair < String , ĠFile type > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġname Ġto Ġthis ĊĊĠĠĠ Ġobject ĠJ pg Ġ: ĠFile type ( writer Ġ= ĠJ peg Writer . No Compression , Ġextension Ġ= Ġ" jpg ") ĊĊĠĠĠ Ġobject ĠP ng Ġ: ĠFile type ( writer Ġ= ĠP ng Writer . No Compression , Ġextension Ġ= Ġ" png ") Ċ } Ċ