package Ġcom . cz f . proxy panel . entity Ċ Ċ import Ġjava . math . BigInteger Ċ import Ġjava . util .* Ċ import Ġjavax . persistence .* Ċ Ċ @ Entity ( name Ġ= Ġ" users ") Ċ class ĠUser Ġ{ ĊĠĠĠ Ġ@ Id ĊĠĠĠ Ġ@ GeneratedValue ( strategy Ġ= ĠGeneration Type . IDENTITY ) ĊĠĠĠ Ġvar Ġid Ġ= Ġ 0 ĊĊĠĠĠ Ġ@ Column ( name Ġ= Ġ" username ", Ġunique Ġ= Ġtrue , Ġlength Ġ= Ġ 5 0 , Ġnullable Ġ= Ġfalse ) ĊĠĠĠ Ġvar ĠuserName Ġ= Ġ"" ĊĊĠĠĠ Ġ@ Column ( unique Ġ= Ġtrue , Ġlength Ġ= Ġ 5 0 , Ġnullable Ġ= Ġfalse ) ĊĠĠĠ Ġvar Ġpassword Ġ= Ġ"" ĊĊĠĠĠ Ġ@ Column ( scale Ġ= Ġ 2 0 , Ġcolumn Definition Ġ= Ġ" BIG INT ", Ġnullable Ġ= Ġfalse ) ĊĠĠĠ Ġvar Ġquota Ġ= ĠBigInteger ("- 1 ") ĊĊĠĠĠ Ġ@ Column ( scale Ġ= Ġ 2 0 , Ġcolumn Definition Ġ= Ġ" BIG INT ", Ġnullable Ġ= Ġfalse ) ĊĠĠĠ Ġvar Ġupload Ġ= ĠBigInteger . ZERO ĊĊĠĠĠ Ġ@ Column ( scale Ġ= Ġ 2 0 , Ġcolumn Definition Ġ= Ġ" BIG INT ", Ġnullable Ġ= Ġfalse ) ĊĠĠĠ Ġvar Ġdownload Ġ= ĠBigInteger . ZERO ĊĊĠĠĠ Ġ@ Column ( name Ġ= Ġ" valid _ before ", Ġnullable Ġ= Ġfalse , Ġcolumn Definition Ġ= Ġ" datetime ") ĊĠĠĠ Ġvar Ġvalid Before Ġ= ĠDate () ĊĊĠĠĠ Ġ@ Column ( name Ġ= Ġ" ch arging _ strategy ", Ġnullable Ġ= Ġfalse , Ġcolumn Definition Ġ= Ġ" INT ", Ġlength Ġ= Ġ 1 1 ) ĊĠĠĠ Ġvar Ġch arging Strategy Ġ= ĠCh arging Strategy . By DateRange Ċ } Ċ Ċ enum Ġclass ĠCh arging Strategy Ġ{ ĊĠĠĠ ĠBy DateRange , ĊĠĠĠ ĠBy Amount Ċ }