anchor.diff:      end.
   
   
  -
  +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% Array gen
   array(Schema,{MinItems,MaxItems}) ->
   
       case MaxItems of
  
positive.code:     % TODO: generator of valid JSON strings
      % Its not a good generator. Implementation has to be changed
      ?LET(Name,name(),list_to_binary(Name)).
  	%?SIZED(Size,list_to_binary(name())).
  stringGen(0) ->
  	[];
  
  stringGen(N) ->
  	?LET({S,G},{eqc_gen:choose($a,$z), stringGen(N-1)}, [S|G]).
  
  
  %random integer generator between Min and Max values
  
negative.code: 
  number_mul_min_max(Mul,Min,Max,{MinExc,MaxExc}) ->
      MinMul = (1 + floor((Min-1) / Mul)),
      %io:format("MinMul: ~p~n",[MinMul]),
      MaxMul = floor(Max/  Mul),
  
      case {MinExc,MaxExc} of
  
          {true,true} ->
              ?SUCHTHAT(N, Mul * eqc_gen:choose(MinMul,MaxMul), (N /= Min) and (N /= Max));
  
          {true,false} ->
              ?SUCHTHAT(N, Mul * eqc_gen:choose(MinMul,MaxMul), N /= Min);
  
          {false,true} ->
              ?SUCHTHAT(N, Mul * eqc_gen:choose(MinMul,MaxMul), N /= Max);
  
          {false,false} ->
              ?LET(N, eqc_gen:choose(MinMul,MaxMul), Mul * N)
      end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  