class Target {

  private Size size;

  private Visibility visibility;

  /**
   * Print status.
   */
  public void printStatus() {
    LOGGER.info("{}, [size={}] [visibility={}]", this, getSize(), getVisibility());
  }

  /**
   * Changes the size of the target.
   */
  public void changeSize() {
    var oldSize = getSize() == Size.NORMAL ? Size.SMALL : Size.NORMAL;
    setSize(oldSize);
  }

  /**
   * Changes the visibility of the target.
   */
  public void changeVisibility() {<FILL_FUNCTION_BODY>}
}

    var visible = getVisibility() == Visibility.INVISIBLE
            ? Visibility.VISIBLE : Visibility.INVISIBLE;
    setVisibility(visible);
  
<no_super_class>