docs: @SuppressWarnings( "unchecked" )
      protected static void setData(Object parent, MatchedElement matchedElement, Object value, OpMode opMode) {
          if(parent instanceof Map) {
              Map source = (Map) parent;
              String key = matchedElement.getRawKey();
              if(opMode.isApplicable( source, key )) {
                  source.put( key, value );
              }
          }
          else if (parent instanceof List && matchedElement instanceof ArrayMatchedElement ) {
              List source = (List) parent;
              int origSize = ( (ArrayMatchedElement) matchedElement ).getOrigSize();
              int reqIndex = ( (ArrayMatchedElement) matchedElement ).getRawIndex();
              if(opMode.isApplicable( source, reqIndex, origSize )) {
                  source.set( reqIndex, value );
              }
          }
          else {
              throw new RuntimeException( "Should not come here!" );
          }
      }