package Ġno . nav . hel se . person . info try gd h istor ikk Ċ Ċ import Ġno . nav . hel se . hen del ser . Per i ode Ċ import Ġno . nav . hel se . hen del ser . til Ċ import Ġno . nav . hel se . person .* Ċ import Ġno . nav . hel se . som F Ã¸ d se ls nummer Ċ import Ġno . nav . hel se . sy k dom st ids lin je . Dag Ċ import Ġno . nav . hel se . sy k dom st ids lin je . Sy k dom st ids lin je Ċ import Ġno . nav . hel se . test helpers .* Ċ import Ġno . nav . hel se . ut bet aling st ids lin je . U tb et aling st ids lin je Ċ import Ġno . nav . hel se . ut bet aling st ids lin je . U tb et aling st ids lin je . U tb et al ings dag .* Ċ import Ġno . nav . hel se . Ã¸ k onom i . In n te kt Ċ import Ġno . nav . hel se . Ã¸ k onom i . In n te kt . Companion . ING EN Ċ import Ġno . nav . hel se . Ã¸ k onom i . In n te kt . Companion . dag lig Ċ import Ġno . nav . hel se . Ã¸ k onom i . In n te kt . Companion . m Ã¥ ned lig Ċ import Ġno . nav . hel se . Ã¸ k onom i . Pro sent del . Companion . pro sent Ċ import Ġno . nav . hel se . Ã¸ k onom i . Ã ĺ k onom i Ċ import Ġorg . junit . jupiter . api . Assertions .* Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġjava . time . LocalDate Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . util .* Ċ import Ġkotlin . math . round ToInt Ċ Ċ internal Ġclass ĠInfo try gd h istor ikk Element Test Ġ{ ĊĊĠĠĠ Ġprivate Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠOR G NUM MER Ġ= Ġ" 9 8 7 6 5 4 3 2 1 " ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġk ilde Ġ= ĠTest Event . test k ilde ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġaktiv it ets log g : ĠA ktiv it ets log g ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġreset Seed ( 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġaktiv it ets log g Ġ= ĠA ktiv it ets log g () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lik Ġh istor ikk `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġperiod er Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 . jan uar , Ġ 3 1 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" org nr ", Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" org nr ", Ġ 1 . jan uar , Ġ 2 5 0 0 0 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" 0 1 " Ġto Ġ 1 . jan uar ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġug yl di ge Period er Ġ= ĠlistOf ( U gy ld ig Per i ode ( 1 . jan uar , Ġ 1 . jan uar , Ġ 1 0 0 )) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement (). hashCode (), Ġh istor ik ke lement (). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement (), Ġh istor ik ke lement ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement (). hashCode (), Ġh istor ik ke lement ( period er ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( period er ). hashCode (), Ġh istor ik ke lement ( period er ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( period er ), Ġh istor ik ke lement ( period er )) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( inn tek ter Ġ= Ġinn tek ter ). hashCode (), Ġh istor ik ke lement ( inn tek ter Ġ= Ġinn tek ter ). hashCode ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement ( period er , Ġinn tek ter ). hashCode (), Ġh istor ik ke lement ( inn tek ter Ġ= Ġinn tek ter ). hashCode ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement ( period er , Ġinn tek ter ), Ġh istor ik ke lement ( inn tek ter Ġ= Ġinn tek ter )) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh istor ik ke lement ( period er , Ġinn tek ter , Ġar be id sk ategor ik oder ). hashCode (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh istor ik ke lement ( period er , Ġinn tek ter , Ġar be id sk ategor ik oder ). hashCode () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement ( period er , Ġinn tek ter ). hashCode (), Ġh istor ik ke lement ( period er , Ġinn tek ter , Ġar be id sk ategor ik oder ). hashCode ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement ( period er , Ġinn tek ter ), Ġh istor ik ke lement ( period er , Ġinn tek ter , Ġar be id sk ategor ik oder )) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement (). hashCode (), Ġh istor ik ke lement ( ug yl di ge Period er Ġ= Ġug yl di ge Period er ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( ug yl di ge Period er Ġ= Ġug yl di ge Period er ). hashCode (), Ġh istor ik ke lement ( ug yl di ge Period er Ġ= Ġug yl di ge Period er ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( ug yl di ge Period er Ġ= Ġug yl di ge Period er ), Ġh istor ik ke lement ( ug yl di ge Period er Ġ= Ġug yl di ge Period er )) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( h istor ik ke lement (). hashCode (), Ġh istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ). hashCode (), Ġh istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ). hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( h istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ), Ġh istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` like Ġperiod er `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfer ie Ġ= ĠFri peri ode ( 1 . jan uar , Ġ 3 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġuk j ent Ġ= ĠU kj ent Info try gd peri ode ( 1 . jan uar , Ġ 3 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġut bet aling AG 1 Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġval Ġut bet aling AG 2 Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 2 ", Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( fer ie , Ġfer ie ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( uk j ent , Ġuk j ent ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( fer ie , Ġuk j ent ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( fer ie . hashCode (), Ġuk j ent . hashCode ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( fer ie , Ġut bet aling AG 1 ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( fer ie . hashCode (), Ġut bet aling AG 1 . hashCode ()) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( ut bet aling AG 1 , Ġut bet aling AG 2 ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( ut bet aling AG 1 . hashCode (), Ġut bet aling AG 2 . hashCode ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ut bet aling AG 1 , Ġut bet aling AG 1 ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( ut bet aling AG 1 . hashCode (), Ġut bet aling AG 1 . hashCode ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lik Ġper i ode Ġ- Ġav r und ing `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpro sent Ġ= Ġ 3 0 . pro sent ĊĠĠĠĠĠĠĠ Ġval Ġinn te kt 1 Ġ= Ġ 5 0 5 . dag lig ( pro sent ) ĊĠĠĠĠĠĠĠ Ġval Ġinn te kt 2 Ġ= Ġinn te kt 1 . reflection Ġ{ Ġ_, ĠmÃ¥ ned lig , Ġ_, Ġ_ Ġ-> ĠmÃ¥ ned lig Ġ}. m Ã¥ ned lig ĊĠĠĠĠĠĠĠ Ġval Ġper i ode 1 Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" org nr ", Ġ 1 . jan uar , Ġ 1 . jan uar , Ġpro sent , Ġinn te kt 1 ) ĊĠĠĠĠĠĠĠ Ġval Ġper i ode 2 Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" org nr ", Ġ 1 . jan uar , Ġ 1 . jan uar , Ġpro sent , Ġinn te kt 2 ) ĊĠĠĠĠĠĠĠ Ġassert Not Equals ( inn te kt 1 , Ġinn te kt 2 ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( peri ode 1 , Ġper i ode 2 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ut bet aling st ids lin je Ġ- Ġfer ie `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfer ie Ġ= ĠFri peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠU tb et aling st ids lin je Ins pe kt Ã¸ r ( fer ie . ut bet aling st ids lin je ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 , Ġins pe kt Ã¸ r . f rid ag T eller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ut bet aling st ids lin je Ġ- Ġuk j ent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfer ie Ġ= ĠU kj ent Info try gd peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠU tb et aling st ids lin je Ins pe kt Ã¸ r ( fer ie . ut bet aling st ids lin je ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 0 , Ġins pe kt Ã¸ r . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ut bet aling st ids lin je Ġ- Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet aling Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠU tb et aling st ids lin je Ins pe kt Ã¸ r ( ut bet aling . ut bet aling st ids lin je ()) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 8 , Ġins pe kt Ã¸ r . nav Dag T eller ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 , Ġins pe kt Ã¸ r . nav Hel g Dag T eller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sam let Ġut bet aling st ids lin je `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 1 . jan uar , Ġ 2 0 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠU kj ent Info try gd peri ode ( 2 1 . jan uar , Ġ 3 1 . jan uar ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelement . ut bet aling st ids lin je (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar Ġtil Ġ 2 0 . jan uar , Ġit . peri ode ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` f jer ner Ġh istor is ke Ġut bet al inger `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 1 . jan uar , Ġ 2 0 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 2 1 . jan uar , Ġ 3 1 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelement . fj ern H istor ikk ( t ids lin je Of ( 1 0 . NAV , Ġ 1 0 . FR I , Ġ 1 1 . NAV , Ġ 2 8 . NAV , Ġ 3 1 . NAV ), Ġ" ag 1 ", Ġ 1 . jan uar ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 1 1 . jan uar Ġtil Ġ 3 1 . mars , Ġit . peri ode ()) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 1 1 . jan uar Ġtil Ġ 2 0 . jan uar ). all Ġ{ Ġit Ġis ĠF rid ag Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 2 1 . jan uar Ġtil Ġ 2 8 . fe bru ar ). all Ġ{ Ġit Ġis ĠU kj ent Dag Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 1 . mars Ġtil Ġ 3 1 . mars ). all Ġ{ Ġit Ġis ĠNav Dag Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelement . fj ern H istor ikk ( t ids lin je Of ( 1 0 . NAV , Ġ 1 0 . FR I , Ġ 1 1 . NAV , Ġ 2 8 . NAV , Ġ 3 1 . NAV ), Ġ" ag 1 ", Ġ 1 . fe bru ar ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 1 . mars Ġtil Ġ 3 1 . mars , Ġit . peri ode ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` f jer ner Ġik ke Ġh istor ikk Ġf ra Ġand re Ġar be id sg iv ere `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 2 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 1 . jan uar , Ġ 2 0 . jan uar ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelement . fj ern H istor ikk ( t ids lin je Of ( 1 0 . NAV , Ġ 1 0 . FR I , Ġ 1 1 . NAV ), Ġ" ag 1 ", Ġ 1 . jan uar ). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġit . peri ode ()) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 1 . jan uar Ġtil Ġ 1 0 . jan uar ). all Ġ{ Ġit Ġis ĠNav Dag Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 1 1 . jan uar Ġtil Ġ 2 0 . jan uar ). all Ġ{ Ġit Ġis ĠF rid ag Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . subset ( 2 1 . jan uar Ġtil Ġ 3 1 . jan uar ). all Ġ{ Ġit Ġis ĠNav Dag Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sy k dom st ids lin je Ġ- Ġfer ie `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠFri peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . sy k dom st ids lin je ( k ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . values . all Ġ{ Ġit Ġis ĠD ag . F er ied ag Ġ}) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 , Ġins pe kt Ã¸ r . d ager . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sy k dom st ids lin je Ġ- Ġuk j ent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠU kj ent Info try gd peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . sy k dom st ids lin je ( k ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . isEmpty ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sy k dom st ids lin je Ġ- Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . sy k dom st ids lin je ( k ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . values . all Ġ{ Ġit Ġis ĠD ag . Sy ked ag Ġ|| Ġit Ġis ĠD ag . Sy k Hel ged ag Ġ}) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 , Ġins pe kt Ã¸ r . d ager . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sam men h eng ende Ġt ids lin je `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 1 . jan uar , Ġ 1 2 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 2 ", Ġ 1 3 . jan uar , Ġ 1 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 6 . jan uar , Ġ 2 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġt ids lin je Ġ= Ġelement . sy k dom st ids lin je () ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( t ids lin je ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . values . none Ġ{ Ġit Ġis ĠD ag . U kj ent Dag Ġ}) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar , Ġt ids lin je . s iste Sk j Ã¦ ring st id sp unkt ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h istor ikk Ġfor Ġ- Ġfer ie `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠFri peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . h istor ikk For (" org nr ", ĠS yk dom st ids lin je (), Ġk ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . values . all Ġ{ Ġit Ġis ĠD ag . F er ied ag Ġ}) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 , Ġins pe kt Ã¸ r . d ager . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h istor ikk Ġfor Ġ- Ġuk j ent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠU kj ent Info try gd peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . h istor ikk For (" org nr ", ĠS yk dom st ids lin je (), Ġk ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . isEmpty ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h istor ikk Ġfor Ġ- Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . h istor ikk For (" ag 1 ", ĠS yk dom st ids lin je (), Ġk ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . values . all Ġ{ Ġit Ġis ĠD ag . Sy ked ag Ġ|| Ġit Ġis ĠD ag . Sy k Hel ged ag Ġ}) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 , Ġins pe kt Ã¸ r . d ager . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h istor ikk Ġfor Ġan net Ġorg nr Ġ- Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġper i ode Ġ= ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( peri ode . h istor ikk For (" no e Ġhe lt Ġan net ", ĠS yk dom st ids lin je (), Ġk ilde )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( ins pe kt Ã¸ r . d ager . isEmpty ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h istor ikk Ġfor Ġover sk river Ġik ke `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsy k dom st ids lin je Ġ= Ġ 1 0 . A Ġ+ Ġ 5 . op ph old Ġ+ Ġ 5 . S ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 1 . jan uar , Ġ 1 5 . jan uar ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠS yk dom st ids lin je Ins pe kt Ã¸ r ( element . h istor ikk For (" ag 1 ", Ġsy k dom st ids lin je )) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 8 , Ġins pe kt Ã¸ r . d ager . filter Ġ{ Ġit . value Ġis ĠD ag . Ar be id sd ag Ġ}. size ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 , Ġins pe kt Ã¸ r . d ager . filter Ġ{ Ġit . value Ġis ĠD ag . Fr isk Hel ged ag Ġ}. size ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 5 , Ġins pe kt Ã¸ r . d ager . filter Ġ{ Ġit . value Ġis ĠD ag . F er ied ag Ġ}. size ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 4 , Ġins pe kt Ã¸ r . d ager . filter Ġ{ Ġit . value Ġis ĠD ag . Sy ked ag Ġ}. size ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġins pe kt Ã¸ r . d ager . filter Ġ{ Ġit . value Ġis ĠD ag . Sy k Hel ged ag Ġ}. size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ingen Ġuk j ente Ġar be id sg iv ere `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 3 ", Ġ 1 . jan uar , Ġ 9 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 1 ", Ġ 1 0 . jan uar , Ġ 2 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" ag 2 ", Ġ 1 0 . jan uar , Ġ 2 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 2 5 0 0 0 . m Ã¥ ned lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . ingen U kj ente Ar be id sg iv ere ( listOf (" ag 1 ", Ġ" ag 2 ", Ġ" ag 3 "), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . ingen U kj ente Ar be id sg iv ere ( listOf (" ag 1 ", Ġ" ag 2 "), Ġ 1 0 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . ingen U kj ente Ar be id sg iv ere ( listOf (" ag 1 ", Ġ" ag 2 "), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . ingen U kj ente Ar be id sg iv ere ( listOf (" ag 1 "), Ġ 1 0 . jan uar )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h ens ynt ar Ġik ke Ġstats l Ã¸ nn Ġi Ġover l app - valid ering `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er Over l app ende ( aktiv it ets log g , Ġ 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` stats l Ã¸ nn Ġl ager Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( har Stats l Ã¸ nn Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , Ġ 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( it . has Warnings Or W orse ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . FOR LEN G ELSE , Ġ 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( it . has Warnings Or W orse ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . INF OT R YG DF OR LEN G ELSE , Ġ 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( it . has Warnings Or W orse ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( it , ĠPer i ode type . OVER G ANG _ FR A _ IT , Ġ 1 . jan uar Ġtil Ġ 3 1 . jan uar , Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( it . has Errors Or W orse ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` h ver Ġf Ã¸ r ste Ġut bet al ings dag Ġhar Ġen Ġtil h Ã¸ ren de Ġinn te kt `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 3 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 5 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 5 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( period er Ġ= Ġut bet al inger , Ġinn tek ter Ġ= Ġinn tek ter ) ĊĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , Ġ 1 . fe bru ar Ġtil Ġ 2 8 . fe bru ar , Ġ 1 . fe bru ar )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` f Ã¸ r ste Ġut bet al ings dag Ġm ang ler Ġen Ġtil h Ã¸ ren de Ġinn te kt `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 3 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 5 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( period er Ġ= Ġut bet al inger , Ġinn tek ter Ġ= Ġinn tek ter ) ĊĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( it , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , Ġ 1 . fe bru ar Ġtil Ġ 2 8 . fe bru ar , Ġ 1 . fe bru ar )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` s jek ker Ġat Ġvi Ġhar Ġinn te kt Ġf ra Ġf Ã¸ r ste Ġdag Ġi Ġper i ode b Ġsom Ġhar Ġen Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 1 . jan uar , Ġ 4 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 5 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 5 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue )) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( period er Ġ= Ġut bet al inger , Ġinn tek ter Ġ= Ġinn tek ter ) ĊĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , Ġ 1 . fe bru ar Ġtil Ġ 2 8 . fe bru ar , Ġ 1 . fe bru ar )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` period er Ġf ra Ġin for try gd Ġsl Ã¥ s Ġsam men Ġd ers om Ġg ape t Ġkun Ġer Ġhe lg `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 8 . jan uar , Ġ 1 2 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue )) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( period er Ġ= Ġut bet al inger , Ġinn tek ter Ġ= Ġinn tek ter ) ĊĊĠĠĠĠĠĠĠ Ġaktiv it ets log g . bar n (). also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( it , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , Ġ 1 . fe bru ar Ġtil Ġ 2 8 . fe bru ar , Ġ 1 . fe bru ar )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` sk j Ã¦ ring st id sp unkt Ġlik Ġnull Ġres ul ter er Ġi Ġp assert Ġval ider ing Ġav Ġred user t Ġut bet aling `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 1 " Ġto Ġ 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 2 . jan uar , Ġ 3 1 . jan uar ), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġskal Ġfe ile Ġn Ã¥r Ġbru ker Ġhar Ġred user t Ġut bet aling Ġog Ġsk j Ã¦ ring st id sp unkt Ġi ĠInfo try gd `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 7 " Ġto Ġ 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 2 3 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġfe iler Ġik ke Ġn Ã¥r Ġdet Ġik ke Ġer Ġred user t Ġut bet aling Ġi ĠInfo try gd , Ġmen Ġsk j Ã¦ ring st id sp unkt Ġi ĠInfo try gd `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 1 " Ġto Ġ 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 2 3 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġskal Ġik ke Ġfe ile Ġn Ã¥r Ġbru ker Ġhar Ġred user t Ġut bet aling Ġi ĠInfo try gd , Ġmen Ġsk j Ã¦ ring st id sp unkt Ġi ĠSp le is `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 7 " Ġto Ġ 1 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( period er Ġ= Ġut bet al inger , Ġar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder , Ġinn tek ter Ġ= Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 7 . jan uar , Ġ 2 3 . jan uar ), Ġ 7 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġskal Ġfe ile Ġn Ã¥r Ġbru ker Ġhar Ġred user t Ġut bet aling Ġog Ġsk j Ã¦ ring st id sp unkt Ġi ĠInfo try gd Ġ Ġ- Ġfl ere Ġar be id sg iv ere `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 1 " Ġto Ġ 1 . jan uar , Ġ" 0 7 " Ġto Ġ 6 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 1 . jan uar , Ġ 2 3 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġskal Ġik ke Ġfe ile Ġn Ã¥r Ġbru ker Ġik ke Ġhar Ġred user t Ġut bet aling Ġog Ġsk j Ã¦ ring st id sp unkt Ġi ĠInfo try gd Ġ Ġ- Ġfl ere Ġar be id sg iv ere `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġar be id sk ategor ik oder Ġ= Ġmap Of (" 0 1 " Ġto Ġ 1 . jan uar , Ġ" 0 1 " Ġto Ġ 6 . jan uar ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 1 . jan uar , Ġ 2 3 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġskal Ġik ke Ġfe ile Ġn Ã¥r Ġut bet aling sh istor ik ken Ġer Ġtom `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement () ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 1 . jan uar , Ġ 2 3 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` dire k te ut bet aling Ġtil Ġbru ker Ġst Ã¸ t tes Ġik ke Ġen n Ã¥ `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPerson U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperiod er Ġ= Ġut bet al inger , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" 1 2 3 4 5 6 7 8 9 ", Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 3 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` for len gel ser Ġf ra Ġinfo try gd Ġmed Ġtil st Ã¸ tende Ġper i ode Ġmed Ġsam me Ġorg nr Ġer Ġok `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode (" 1 2 3 4 ", Ġ 1 . jan uar , Ġ 3 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue )) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 3 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` fl ere Ġinn tek ts op pl ys ning er ĠpÃ¥ Ġsam me Ġorg nr Ġer Ġok `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperiod er Ġ= Ġut bet al inger , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" 1 2 3 4 5 6 7 8 9 ", Ġ 1 . fe bru ar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" 1 2 3 4 5 6 7 8 9 ", Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 3 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` fl ere Ġinn tek ts op pl ys ning er Ġgir Ġik ke Ġfe il Ġd ers om Ġde Ġer Ġgam le `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperiod er Ġ= Ġut bet al inger , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" 1 2 3 4 5 6 7 8 9 ", Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning (" 9 8 7 6 5 4 3 2 1 ", Ġ 1 . jan uar . minus Years ( 1 ), Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 6 . jan uar , Ġ 3 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` l ager Ġik ke Ġwarning Ġn Ã¥r Ġd ags ats Ġend rer Ġseg Ġi Ġen Ġsam men h eng ende Ġper i ode Ġsom Ġf Ã¸ l ge Ġav ĠG run nb el Ã¸ pj uster ing `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . apr il , Ġ 3 0 . apr il , Ġ 1 0 0 . pro sent , Ġ 2 1 6 1 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . ma i , Ġ 3 1 . ma i , Ġ 1 0 0 . pro sent , Ġ 2 2 3 6 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . apr il , Ġ 2 1 6 1 . dag lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . ma i , Ġ 2 1 6 1 . dag lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . j uni , Ġ 3 0 . j uni ), Ġ 1 . apr il )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` l ager Ġik ke Ġwarning Ġn Ã¥r Ġd ags ats Ġend res Ġp ga Ġgr ader ing Ġi Ġen Ġsam men h eng ende Ġper i ode `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgr ader ing Ġ= Ġ. 5 ĊĠĠĠĠĠĠĠ Ġval Ġd ags ats Ġ= Ġ 2 4 6 8 ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠOR G NUM MER , Ġ 1 . jan uar , Ġ 3 1 . jan uar , Ġ( 1 0 0 Ġ* Ġgr ader ing ). round ToInt (). pro sent , Ġ( d ags ats Ġ* Ġgr ader ing ). round ToInt (). dag lig ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġd ags ats . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ( d ags ats Ġ* Ġgr ader ing ). round ToInt (). dag lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . fe bru ar , Ġd ags ats . dag lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . apr il , Ġ 3 0 . apr il ), Ġ 1 . apr il )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` l ager Ġik ke Ġwarning Ġn Ã¥r Ġd ags ats Ġik ke Ġend rer Ġseg Ġi Ġen Ġsam men h eng ende Ġper i ode `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 3 1 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . fe bru ar , Ġ 2 8 . fe bru ar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . fe bru ar , Ġ 1 2 3 4 . dag lig , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . apr il , Ġ 3 0 . apr il ), Ġ 1 . apr il )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Ref us jon Til Ar be id sg iver Ġm app es Ġtil Ġut bet aling st ids lin je `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġt ids lin je Ġ= Ġut bet al inger . map Ġ{ Ġit . ut bet aling st ids lin je () Ġ}. reduce ( U tb et aling st ids lin je :: plus ) ĊĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠIns pe kt Ã¸ r (). apply Ġ{ Ġt ids lin je . accept ( this ) Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar , Ġins pe kt Ã¸ r . f Ã¸ r ste Dag ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 . jan uar , Ġins pe kt Ã¸ r . s iste Dag ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 8 , Ġins pe kt Ã¸ r . nav Dag T eller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Fe iler Ġse lv Ġom Ġug y ld ig Ġdag Ġover l app es Ġhe lt Ġav ĠRed uk s jon Ar be id sg iver Ref us jon `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperiod er Ġ= Ġut bet al inger , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġug yl di ge Period er Ġ= ĠlistOf ( U gy ld ig Per i ode ( 5 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 )) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . mars , Ġ 1 . mars ), Ġ 1 . mars )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Ref us jon Til Ar be id sg iver Ġre gn es Ġsom Ġut bet al ings dag Ġse lv Ġom Ġden Ġoverlap per Ġmed Ġfer ie `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFri peri ode ( 5 . jan uar , Ġ 2 0 . jan uar ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 5 . jan uar , Ġ 2 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġt ids lin je Ġ= Ġut bet al inger . map Ġ{ Ġit . ut bet aling st ids lin je () Ġ}. reduce ( U tb et aling st ids lin je :: plus ) ĊĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠIns pe kt Ã¸ r (). apply Ġ{ Ġt ids lin je . accept ( this ) Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar , Ġins pe kt Ã¸ r . f Ã¸ r ste Dag ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 5 . jan uar , Ġins pe kt Ã¸ r . s iste Dag ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 7 , Ġins pe kt Ã¸ r . nav Dag T eller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Fe iler Ġik ke Ġse lv Ġom Ġuk j ent Ġdag Ġover l app es Ġhe lt Ġav ĠRed uk s jon Ar be id sg iver Ref us jon `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠU kj ent Info try gd peri ode ( 5 . jan uar , Ġ 5 . jan uar ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġt ids lin je Ġ= Ġut bet al inger . map Ġ{ Ġit . ut bet aling st ids lin je () Ġ}. reduce ( U tb et aling st ids lin je :: plus ) ĊĊĠĠĠĠĠĠĠ Ġval Ġins pe kt Ã¸ r Ġ= ĠIns pe kt Ã¸ r (). apply Ġ{ Ġt ids lin je . accept ( this ) Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 . jan uar , Ġins pe kt Ã¸ r . f Ã¸ r ste Dag ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 0 . jan uar , Ġins pe kt Ã¸ r . s iste Dag ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Val ider er Ġok Ġh vis Ġdet Ġik ke Ġfin nes Ġno en Ġut bet al inger Ġf ra ĠInfo try gd `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement () ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . jan uar , Ġ 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) Ġ{ Ġaktiv it ets log g . toString () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` U tb et al inger Ġi ĠInfo try gd Ġsom Ġoverlap per Ġmed Ġt ids lin jen `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . jan uar , Ġ 1 . jan uar ), Ġ 1 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Errors Or W orse ()) Ġ{ Ġaktiv it ets log g . toString () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` U tb et al inger Ġi ĠInfo try gd Ġsom Ġer Ġn Ã¦ rm ere Ġen n Ġ 1 8 Ġd ager Ġf ra Ġt ids lin jen `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue )) ĊĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 2 8 . jan uar , Ġ 2 8 . jan uar ), Ġ 2 8 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` U tb et al inger Ġi ĠInfo try gd Ġsom Ġer Ġel d re Ġen n Ġ 1 8 Ġd ager Ġf ra Ġt ids lin jen `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue )) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 2 9 . jan uar , Ġ 2 9 . jan uar ), Ġ 2 9 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Val ider er Ġok Ġh vis Ġperiod er Ġer Ġel d re Ġen n Ġ 2 6 Ġu ker Ġf Ã¸ r Ġf Ã¸ r ste Ġfr av Ã¦ r sd ag `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠU kj ent Info try gd peri ode ( 1 . jan uar , Ġ 1 0 . jan uar ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue )) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . aug ust , Ġ 1 . aug ust ), Ġ 1 . aug ust )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) Ġ{ Ġaktiv it ets log g . toString () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Val ider ing Ġign orer er Ġmak sd ato Ġh vis Ġperiod er Ġer Ġel d re Ġen n Ġ 2 6 Ġu ker Ġf Ã¸ r Ġf Ã¸ r ste Ġfr av Ã¦ r sd ag `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 0 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġinn tek ter Ġ= ĠlistOf ( In n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . dag lig , Ġtrue )) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ut bet al inger , Ġinn tek ter ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . aug ust , Ġ 1 . aug ust ), Ġ 1 . aug ust )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) Ġ{ Ġaktiv it ets log g . toString () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġav Ġinn tek ts op pl ys ning er Ġfe iler Ġik ke Ġfor Ġsk j Ã¦ ring st id sp unkt Ġnull `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġut bet al inger Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAr be id sg iver U tb et aling sp eri ode ( ORG NUM MER , Ġ 1 . jan uar , Ġ 5 . jan uar , Ġ 1 0 0 . pro sent , Ġ 1 2 3 4 . dag lig ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġut bet al inger , ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 0 . jan uar , Ġ 3 1 . jan uar ), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġgir Ġwarning Ġh vis Ġvi Ġhar Ġto Ġinn tek ter Ġfor Ġsam me Ġar be id sg iver ĠpÃ¥ Ġsam me Ġdat o `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 4 3 2 1 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . jan uar , Ġ 3 1 . jan uar ), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertTrue ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . jan uar , Ġ 3 1 . jan uar ), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Errors Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġgir Ġik ke Ġwarning Ġh vis Ġvi Ġhar Ġto Ġinn tek ter Ġfor Ġsam me Ġar be id sg iver ĠpÃ¥ Ġfor sk j ellig Ġdat o `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 2 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 4 3 2 1 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . jan uar , Ġ 3 1 . jan uar ), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġgir Ġik ke Ġwarning Ġh vis Ġvi Ġhar Ġto Ġinn tek ter Ġfor Ġsam me Ġar be id sg iver ĠpÃ¥ Ġsam me Ġdat o , Ġmen Ġdat o Ġer Ġ 1 2 ĠmÃ¥ ned er Ġf Ã¸ r Ġperiod en `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar ( 2 0 1 8 ), Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar ( 2 0 1 8 ), Ġ 4 3 2 1 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 1 . fe bru ar ( 2 0 1 9 ), Ġ 2 8 . fe bru ar ( 2 0 1 9 )), Ġnull )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` valid ering Ġgir Ġik ke Ġwarning Ġh vis Ġvi Ġhar Ġto Ġinn tek ter Ġfor Ġsam me Ġar be id sg iver ĠpÃ¥ Ġsam me Ġdat o , Ġmen Ġdat o Ġer Ġf Ã¸ r Ġsk j Ã¦ ring st id sp unkt `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 4 3 2 1 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . valid er ( aktiv it ets log g , ĠPer i ode type . F Ã ĺ RST EG ANG S BE HAND LING , ĠPer i ode ( 2 . jan uar , Ġ 3 1 . jan uar ), Ġ 2 . jan uar )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( aktiv it ets log g . has Warnings Or W orse ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` ny tt Ġelement Ġer Ġik ke Ġl Ã¥ st `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement () ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . kan S let tes ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lag ring Ġav Ġv ilk Ã¥ rs gr un nl ag Ġl Ã¥ ser Ġelement et `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement () ĊĠĠĠĠĠĠĠ Ġelement . lag re V ilk Ã¥ rs gr un nl ag ( V ilk Ã¥ rs gr un nl ag H istor ikk (), Ġsy ke pen ge gr un nl ag For ( ING EN )) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . kan S let tes ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` element Ġut en Ġinn tek ter Ġl Ã¥ ses Ġik ke `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( inn tek ter Ġ= Ġempty List ()) ĊĠĠĠĠĠĠĠ Ġelement . add In n tek ter ( Person ("", Ġ" 0 1 0 1 0 1 1 2 3 4 5 ". som F Ã¸ d se ls nummer ()), Ġaktiv it ets log g ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( element . kan S let tes ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` l agr er Ġinn tek ter Ġl Ã¥ ser Ġelement et `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġelement . add In n tek ter ( Person ("", Ġ" 0 1 0 1 0 1 1 2 3 4 5 ". som F Ã¸ d se ls nummer ()), Ġaktiv it ets log g ) ĊĠĠĠĠĠĠĠ ĠassertFalse ( element . kan S let tes ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` leg ger Ġtil Ġsist e Ġinn te kt Ġf Ã¸ rst Ġi Ġinn te kt sh istor ikk `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinn te kt sh istor ikk Ġ= ĠIn n te kt sh istor ikk () ĊĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning . lag re In n tek ter ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 1 2 3 4 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIn n tek ts op pl ys ning ( ORG NUM MER , Ġ 1 . jan uar , Ġ 4 3 2 1 . m Ã¥ ned lig , Ġtrue ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), Ġinn te kt sh istor ikk , ĠUUID . randomUUID () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 2 3 4 . m Ã¥ ned lig , Ġinn te kt sh istor ikk . gr un nl ag For Sy ke pen ge gr un nl ag G am mel ( 1 . jan uar )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġh istor ik ke lement ( ĊĠĠĠĠĠĠĠ Ġperiod er : ĠList < Info try gd peri ode > Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠ Ġinn tek ter : ĠList < In n tek ts op pl ys ning > Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠ Ġar be id sk ategor ik oder : ĠMap < String , ĠLocalDate > Ġ= Ġempty Map (), ĊĠĠĠĠĠĠĠ Ġug yl di ge Period er : ĠList < U gy ld ig Per i ode > Ġ= Ġempty List (), ĊĠĠĠĠĠĠĠ Ġh en del se Id : ĠUUID Ġ= ĠUUID . randomUUID (), ĊĠĠĠĠĠĠĠ Ġhar Stats l Ã¸ nn : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġopp dat ert : ĠLocalDateTime Ġ= ĠLocalDateTime . now () ĊĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠ ĠInfo try gd h istor ikk Element . op prett ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopp dat ert Ġ= Ġopp dat ert , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh en del se Id Ġ= Ġh en del se Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġperiod er Ġ= Ġperiod er , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinn tek ter Ġ= Ġinn tek ter , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġar be id sk ategor ik oder Ġ= Ġar be id sk ategor ik oder , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġug yl di ge Period er Ġ= Ġug yl di ge Period er , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhar Stats l Ã¸ nn Ġ= Ġhar Stats l Ã¸ nn ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġprivate Ġfun Ġsy ke pen ge gr un nl ag For ( inn te kt : ĠIn n te kt ): Ġ( LocalDate ) Ġ-> ĠSy ke pen ge gr un nl ag Ġ= Ġ{ ĊĠĠĠĠĠĠĠ ĠSy ke pen ge gr un nl ag ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġar be id sg iver In n tek ts op pl ys ning er Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsy ke pen ge gr un nl ag Ġ= Ġinn te kt , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġg run nl ag For Sy ke pen ge gr un nl ag Ġ= Ġinn te kt ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġclass ĠIns pe kt Ã¸ r Ġ: ĠU tb et al ings dag Visitor Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġf Ã¸ r ste Dag : ĠLocalDate ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġsist e Dag : ĠLocalDate ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġnav Dag T eller : ĠInt Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġvisit Dag ( dag : ĠU tb et aling st ids lin je . U tb et al ings dag ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġf Ã¸ r ste Dag Ġ= Ġf Ã¸ r ste Dag Ġ?: Ġdag . dat o ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsist e Dag Ġ= Ġdag . dat o ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠAr be id sg iver peri ode Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠNav Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav Dag T eller Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠNav Hel g Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠAr be id sd ag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠF rid ag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠAv v ist Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠFore l det Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdag : ĠU kj ent Dag , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdat o : ĠLocalDate , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠÃ ¸ k onom i : ĠÃ ĺ k onom i ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisit Dag ( dag ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ