code: @Override
      protected T[][] doDeserialize( JsonReader reader, JsonDeserializationContext ctx, JsonDeserializerParameters params ) {
          List<List<T>> list = deserializeIntoList( reader, ctx, deserializer, params );
  
          if ( list.isEmpty() ) {
              return array2dCreator.create( 0, 0 );
          }
  
          List<T> firstList = list.get( 0 );
          if ( firstList.isEmpty() ) {
              return array2dCreator.create( list.size(), 0 );
          }
  
          T[][] array = array2dCreator.create( list.size(), firstList.size() );
  
          int i = 0;
          for ( List<T> innerList : list ) {
              array[i] = innerList.toArray( array[i] );
              i++;
          }
          return array;
      }
docs: {@inheritDoc}