package Ġfr . cop per nic . lib . mr z . model Ċ Ċ import Ġfr . cop per nic . lib . mr z . parser . extensions . sanitize Ċ Ċ /** Ċ Ġ* ĠList Ġof Ġsupported Ġdocument Ġtypes Ċ Ġ*/ Ċ enum Ġclass ĠM rz Document Type Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġpassport , ĠP Ġor ĠIP . ĊĠĠĠĠ Ġ* Ġ... Ġmaybe ĠTr avel ĠDocument Ġthat Ġis Ġvery Ġsimilar Ġto Ġthe Ġpassport . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠPass port , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGeneral ĠI Ġtype Ġ( bes ides ĠIP ). ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠType I , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGeneral ĠA Ġtype Ġ( bes ides ĠAC ). ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠType A , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCre w Ġmember Ġ( AC ). ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠCre w Member , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGeneral Ġtype ĠC . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠType C , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠType ĠV Ġ( Vis a ). ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠType V , ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ*/ ĊĠĠĠ ĠM igr ant ; ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġfrom M rz ( mr z : ĠString ): ĠM rz Document Type Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 2 - letter Ġchecks ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( mr z . sanitize ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" AC " Ġ-> ĠCre w Member ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" ME " Ġ-> ĠM igr ant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" TD " Ġ-> ĠM igr ant Ġ// Ġtravel Ġdocument ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" IP " Ġ-> ĠPass port ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġwhen Ġ( mr z [ 0 ]) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' T ', Ġ' P ' Ġ-> ĠPass port ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' A ' Ġ-> ĠType A ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' C ' Ġ-> ĠType C ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' V ' Ġ-> ĠType V ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' I ' Ġ-> ĠType I Ġ// Ġidentity Ġcard Ġor Ġres idence Ġpermit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ' R ' Ġ-> ĠM igr ant Ġ// Ġrecogn ised Ġref uge e Ġunder Ġthe Ġ 1 9 5 1 ĠGene va ĠCon vention ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠM rz Parser Exception ( ErrorType . Unsupported Document Type ( mr z )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ