package Ġke k me ch . ru . common _ schedule Ċ Ċ import Ġio . kot est . core . spec . style . Behavior Spec Ċ import Ġio . kot est . matchers . collections . should Contain Exactly Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġke k me ch . ru . common _ schedule . items . L unch Item Ċ import Ġke k me ch . ru . common _ schedule . items . Note Preview Ċ import Ġke k me ch . ru . common _ schedule . items . Window Item Ċ import Ġke k me ch . ru . common _ schedule . utils . with L unch Ċ import Ġke k me ch . ru . common _ schedule . utils . with Note Preview Ċ import Ġke k me ch . ru . common _ schedule . utils . with Progress Preview Ċ import Ġke k me ch . ru . common _ schedule . utils . with Windows Ċ import Ġke k me ch . ru . domain _ schedule . dto . Classes Ċ import Ġke k me ch . ru . domain _ schedule . dto . Time Ċ import Ġjava . time . Local Time Ċ Ċ class ĠConverter s Ext Test Ġ: ĠBehavior Spec ({ ĊĠĠĠ ĠGiven (" Classes Ġwith Ġnotes ") Ġ{ ĊĠĠĠĠĠĠĠ ĠWhen (" Two Ġclasses , Ġone Ġnote ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclasses 1 With Content Ġ= ĠCL AS SES _ 1 . copy ( attached Note Preview Ġ= ĠNOTE _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 1 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 2 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġwith Note Preview () Ġcontent ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Note Preview (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 1 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNote Preview ( NOTE _ CONTENT , Ġclasses 1 With Content ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Two Ġclasses , Ġone Ġnote , Ġl unch Ġbetween Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclasses 2 With Content Ġ= ĠCL AS SES _ 2 . copy ( attached Note Preview Ġ= ĠNOTE _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 2 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠL unch Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġwith Note Preview () Ġcontent ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Note Preview (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 2 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNote Preview ( NOTE _ CONTENT , Ġclasses 2 With Content ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠL unch Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Two Ġclasses , Ġone Ġnote , Ġwindow Ġbetween Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclasses 1 With Content Ġ= ĠCL AS SES _ 1 . copy ( attached Note Preview Ġ= ĠNOTE _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 1 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( TIME . start , ĠTIME . end ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġwith Note Preview () Ġcontent ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Note Preview (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 1 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNote Preview ( NOTE _ CONTENT , Ġclasses 1 With Content ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( TIME . start , ĠTIME . end ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Three Ġclasses , Ġtwo Ġnotes , Ġl unch Ġitem , Ġwindow Ġitem ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclasses 2 With Content Ġ= ĠCL AS SES _ 2 . copy ( attached Note Preview Ġ= ĠNOTE _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclasses 5 With Content Ġ= ĠCL AS SES _ 5 . copy ( attached Note Preview Ġ= ĠNOTE _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 2 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠL unch Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( TIME . start , ĠTIME . end ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 5 With Content ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġwith Note Preview () Ġcontent ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Note Preview (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 2 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNote Preview ( NOTE _ CONTENT , Ġclasses 2 With Content ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠL unch Item , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( TIME . start , ĠTIME . end ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclasses 5 With Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNote Preview ( NOTE _ CONTENT , Ġclasses 5 With Content ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠGiven (" L unch Ġinsertion ") Ġ{ ĊĠĠĠĠĠĠĠ ĠWhen (" First Ġand Ġsecond Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 1 , ĠCL AS SES _ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Second Ġand Ġthird Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 2 , ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġhas Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch (). should Contain Exactly ( CLASSES _ 2 , ĠL unch Item , ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Third Ġand Ġfourth Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 3 , ĠCL AS SES _ 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Second Ġand Ġfourth Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 2 , ĠCL AS SES _ 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" First Ġand Ġthird Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 1 , ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" First Ġand Ġfourth Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Any >( CLASSES _ 1 , ĠCL AS SES _ 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġl unch ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with L unch () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠGiven (" Windows Ġinsertion ") Ġ{ ĊĠĠĠĠĠĠĠ ĠWhen (" First Ġand Ġsecond Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf ( CLASSES _ 1 , ĠCL AS SES _ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġno Ġwindows ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Windows () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" First Ġand Ġthird Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf ( CLASSES _ 1 , ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġhas Ġwindow ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Windows (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( CLASSES _ 1 . time . end , ĠCL AS SES _ 3 . time . start ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Second Ġand Ġthird Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf ( CLASSES _ 2 , ĠCL AS SES _ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġhas Ġwindow ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Windows () ĠshouldBe Ġgiven Classes ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" First , Ġthird Ġand Ġf ifth Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf ( CLASSES _ 1 , ĠCL AS SES _ 3 , ĠCL AS SES _ 5 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Check Ġhas Ġtwo Ġwindows ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Classes . with Windows (). should Contain Exactly ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( CLASSES _ 1 . time . end , ĠCL AS SES _ 3 . time . start ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠWindow Item ( CLASSES _ 3 . time . end , ĠCL AS SES _ 5 . time . start ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 5 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ ĠGiven (" Progress Ġpreview ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġgiven Classes Ġ= ĠlistOf < Classes >( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 2 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCL AS SES _ 3 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠWhen (" Time Ġbefore Ġfirst Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Copy Ġ= Ġgiven Classes . map Ġ{ Ġit . copy () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" No Ġprogress ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( given Classes Copy ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Progress Preview ( now Time Ġ= ĠLocal Time . of ( 9 , Ġ 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. all Ġ{ Ġ( it Ġas ĠClasses ). progress Ġ== Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Time Ġin Ġfirst Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Copy Ġ= Ġgiven Classes . map Ġ{ Ġit . copy () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" First Ġclasses Ġprogress Ġnot Ġnull ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( given Classes Copy ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Progress Preview ( now Time Ġ= ĠLocal Time . of ( 9 , Ġ 3 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. all Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(( it Ġas ĠClasses ). number Ġ== Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ!= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ== Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Time Ġbetween Ġfirst Ġand Ġsecond Ġclasses ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Copy Ġ= Ġgiven Classes . map Ġ{ Ġit . copy () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" No Ġprogress ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( given Classes Copy ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Progress Preview ( now Time Ġ= ĠLocal Time . of ( 1 1 , Ġ 0 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. all Ġ{ Ġ( it Ġas ĠClasses ). progress Ġ== Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Time Ġis Ġstarting Ġthird Ġclasses Ġ( at Ġ 1 3 : 4 5 )") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠcurrentTime Ġ= ĠLocal Time . of ( 1 3 , Ġ 4 5 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Copy Ġ= Ġgiven Classes . map Ġ{ Ġit . copy () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Third Ġclasses Ġhas Ġ 0 % Ġprogress ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( given Classes Copy ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Progress Preview ( now Time Ġ= ĠcurrentTime ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. all Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(( it Ġas ĠClasses ). number Ġ== Ġ 3 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ== Ġ 0 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ== Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠWhen (" Time Ġis Ġending Ġthird Ġclasses Ġ( at Ġ 1 5 : 2 0 )") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠcurrentTime Ġ= ĠLocal Time . of ( 1 5 , Ġ 2 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgiven Classes Copy Ġ= Ġgiven Classes . map Ġ{ Ġit . copy () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠThen (" Third Ġclasses Ġhas Ġ 1 0 0 % Ġprogress ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcheck ( given Classes Copy ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Progress Preview ( now Time Ġ= ĠcurrentTime ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. all Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(( it Ġas ĠClasses ). number Ġ== Ġ 3 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ== Ġ 1 f ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . progress Ġ== Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }) Ġ{ ĊĊĠĠĠ Ġprivate Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTIME Ġ= ĠTime ( Local Time . of ( 1 2 , Ġ 4 5 ), ĠLocal Time . of ( 1 3 , Ġ 4 5 )) ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠNOTE _ CONTENT Ġ= Ġ" blah Ġbl ah Ġbl ah " ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCL AS SES _ 1 Ġ= ĠClasses ( name Ġ= Ġ" one ", Ġnumber Ġ= Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtime Ġ= ĠTime ( Local Time . of ( 9 , Ġ 2 0 ), ĠLocal Time . of ( 1 0 , Ġ 5 5 ))) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCL AS SES _ 2 Ġ= ĠClasses ( name Ġ= Ġ" two ", Ġnumber Ġ= Ġ 2 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtime Ġ= ĠTime ( Local Time . of ( 1 1 , Ġ 1 0 ), ĠLocal Time . of ( 1 2 , Ġ 4 5 ))) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCL AS SES _ 3 Ġ= ĠClasses ( name Ġ= Ġ" three ", Ġnumber Ġ= Ġ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtime Ġ= ĠTime ( Local Time . of ( 1 3 , Ġ 4 5 ), ĠLocal Time . of ( 1 5 , Ġ 2 0 ))) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCL AS SES _ 4 Ġ= ĠClasses ( name Ġ= Ġ" four ", Ġnumber Ġ= Ġ 4 ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠCL AS SES _ 5 Ġ= ĠClasses ( name Ġ= Ġ" five ", Ġnumber Ġ= Ġ 5 ) ĊĠĠĠ Ġ} Ċ }