code: protected <C> List<List<C>> doDeserializeIntoList( JsonReader reader, JsonDeserializationContext ctx,
                                                         JsonDeserializer<C> deserializer, JsonDeserializerParameters params,
                                                         JsonToken token ) {
          List<List<C>> list;
          list = new ArrayList<List<C>>();
          // we keep the size of the first inner list to initialize the next lists with the correct size
          int size = -1;
  
          while ( JsonToken.END_ARRAY != token ) {
  
              // Creating a new
              List<C> innerList;
              reader.beginArray();
              JsonToken innerToken = reader.peek();
              if ( JsonToken.END_ARRAY == innerToken ) {
                  // empty array, no need to create a list
                  innerList = Collections.emptyList();
              } else {
                  if ( size >= 0 ) {
                      innerList = new ArrayList<C>( size );
                  } else {
                      innerList = new ArrayList<C>();
                  }
                  while ( JsonToken.END_ARRAY != innerToken ) {
                      innerList.add( deserializer.deserialize( reader, ctx, params ) );
                      innerToken = reader.peek();
                  }
                  size = innerList.size();
              }
              reader.endArray();
              list.add( innerList );
  
              token = reader.peek();
          }
          return list;
      }
docs: <p>doDeserializeIntoList</p>
  
  @param reader a {@link com.github.nmorel.gwtjackson.client.stream.JsonReader} object.
  @param ctx a {@link com.github.nmorel.gwtjackson.client.JsonDeserializationContext} object.
  @param deserializer a {@link com.github.nmorel.gwtjackson.client.JsonDeserializer} object.
  @param params a {@link com.github.nmorel.gwtjackson.client.JsonDeserializerParameters} object.
  @param token a {@link com.github.nmorel.gwtjackson.client.stream.JsonToken} object.
  @param <C> a C object.
  @return a {@link java.util.List} object.