package Ġarrow . ref inement . network Ċ Ċ import Ġarrow . ref inement . Ref ined Ċ import Ġarrow . ref inement . ensure Ċ import Ġkotlin . jvm . Jvm Inline Ċ Ċ @ Jvm Inline Ċ value Ċ /** Ċ Ġ* Ġ[ Non System Port Number ] Ġconstr ains Ġ[ Int ] Ġto Ġbe Ġin Ġrange Ġof Ġ 1 0 2 4 .. 6 5 5 3 5 Ċ Ġ* Ċ Ġ* Ġ# ĠSafe Ġnullable Ġconstruction Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* Ġimport Ġarrow . ref inement . network . Non System Port Number Ċ Ġ* Ċ Ġ* ĠNon System Port Number . or Null ( 5 5 5 5 5 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . or Null ( 2 2 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ# ĠResolved Ġconstraints Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . constraints ( 5 5 5 5 5 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . constraints ( 2 2 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . isValid ( 5 5 5 5 5 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . isValid ( 2 2 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ# ĠFold ing Ġvalidation Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . fold ( 5 5 5 5 5 , Ġ{ Ġ" failed : Ġ$ it " Ġ}, Ġ{ Ġ" success : Ġ$ it " Ġ}) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . fold ( 2 2 , Ġ{ Ġ" failed : Ġ$ it " Ġ}, Ġ{ Ġ" success : Ġ$ it " Ġ}) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ# ĠUnsafe Ġrequire Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* Ġtry Ġ{ ĠNon System Port Number . require ( 2 2 ) Ġ} Ġcatch Ġ( e : ĠIllegalArgumentException ) Ġ{ Ġe . message Ġ} Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* Ġ``` kotlin : ank Ċ Ġ* ĠNon System Port Number . require ( 5 5 5 5 5 ) Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ*/ Ċ class ĠNon System Port Number Ġprivate Ġconstructor ( val Ġvalue : ĠInt ) Ġ{ ĊĠ Ġcompanion Ġobject Ġ: ĠRef ined < Int , ĠNon System Port Number >( :: Non System Port Number , Ġ{ ĊĠĠĠ Ġensure (( it Ġin Ġ 1 0 2 4 .. 6 5 5 3 5 ) Ġto Ġ"$ it Ġshould Ġbe Ġin Ġthe Ġclosed Ġrange Ġof Ġ 1 0 2 4 .. 6 5 5 3 5 Ġto Ġbe Ġa Ġvalid Ġsystem Ġport Ġnumber ") ĊĠ Ġ}) Ċ }