code: public EvaluationResult withMatchedStatements(Statement... matchedStatements) {
          if (this.matchedStatements == null) {
              setMatchedStatements(new com.amazonaws.internal.SdkInternalList<Statement>(matchedStatements.length));
          }
          for (Statement ele : matchedStatements) {
              this.matchedStatements.add(ele);
          }
          return this;
      }
docs: <p>
  A list of the statements in the input policies that determine the result for this scenario. Remember that even if
  multiple statements allow the operation on the resource, if only one statement denies that operation, then the
  explicit deny overrides any allow. Inaddition, the deny statement is the only entry included in the result.
  </p>
  <p>
  <b>NOTE:</b> This method appends the values to the existing list (if any). Use
  {@link #setMatchedStatements(java.util.Collection)} or {@link #withMatchedStatements(java.util.Collection)} if
  you want to override the existing values.
  </p>
  
  @param matchedStatements
  A list of the statements in the input policies that determine the result for this scenario. Remember that
  even if multiple statements allow the operation on the resource, if only one statement denies that
  operation, then the explicit deny overrides any allow. Inaddition, the deny statement is the only entry
  included in the result.
  @return Returns a reference to this object so that method calls can be chained together.