package Ġno . nav . su . se . bak over . domain . op pd rag . sim uler ing Ċ Ċ import Ġcom . fasterxml . jackson . annotation . Json Alias Ċ import Ġcom . fasterxml . jackson . annotation . JsonIgnore Ċ import Ġno . nav . su . se . bak over . domain . Fn r Ċ import Ġjava . time . LocalDate Ċ Ċ data Ġclass ĠSim uler ing ( ĊĠĠĠ Ġval Ġg jel der Id : ĠF nr , ĊĠĠĠ Ġval Ġg jel der Nav n : ĠString , ĊĠĠĠ Ġval Ġdat o B ere g net : ĠLocalDate , ĊĠĠĠ Ġval Ġnet to Bel Ã¸ p : ĠInt , ĊĠĠĠ Ġval Ġper i ode List : ĠList < Sim ul ert Per i ode >, Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġbr ut to Yt else () Ġ= Ġper i ode List ĊĠĠĠĠĠĠĠ Ġ. sum Of Ġ{ Ġit . br ut to Yt else () Ġ} ĊĊĠĠĠ Ġfun Ġhar Fe il ut bet al inger () Ġ= ĠT ol ket Sim uler ing ( this ). sim uler te Period er . any Ġ{ Ġit . har Fe il ut bet al inger () Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠNet to bel Ã¸ pet ĠpÃ¥ vir kes Ġav Ġsk att , Ġs Ã¥ Ġt as Ġik ke Ġmed Ġi Ġequals - s jek ken . ĊĠĠĠĠ Ġ* ĠBr ut to bel Ã¸ pet , Ġal ts Ã¥ Ġsum men Ġav ĠmÃ¥ ned sb el Ã¸ pen e , Ġbru kes Ġi Ġste det Ġ. ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?) Ġ= Ġother Ġis ĠSim uler ing Ġ&& ĊĠĠĠĠĠĠĠ Ġother . gj el der Id Ġ== Ġthis . gj el der Id Ġ&& ĊĠĠĠĠĠĠĠ Ġother . gj el der Nav n Ġ== Ġthis . gj el der Nav n Ġ&& ĊĠĠĠĠĠĠĠ Ġother . peri ode List Ġ== Ġthis . peri ode List Ġ&& ĊĠĠĠĠĠĠĠ Ġother . br ut to Yt else () Ġ== Ġthis . br ut to Yt else () ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġg jel der Id . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġg jel der Nav n . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġper i ode List . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠSim ul ert Per i ode ( ĊĠĠĠ Ġ@ Json Alias (" f ra Og Med ", Ġ" f om ") ĊĠĠĠ Ġval Ġf ra Og Med : ĠLocalDate , ĊĠĠĠ Ġ@ Json Alias (" til Og Med ", Ġ" tom ") ĊĠĠĠ Ġval Ġtil Og Med : ĠLocalDate , ĊĠĠĠ Ġval Ġut bet aling : ĠList < Sim ul ert U tb et aling >, Ċ ) Ġ{ ĊĊĠĠĠ Ġfun Ġbr ut to Yt else () Ġ= Ġut bet aling ĊĠĠĠĠĠĠĠ Ġ. sum Of Ġ{ Ġit . br ut to Yt else () Ġ} Ċ } Ċ Ċ data Ġclass ĠSim ul ert U tb et aling ( ĊĠĠĠ Ġval Ġf ag System Id : ĠString , ĊĠĠĠ Ġval Ġut bet ales Til Id : ĠF nr , ĊĠĠĠ Ġval Ġut bet ales Til Nav n : ĠString , ĊĠĠĠ Ġval Ġfor fall : ĠLocalDate , ĊĠĠĠ Ġval Ġfe ilk onto : ĠBoolean , ĊĠĠĠ Ġval Ġdetal jer : ĠList < Sim ul ert Det al jer >, Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġbr ut to Yt else () Ġ= Ġdetal jer ĊĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . is Yt else () Ġ} ĊĠĠĠĠĠĠĠ Ġ. sum Of Ġ{ Ġit . be lop Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?) Ġ= Ġother Ġis ĠSim ul ert U tb et aling Ġ&& ĊĠĠĠĠĠĠĠ Ġother . f ag System Id Ġ== Ġthis . f ag System Id Ġ&& ĊĠĠĠĠĠĠĠ Ġother . ut bet ales Til Id Ġ== Ġthis . ut bet ales Til Id Ġ&& ĊĠĠĠĠĠĠĠ Ġother . ut bet ales Til Nav n Ġ== Ġthis . ut bet ales Til Nav n Ġ&& ĊĠĠĠĠĠĠĠ Ġother . fe ilk onto Ġ== Ġthis . fe ilk onto Ġ&& ĊĠĠĠĠĠĠĠ Ġother . detal jer Ġ== Ġthis . detal jer ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġf ag System Id . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġut bet ales Til Id . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġut bet ales Til Nav n . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġfe ilk onto . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġdetal jer . hashCode () ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠSim ul ert Det al jer ( ĊĠĠĠ Ġ@ Json Alias (" f akt isk F ra Og Med ", Ġ" f akt isk F om ") ĊĠĠĠ Ġval Ġf akt isk F ra Og Med : ĠLocalDate , ĊĠĠĠ Ġ@ Json Alias (" f akt isk Til Og Med ", Ġ" f akt isk Tom ") ĊĠĠĠ Ġval Ġf akt isk Til Og Med : ĠLocalDate , ĊĠĠĠ Ġval Ġk onto : ĠString , ĊĠĠĠ Ġval Ġbe lop : ĠInt , ĊĠĠĠ Ġval Ġtil b ake for ing : ĠBoolean , ĊĠĠĠ Ġval Ġs ats : ĠInt , ĊĠĠĠ Ġval Ġtype S ats : ĠString , ĊĠĠĠ Ġval Ġant all S ats : ĠInt , ĊĠĠĠ Ġval Ġu fore grad : ĠInt , ĊĠĠĠ Ġval Ġklas se kode : ĠK lasse K ode , ĊĠĠĠ Ġval Ġklas se kode B es k riv else : ĠString , ĊĠĠĠ Ġval Ġklas se Type : ĠK lasse Type , Ċ ) Ġ{ ĊĠĠĠ Ġ@ JsonIgnore ĊĠĠĠ Ġfun Ġis Yt else () Ġ= ĠK lasse Type . Y TEL Ġ== Ġklas se Type Ċ } Ċ Ċ enum Ġclass ĠSim uler ing Fe ilet Ġ{ ĊĠĠĠ ĠO PP DR AG _ UR _ ER _ ST EN GT , ĊĠĠĠ ĠPER SON EN _ FIN N ES _ IK KE _ I _ TP S , ĊĠĠĠ ĠF INNER _ IK KE _ KJ Ã ĺ RE PLAN SP ER IO DE _ FOR _ FO M , ĊĠĠĠ ĠO PP DR AG ET _ FIN N ES _ IK KE , ĊĠĠĠ ĠFUN KS J ON ELL _ FE IL , ĊĠĠĠ ĠT EK N IS K _ FE IL , Ċ } Ċ Ċ enum Ġclass ĠK lasse Type Ġ{ ĊĠĠĠ ĠY TEL , ĊĠĠĠ ĠSK AT , ĊĠĠĠ ĠFE IL , ĊĠĠĠ Ġ@ Deprecated (" Fil tr eres Ġut Ġav Ġklient ") Ġ// ĠTODO Ġfly tt Ġdet te Ġl enger Ġut ĊĠĠĠ ĠM OTP , Ċ } Ċ Ċ enum Ġclass ĠK lasse K ode Ġ{ ĊĠĠĠ ĠSU U FORE , ĊĠĠĠ ĠK L _ KO DE _ FE IL _ IN NT , ĊĊĠĠĠ Ġ@ Deprecated (" Fil tr eres Ġut Ġav Ġklient ") Ġ// ĠTODO Ġfly tt Ġdet te Ġl enger Ġut ĊĠĠĠ ĠT BM OT OB S , ĊĊĠĠĠ Ġ@ Deprecated (" Fil tr eres Ġut Ġav Ġklient , Ġb ak over k omp atab ilit et ") ĊĠĠĠ ĠF SK TS K AT , ĊĊĠĠĠ Ġ@ Deprecated (" Fil tr eres Ġut Ġav Ġklient , Ġb ak over k omp atab ilit et ") ĊĠĠĠ ĠU FORE UT Ċ } Ċ