code: /*
  DesignForExtension
  ignoredAnnotations = (default)After, AfterClass, Before, BeforeClass, Test
  requiredJavadocPhrase = This implementation
  
  
  */
  
  package com.puppycrawl.tools.checkstyle.checks.design.designforextension;
  
  public class InputDesignForExtensionRequiredJavadocPhrase {
  
      /**
       * This implementation is for <p> some html code
       * </p>.
       *
       * @param a
       * @param b
       * @return sum
       */
      public int foo1(int a, int b) {return a + b;}  // ok, required comment pattern in javadoc
  
      /**
       * This implementation is required for ...
       *
       * @param a
       * @param b
       * @return sum
       */
      public int foo2(int a, int b) {return a + b;}  // ok, required comment pattern in javadoc
  
      /** This implementation is for ... */
      public int foo3(int a, int b) {return a + b;}  // ok, required comment pattern in javadoc
  
      /**
       * This implementation ...
       */
      public int foo4(int a, int b) {return a + b;}  // ok, required comment pattern in javadoc
  
      /** This method can safely be overridden. */
      public int foo5(int a, int b) {return a + b;} // violation
  
      public final int foo6(int a) {return a - 2;} // ok, final
  
      protected final int foo7(int a) {return a - 2;} // ok, final
  
      /** */
      public int foo8(int a) {return a - 2;} // violation
  
      // This implementation
      public int foo9(int a, int b) {return a + b;} // violation
  
      @Deprecated
      protected final int foo10(int a) {return a - 2;} // ok, deprecated
  
      /**
       * This implementation is for <p> some html code
       * </p>.
       *
       * @param a
       * @param b
       * @return sum
       */
      public int foo11(int a, int b) {return a + b;} // ok, required comment pattern in javadoc
  
      /**This method can safely be overridden. */
      public int foo12(int a, int b) {  // violation
          return a + b;
      }
  }
  