package Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details Ċ Ċ import Ġandroidx . lifecycle . Saved State Handle Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . certificate . Certificate Person Identifier Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . certificate . C wa Cov id Certificate . State Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . certificate . D cc V 1 Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . certificate . Test D cc V 1 Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . certificate . V acc ination D cc V 1 Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . repository . Certificate Container Id Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . repository . Recovery Certificate Container Id Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . repository . Test Certificate Container Id Ċ import Ġde . r ki . cor on aw arn app . covid certificate . common . repository . V acc ination Certificate Container Id Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . core . Person Certificates Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . core . Person Certificates Provider Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details . items . C wa User Card Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details . items . Person Details Qr Card Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details . items . Recovery Certificate Card Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details . items . Test Certificate Card Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . details . items . V acc ination Certificate Card Ċ import Ġde . r ki . cor on aw arn app . covid certificate . person . ui . overview . Person Color Shade Ċ import Ġde . r ki . cor on aw arn app . covid certificate . recovery . core . Recovery Certificate Ċ import Ġde . r ki . cor on aw arn app . covid certificate . test . core . Test Certificate Ċ import Ġde . r ki . cor on aw arn app . covid certificate . v acc ination . core . V acc inated Person Ċ import Ġde . r ki . cor on aw arn app . covid certificate . v acc ination . core . V acc ination Certificate Ċ import Ġde . r ki . cor on aw arn app . covid certificate . v acc ination . core . repository . V acc ination Repository Ċ import Ġde . r ki . cor on aw arn app . covid certificate . validation . core . D cc Validation Repository Ċ import Ġde . r ki . cor on aw arn app . util . Time And Date Extensions . to LocalDate User Tz Ċ import Ġde . r ki . cor on aw arn app . util . TimeStamp er Ċ import Ġde . r ki . cor on aw arn app . util . qrcode . co il . Co il Qr Code Ċ import Ġde . r ki . cor on aw arn app . util . ui . observe Once Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġio . mock k . Mock K Annotations Ċ import Ġio . mock k . Runs Ċ import Ġio . mock k . co Every Ċ import Ġio . mock k . co Verify Ċ import Ġio . mock k . every Ċ import Ġio . mock k . impl . annotations . Mock K Ċ import Ġio . mock k . just Ċ import Ġio . mock k . mock k Ċ import Ġkotlinx . coroutines . flow . flow Of Ċ import Ġorg . joda . time . Instant Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . extension . Extend With Ċ import Ġtest helpers . Base Test Ċ import Ġtest helpers . Test Dispatcher Provider Ċ import Ġtest helpers . extensions . Instant Executor Extension Ċ import Ġtest helpers . extensions . get Or Await Value Ċ Ċ @ Extend With ( Instant Executor Extension :: class ) Ċ class ĠPerson Details ViewModel Test Ġ: ĠBaseTest () Ġ{ ĊĠĠĠ Ġ@ Mock K Ġlateinit Ġvar Ġperson Certificates Provider : ĠPerson Certificates Provider ĊĠĠĠ Ġ@ Mock K Ġlateinit Ġvar Ġv acc ination Repository : ĠV acc ination Repository ĊĠĠĠ Ġ@ Mock K Ġlateinit Ġvar Ġd cc Validation Repository : ĠD cc Validation Repository ĊĠĠĠ Ġ@ Mock K Ġlateinit Ġvar Ġtime Stamp er : ĠTime Stamp er ĊĠĠĠ Ġ@ Mock K Ġlateinit Ġvar ĠviewModel : ĠPerson Details ViewModel ĊĠĠĠ Ġprivate Ġval Ġvc Container Id Ġ= ĠV acc ination Certificate Container Id (" 1 ") ĊĠĠĠ Ġprivate Ġval Ġtcs Container Id Ġ= ĠTest Certificate Container Id (" 2 ") ĊĠĠĠ Ġprivate Ġval Ġrc Container Id Ġ= ĠRecovery Certificate Container Id (" 3 ") ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ ĠMock K Annotations . init ( this , Ġtrue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Navig ates Ġback Ġwhen Ġno Ġperson Ġfound `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv acc Cert 1 Ġ= Ġmock V acc ination Certificate ( 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġv acc Cert 2 Ġ= Ġmock V acc ination Certificate ( 2 ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġperson Certificates Provider . person Certificates Ġ} Ġreturns Ġflow Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPerson Certificates ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Recovery Certificate (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Test Certificate (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv acc Cert 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv acc Cert 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġperson Details ViewModel (" person Identifier Code "). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġui State . observe Once Ġ{ Ġ} Ġ// ĠTo Ġtrigger Ġthe Ġflow ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevents . get Or Await Value () ĠshouldBe ĠBack ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` List Ġitems Ġand Ġnavigation `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv acc Cert 1 Ġ= Ġmock V acc ination Certificate ( 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġv acc Cert 2 Ġ= Ġmock V acc ination Certificate ( 2 ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġperson Certificates Provider . person Certificates Ġ} Ġreturns Ġflow Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Of ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPerson Certificates ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Recovery Certificate (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmock Test Certificate (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv acc Cert 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġv acc Cert 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġco Every Ġ{ Ġperson Certificates Provider . setCurrent C wa User ( any ()) Ġ} Ġjust ĠRuns ĊĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtime Stamp er . now UTC Ġ} Ġreturns ĠInstant . EPOCH ĊĠĠĠĠĠĠĠ Ġval Ġv acc inated Person Ġ= Ġmock k < V acc inated Person >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġv acc ination Certificates Ġ} Ġreturns Ġset Of ( v acc Cert 1 , Ġv acc Cert 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġidentifier Ġ} Ġreturns Ġcertificate Person Identifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġget V acc ination Status ( any ()) Ġ} Ġreturns ĠV acc inated Person . Status . IM M UN ITY ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġv acc ination Repository . v acc ination Infos Ġ} Ġreturns Ġflow Of ( set Of ( v acc inated Person )) ĊĠĠĠĠĠĠĠ Ġperson Details ViewModel ( certificate Person Identifier . code SHA 2 5 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġui State . get Or Await Value (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget ( 0 ) Ġas ĠPerson Details Qr Card . Item ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( get ( 1 ) Ġas ĠC wa User Card . Item ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Switch ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġco Verify Ġ{ Ġperson Certificates Provider . setCurrent C wa User ( any ()) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( get ( 2 ) Ġas ĠRecovery Certificate Card . Item ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents . get Or Await Value () ĠshouldBe ĠOpen Recovery Certificate Details ( rc Container Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( get ( 3 ) Ġas ĠTest Certificate Card . Item ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents . get Or Await Value () ĠshouldBe ĠOpen Test Certificate Details ( tcs Container Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( get ( 4 ) Ġas ĠV acc ination Certificate Card . Item ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents . get Or Await Value () ĠshouldBe ĠOpen V acc ination Certificate Details ( vc Container Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( get ( 5 ) Ġas ĠV acc ination Certificate Card . Item ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents . get Or Await Value () ĠshouldBe ĠOpen V acc ination Certificate Details ( vc Container Id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġperson Details ViewModel ( person Code : ĠString ) Ġ= ĠPerson Details ViewModel ( ĊĠĠĠĠĠĠĠ Ġdispatcher Provider Ġ= ĠTest Dispatcher Provider (), ĊĠĠĠĠĠĠĠ Ġv acc ination Repository Ġ= Ġv acc ination Repository , ĊĠĠĠĠĠĠĠ Ġd cc Validation Repository Ġ= Ġd cc Validation Repository , ĊĠĠĠĠĠĠĠ Ġtime Stamp er Ġ= Ġtime Stamp er , ĊĠĠĠĠĠĠĠ Ġperson Certificates Provider Ġ= Ġperson Certificates Provider , ĊĠĠĠĠĠĠĠ Ġperson Identifier Code Ġ= Ġperson Code , ĊĠĠĠĠĠĠĠ Ġcolor Shade Ġ= ĠPerson Color Shade . COLOR _ 1 , ĊĠĠĠĠĠĠĠ Ġcontainer Id Ġ= Ġvc Container Id , ĊĠĠĠĠĠĠĠ Ġsaved Instance Ġ= Ġmock k < Saved State Handle >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġget < Certificate Container Id >( any ()) Ġ} Ġreturns Ġvc Container Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġset ( any (), Ġany < Certificate Container Id >()) Ġ} Ġjust ĠRuns ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġmock Test Certificate (): ĠTest Certificate Ġ= Ġmock k < Test Certificate >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcertificate Id Ġ} Ġreturns Ġ" test Certificate Id " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĠfullName Ġ} Ġreturns Ġ" And rea ĠSch ne ider " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġraw Certificate Ġ} Ġreturns Ġmock k < Test D cc V 1 >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtest Ġ} Ġreturns Ġmock k < D cc V 1 . Test Certificate Data >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtest Type Ġ} Ġreturns Ġ" LP 6 4 6 4 - 4 " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġsample Collected At Ġ} Ġreturns ĠInstant . parse (" 2 0 2 1 - 0 5 - 3 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġheader Expires At Ġ} Ġreturns ĠInstant . parse (" 2 0 2 2 - 0 1 - 0 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ") ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcontainer Id Ġ} Ġreturns Ġtcs Container Id ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtest Type Ġ} Ġreturns Ġ" PC R - Test " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġdate OfBirth Formatted Ġ} Ġreturns Ġ" 1 8 . 0 4 . 1 9 4 3 " ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġsample Collected At Ġ} Ġreturns ĠInstant . parse (" 2 0 2 1 - 0 5 - 3 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ") ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġregistered At Ġ} Ġreturns ĠInstant . parse (" 2 0 2 1 - 0 5 - 2 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ") ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġperson Identifier Ġ} Ġreturns Ġcertificate Person Identifier ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĠisValid Ġ} Ġreturns Ġtrue ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĠgetState () Ġ} Ġreturns ĠState . Valid ( header Expires At ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġqr Code To Display Ġ} Ġreturns ĠCo il Qr Code (" qr Code ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmock V acc ination Certificate ( number : ĠInt Ġ= Ġ 1 , Ġfinal : ĠBoolean Ġ= Ġfalse ): ĠV acc ination Certificate Ġ= ĊĠĠĠĠĠĠĠ Ġmock k < V acc ination Certificate >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlocal Date Ġ= ĠInstant . parse (" 2 0 2 1 - 0 6 - 0 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z "). to LocalDate User Tz () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcertificate Id Ġ} Ġreturns Ġ" v acc ination Certificate Id $ number " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġraw Certificate Ġ} Ġreturns Ġmock k < V acc ination D cc V 1 >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġv acc ination Ġ} Ġreturns Ġmock k < D cc V 1 . V acc ination Data >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġdo se Number Ġ} Ġreturns Ġnumber ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtotal Series Of Do ses Ġ} Ġreturns Ġ 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġv acc inated On Ġ} Ġreturns Ġlocal Date ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcontainer Id Ġ} Ġreturns Ġvc Container Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġv acc inated On Ġ} Ġreturns Ġlocal Date ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġperson Identifier Ġ} Ġreturns Ġcertificate Person Identifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġdo se Number Ġ} Ġreturns Ġnumber ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġtotal Series Of Do ses Ġ} Ġreturns Ġ 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġis Final Shot Ġ} Ġreturns Ġfinal ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ ĠisValid Ġ} Ġreturns Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ ĠgetState () Ġ} Ġreturns ĠState . Valid ( expires At Ġ= ĠInstant . parse (" 2 0 2 2 - 0 1 - 0 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġqr Code To Display Ġ} Ġreturns ĠCo il Qr Code (" qr Code ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġmock Recovery Certificate (): ĠRecovery Certificate Ġ= ĊĠĠĠĠĠĠĠ Ġmock k < Recovery Certificate >(). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcertificate Id Ġ} Ġreturns Ġ" recovery Certificate Id " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġvalid Until Ġ} Ġreturns ĠInstant . parse (" 2 0 2 1 - 0 5 - 3 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z "). to LocalDate User Tz () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġperson Identifier Ġ} Ġreturns Ġcertificate Person Identifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġqr Code To Display Ġ} Ġreturns ĠCo il Qr Code (" qr Code ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ Ġcontainer Id Ġ} Ġreturns Ġrc Container Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ ĠisValid Ġ} Ġreturns Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevery Ġ{ ĠgetState () Ġ} Ġreturns ĠState . Valid ( expires At Ġ= ĠInstant . parse (" 2 0 2 2 - 0 1 - 0 1 T 1 1 : 3 5 : 0 0 . 0 0 0 Z ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġcertificate Person Identifier Ġ= ĠCertificate Person Identifier ( ĊĠĠĠĠĠĠĠ Ġdate OfBirth Formatted Ġ= Ġ" 0 1 . 0 1 . 2 0 2 0 ", ĊĠĠĠĠĠĠĠ ĠfirstName Standard ized Ġ= Ġ" firstName Standard ized ", ĊĠĠĠĠĠĠĠ ĠlastName Standard ized Ġ= Ġ" lastName Standard ized ", ĊĠĠĠ Ġ) Ċ } Ċ