// Bank 3 C ler ks Resources . kt Ċ package Ġorg . kal as im . examples . bank . resources Ċ Ċ import Ġorg . kal as im .* Ċ import Ġorg . kal as im . plot . kr avis . can Display Ċ import Ġorg . kal as im . plot . kr avis . display ĊĊ Ċ class ĠCustomer ( private Ġval Ġc ler ks : ĠResource ) Ġ: ĠComponent () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġprocess () Ġ= Ġsequence Ġ{ ĊĠĠĠĠĠĠĠ Ġrequest ( cl er ks ) ĊĠĠĠĠĠĠĠ Ġhold ( 3 0 ) ĊĠĠĠĠĠĠĠ Ġrelease ( cl er ks ) Ġ// Ġnot Ġreally Ġrequired ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġval Ġenv Ġ= Ġconfigure Environment Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Ġ{ ĠResource (" cl er ks ", Ġcapacity Ġ= Ġ 3 ) Ġ} ĊĠĠĠ Ġ}. apply Ġ{ ĊĠĠĠĠĠĠĠ ĠComponent Generator ( iat Ġ= Ġuniform ( 5 . 0 , Ġ 1 5 . 0 )) Ġ{ ĠCustomer ( get ()) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġenv . run ( 3 0 0 0 ) ĊĊĠĠĠ Ġenv . get < Resource >(). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġprint Info () ĊĊĠĠĠĠĠĠĠ Ġif Ġ( can Display ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclaimed Timeline . display () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest ers . queue Length Timeline . display () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprint Statistics () ĊĠĠĠ Ġ} Ċ } ĊĊ