let help_by_array_reference_pattern e =
    match delta_array e with 
      | None ->
          (match bracket_exp e with 
             | None -> Any
             | Some (x,n) ->
                 if x.vformal then
                   begin 
                     let dim = brackets_typ x.vtype in 
                     if n < dim
                     then (Ok (x,false,n)) else 
                       (if n = dim then Any else Ko (x,false,n))
                   end 
                 else Ok(x,false,n))
      | Some (x,n) -> Ok (x,false,n)