package Ġru . in for ion . lab 4 0 3 . common . extensions Ċ Ċ import Ġkotlin . math . max Ċ import Ġkotlin . math . min Ċ Ċ val ĠLong Range . length Ġget () Ġ= Ġlast Ġ- Ġfirst Ġ+ Ġ 1 Ċ val ĠInt Range . length Ġget () Ġ= Ġlast Ġ- Ġfirst Ġ+ Ġ 1 Ċ Ċ infix Ġfun ĠLong . between ( range : ĠLong Range ) Ġ= Ġthis Ġ> Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠInt . between ( range : ĠInt Range ) Ġ= Ġthis Ġ> Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠShort . between ( range : ĠInt Range ) Ġ= Ġthis Ġ> Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠByte . between ( range : ĠInt Range ) Ġ= Ġthis Ġ> Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ Ċ infix Ġfun ĠLong . span ( range : ĠLong Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠInt . span ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠShort . span ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ infix Ġfun ĠByte . span ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ< Ġrange . last Ċ Ċ infix Ġfun ĠLong . inside ( range : ĠLong Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ<= Ġrange . last Ċ infix Ġfun ĠInt . inside ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ<= Ġrange . last Ċ infix Ġfun ĠShort . inside ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ<= Ġrange . last Ċ infix Ġfun ĠByte . inside ( range : ĠInt Range ) Ġ= Ġthis Ġ>= Ġrange . first Ġ&& Ġthis Ġ<= Ġrange . last Ċ Ċ infix Ġfun ĠLong . outside ( range : ĠLong Range ) Ġ= Ġthis Ġ< Ġrange . first Ġ|| Ġthis Ġ> Ġrange . last Ċ infix Ġfun ĠInt . outside ( range : ĠInt Range ) Ġ= Ġthis Ġ< Ġrange . first Ġ|| Ġthis Ġ> Ġrange . last Ċ infix Ġfun ĠShort . outside ( range : ĠInt Range ) Ġ= Ġthis Ġ< Ġrange . first Ġ|| Ġthis Ġ> Ġrange . last Ċ infix Ġfun ĠByte . outside ( range : ĠInt Range ) Ġ= Ġthis Ġ< Ġrange . first Ġ|| Ġthis Ġ> Ġrange . last Ċ Ċ infix Ġfun ĠLong Range . merge ( other : ĠLong Range ) Ġ= Ġmin ( first , Ġother . first ) .. max ( last , Ġother . last ) Ċ infix Ġfun ĠLong Range . intersect ( other : ĠLong Range ) Ġ= Ġmax ( first , Ġother . first ) .. min ( last , Ġother . last ) Ċ infix Ġfun ĠLong Range . is Intersect ( other : ĠLong Range ) Ġ= Ġintersect ( other ). length Ġ> Ġ 0 Ċ infix Ġfun ĠLong Range . isNot Intersect ( other : ĠLong Range ) Ġ= Ġ! is Intersect ( other ) Ċ Ċ infix Ġfun ĠInt Range . merge ( other : ĠInt Range ) Ġ= Ġmin ( first , Ġother . first ) .. max ( last , Ġother . last ) Ċ infix Ġfun ĠInt Range . intersect ( other : ĠInt Range ) Ġ= Ġmax ( first , Ġother . first ) .. min ( last , Ġother . last ) Ċ infix Ġfun ĠInt Range . is Intersect ( other : ĠInt Range ) Ġ= Ġintersect ( other ). length Ġ> Ġ 0 Ċ infix Ġfun ĠInt Range . isNot Intersect ( other : ĠInt Range ) Ġ= Ġ! is Intersect ( other ) Ċ Ċ val ĠLong Range . hex 8 Ġget () Ġ= Ġ"${ first . hex 8 } .. ${ last . hex 8 }" Ċ val ĠLong Range . hex 4 Ġget () Ġ= Ġ"${ first . hex 4 } .. ${ last . hex 4 }" Ċ val ĠLong Range . hex 2 Ġget () Ġ= Ġ"${ first . hex 2 } .. ${ last . hex 2 }" Ċ Ċ val ĠInt Range . hex 8 Ġget () Ġ= Ġ"${ first . hex 8 } .. ${ last . hex 8 }" Ċ val ĠInt Range . hex 4 Ġget () Ġ= Ġ"${ first . hex 4 } .. ${ last . hex 4 }" Ċ val ĠInt Range . hex 2 Ġget () Ġ= Ġ"${ first . hex 2 } .. ${ last . hex 2 }"