double startY = 0.0; double topSpace = 0.0; double bottomSpace = 0.0; double leftSpace = 0.0; double rightSpace = 0.0; double w = getWidth(); double h = getHeight(); RectangleInsets padding = getPadding(); topSpace = padding.calculateTopOutset(h); bottomSpace = padding.calculateBottomOutset(h); leftSpace = padding.calculateLeftOutset(w); rightSpace = padding.calculateRightOutset(w); if (getPosition() == RectangleEdge.TOP) { startY = chartArea.getY() + topSpace; } else { startY = chartArea.getY() + chartArea.getHeight() - bottomSpace - h; } // what is our alignment? HorizontalAlignment horizontalAlignment = getHorizontalAlignment(); double startX = 0.0; if (horizontalAlignment == HorizontalAlignment.CENTER) { startX = chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0 - w / 2.0; } else if (horizontalAlignment == HorizontalAlignment.LEFT) { startX = chartArea.getX() + leftSpace; } else if (horizontalAlignment == HorizontalAlignment.RIGHT) { startX = chartArea.getX() + chartArea.getWidth() - rightSpace - w; } g2.drawImage(this.image, (int) startX, (int) startY, (int) w, (int) h, null); return new Size2D(chartArea.getWidth() + leftSpace + rightSpace, h + topSpace + bottomSpace);
double startX = 0.0; double topSpace = 0.0; double bottomSpace = 0.0; double leftSpace = 0.0; double rightSpace = 0.0; double w = getWidth(); double h = getHeight(); RectangleInsets padding = getPadding(); if (padding != null) { topSpace = padding.calculateTopOutset(h); bottomSpace = padding.calculateBottomOutset(h); leftSpace = padding.calculateLeftOutset(w); rightSpace = padding.calculateRightOutset(w); } if (getPosition() == RectangleEdge.LEFT) { startX = chartArea.getX() + leftSpace; } else { startX = chartArea.getMaxX() - rightSpace - w; } // what is our alignment? VerticalAlignment alignment = getVerticalAlignment(); double startY = 0.0; if (alignment == VerticalAlignment.CENTER) { startY = chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0 - h / 2.0; } else if (alignment == VerticalAlignment.TOP) { startY = chartArea.getMinY() + topSpace; } else if (alignment == VerticalAlignment.BOTTOM) { startY = chartArea.getMaxY() - bottomSpace - h; } g2.drawImage(this.image, (int) startX, (int) startY, (int) w, (int) h, null); return new Size2D(chartArea.getWidth() + leftSpace + rightSpace, h + topSpace + bottomSpace);
Clone fragments detected by clone detection tool
File path: /jfreechart-1.0.10/src/org/jfree/chart/title/ImageTitle.java File path: /jfreechart-1.0.10/src/org/jfree/chart/title/ImageTitle.java
Method name: Size2D drawHorizontal(Graphics2D, Rectangle2D) Method name: Size2D drawVertical(Graphics2D, Rectangle2D)
Number of AST nodes: 25 Number of AST nodes: 26
1
double startY = 0.0;
1
double startX = 0.0;
2
        double topSpace = 0.0;
2
        double topSpace = 0.0;
3
        double bottomSpace = 0.0;
3
        double bottomSpace = 0.0;
4
        double leftSpace = 0.0;
4
        double leftSpace = 0.0;
5
        double rightSpace = 0.0;
5
        double rightSpace = 0.0;
6
        double w = getWidth();
6
        double w = getWidth();
7
        double h = getHeight();
7
        double h = getHeight();
8
        RectangleInsets padding = getPadding();
8
        RectangleInsets padding = getPadding();
9
        if (padding != null) {
9
        topSpace = padding.calculateTopOutset(h);
10
            topSpace = padding.calculateTopOutset(h);
10
        bottomSpace = padding.calculateBottomOutset(h);
11
            bottomSpace = padding.calculateBottomOutset(h);
11
        leftSpace = padding.calculateLeftOutset(w);
12
            leftSpace = padding.calculateLeftOutset(w);
12
        rightSpace = padding.calculateRightOutset(w);
13
            rightSpace = padding.calculateRightOutset(w);
14
        }
13
        if (getPosition() == RectangleEdge.TOP) {
15
        if (getPosition() == RectangleEdge.LEFT) {
14
            startY = chartArea.getY() + topSpace;
16
            startX = chartArea.getX() + leftSpace;
15
        }
17
        }
16
        else {
18
        else {
17
            startY = chartArea.getY() + chartArea.getHeight() - bottomSpace - h;
19
            startX = chartArea.getMaxX() - rightSpace - w;
18
        }
20
        }
19
        // what is our alignment?
21
        // what is our alignment?
20
        HorizontalAlignment horizontalAlignment = getHorizontalAlignment();
22
        VerticalAlignment alignment = getVerticalAlignment();
21
        double startX = 0.0;
23
        double startY = 0.0;
22
        if (horizontalAlignment == HorizontalAlignment.CENTER) {
24
        if (alignment == VerticalAlignment.CENTER) {
23
            startX = chartArea.getX() + leftSpace
25
            startY = chartArea.getMinY() + topSpace
24
 + chartArea.getWidth() / 2.0
26
                     + chartArea.getHeight() / 2.0
25
                     - w / 2.0;
27
 - h / 2.0;
26
        }
28
        }
27
        else if (horizontalAlignment == HorizontalAlignment.LEFT) {
29
        else if (alignment == VerticalAlignment.TOP) {
28
            startX = chartArea.getX() + leftSpace;
30
            startY = chartArea.getMinY() + topSpace;
29
        }
31
        }
30
        else if (horizontalAlignment == HorizontalAlignment.RIGHT) {
32
        else if (alignment == VerticalAlignment.BOTTOM) {
31
            startX = chartArea.getX() + chartArea.getWidth() - rightSpace - w;
33
            startY = chartArea.getMaxY() - bottomSpace - h;
32
        }
34
        }
33
        g2.drawImage(this.image, (int) startX, (int) startY, (int) w, (int) h,
35
        g2.drawImage(this.image, (int) startX, (int) startY, (int) w, (int) h,
34
                null);
36
                null);
35
        return new Size2D(chartArea.getWidth() + leftSpace + rightSpace,
37
        return new Size2D(chartArea.getWidth() + leftSpace + rightSpace,
36
            h + topSpace + bottomSpace);
38
            h + topSpace + bottomSpace);
Summary
Number of common nesting structure subtrees1
Number of refactorable cases0
Number of non-refactorable cases1
Time elapsed for finding largest common nesting structure subtrees (ms)2.1
Clones locationClones are declared in the same class
Number of node comparisons238
  1. {Non-refactorable}
    Mapping Summary
    Number of mapped statements20
    Number of unmapped statements in the first code fragment5
    Number of unmapped statements in the second code fragment1
    Time elapsed for statement mapping (ms)35.7
    Clone typeType 3
    Mapped Statements
    ID Statement ID Statement
    1
    double startY = 0.0;
    18
    double startY = 0.0;
    2
    double topSpace = 0.0;
    2
    double topSpace = 0.0;
    7
    double h = getHeight();
    Differences
    Expression1Expression2Difference
    topSpacehVARIABLE_NAME_MISMATCH
    0.0getHeight()TYPE_COMPATIBLE_REPLACEMENT
    7
    double h = getHeight();
    3
    double bottomSpace = 0.0;
    3
    double bottomSpace = 0.0;
    4
    double leftSpace = 0.0;
    4
    double leftSpace = 0.0;
    5
    double rightSpace = 0.0;
    5
    double rightSpace = 0.0;
    6
    double w = getWidth();
    6
    double w = getWidth();
    7
    double h = getHeight();
    7
    double h = getHeight();
    2
    double topSpace = 0.0;
    Differences
    Expression1Expression2Difference
    htopSpaceVARIABLE_NAME_MISMATCH
    getHeight()0.0TYPE_COMPATIBLE_REPLACEMENT
    2
    double topSpace = 0.0;
    8
    RectangleInsets padding = getPadding();
    8
    RectangleInsets padding = getPadding();
    9
    topSpace = padding.calculateTopOutset(h);
    9
    topSpace = padding.calculateTopOutset(h);
    Preondition Violations
    Unmatched statement topSpace=padding.calculateTopOutset(h); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                                                        
    10
    bottomSpace = padding.calculateBottomOutset(h);
    10
    bottomSpace = padding.calculateBottomOutset(h);
    Preondition Violations
    Unmatched statement bottomSpace=padding.calculateBottomOutset(h); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                                                                      
    11
    leftSpace = padding.calculateLeftOutset(w);
    11
    leftSpace = padding.calculateLeftOutset(w);
    Preondition Violations
    Unmatched statement leftSpace=padding.calculateLeftOutset(w); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                                                              
    12
    rightSpace = padding.calculateRightOutset(w);
    12
    rightSpace = padding.calculateRightOutset(w);
    Preondition Violations
    Unmatched statement rightSpace=padding.calculateRightOutset(w); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
                                                                                                  
    13
    if (getPosition() == RectangleEdge.TOP)
    13
    if (getPosition() == RectangleEdge.TOP)
    14
    if (getPosition() == RectangleEdge.LEFT)
    Differences
    Expression1Expression2Difference
    TOPLEFTVARIABLE_NAME_MISMATCH
    14
    if (getPosition() == RectangleEdge.LEFT)
    14
    startY = chartArea.getY() + topSpace;
    14
    startY = chartArea.getY() + topSpace;
    15
    startX = chartArea.getX() + leftSpace;
    Differences
    Expression1Expression2Difference
    startYstartXVARIABLE_NAME_MISMATCH
    getYgetXMETHOD_INVOCATION_NAME_MISMATCH
    topSpaceleftSpaceVARIABLE_NAME_MISMATCH
    Preondition Violations
    Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression topSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression leftSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    15
    startX = chartArea.getX() + leftSpace;
    else
    else
    15
    startY = chartArea.getY() + chartArea.getHeight() - bottomSpace - h;
    15
    startY = chartArea.getY() + chartArea.getHeight() - bottomSpace - h;
    16
    startX = chartArea.getMaxX() - rightSpace - w;
    Differences
    Expression1Expression2Difference
    startYstartXVARIABLE_NAME_MISMATCH
    hrightSpaceVARIABLE_NAME_MISMATCH
    chartArea.getY() + chartArea.getHeight() - bottomSpacechartArea.getMaxX()INFIX_LEFT_OPERAND_MISMATCH
    chartArea.getY() + chartArea.getHeight() - bottomSpace - hchartArea.getMaxX() - rightSpace - wINFIX_EXTENDED_OPERAND_NUMBER_MISMATCH
    Preondition Violations
    Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression rightSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getY() + chartArea.getHeight() - bottomSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getY() + chartArea.getHeight() - bottomSpace - h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getMaxX() - rightSpace - w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    16
    startX = chartArea.getMaxX() - rightSpace - w;
    16
    HorizontalAlignment horizontalAlignment = getHorizontalAlignment();
                                                                                                                                              
    17
    double startX = 0.0;
    1
    double startX = 0.0;
                                                                                                                  
    17
    VerticalAlignment alignment = getVerticalAlignment();
    18
    if (horizontalAlignment == HorizontalAlignment.CENTER)
    18
    if (horizontalAlignment == HorizontalAlignment.CENTER)
    21
    if (alignment == VerticalAlignment.TOP)
    Differences
    Expression1Expression2Difference
    horizontalAlignmentalignmentVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    CENTERTOPVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    Preondition Violations
    Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.CENTER does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.TOP
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    21
    if (alignment == VerticalAlignment.TOP)
    19
    startX = chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0 - w / 2.0;
    19
    startX = chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0 - w / 2.0;
    22
    startY = chartArea.getMinY() + topSpace;
    Differences
    Expression1Expression2Difference
    startXstartYVARIABLE_NAME_MISMATCH
    -+OPERATOR_MISMATCH
    chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0chartArea.getMinY()INFIX_LEFT_OPERAND_MISMATCH
    w / 2.0topSpaceINFIX_RIGHT_OPERAND_MISMATCH
    Preondition Violations
    Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0 - w / 2.0 cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getMinY() + topSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    22
    startY = chartArea.getMinY() + topSpace;
    20
    else if (horizontalAlignment == HorizontalAlignment.LEFT)
    20
    else if (horizontalAlignment == HorizontalAlignment.LEFT)
    19
    else if (alignment == VerticalAlignment.CENTER)
    Differences
    Expression1Expression2Difference
    horizontalAlignmentalignmentVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    LEFTCENTERVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    Preondition Violations
    Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.LEFT does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.CENTER
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    19
    else if (alignment == VerticalAlignment.CENTER)
    21
    startX = chartArea.getX() + leftSpace;
    21
    startX = chartArea.getX() + leftSpace;
    20
    startY = chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0 - h / 2.0;
    Differences
    Expression1Expression2Difference
    startXstartYVARIABLE_NAME_MISMATCH
    +-OPERATOR_MISMATCH
    chartArea.getX()chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0INFIX_LEFT_OPERAND_MISMATCH
    leftSpaceh / 2.0INFIX_RIGHT_OPERAND_MISMATCH
    Preondition Violations
    Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getX() + leftSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0 - h / 2.0 cannot be parameterized, because it has dependencies to/from statements that will be extracted
    20
    startY = chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0 - h / 2.0;
    22
    else if (horizontalAlignment == HorizontalAlignment.RIGHT)
    22
    else if (horizontalAlignment == HorizontalAlignment.RIGHT)
    23
    else if (alignment == VerticalAlignment.BOTTOM)
    Differences
    Expression1Expression2Difference
    horizontalAlignmentalignmentVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    RIGHTBOTTOMVARIABLE_NAME_MISMATCH
    org.jfree.ui.HorizontalAlignmentorg.jfree.ui.VerticalAlignmentVARIABLE_TYPE_MISMATCH
    Preondition Violations
    Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.RIGHT does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.BOTTOM
    • Make classes org.jfree.ui.HorizontalAlignment and org.jfree.ui.VerticalAlignment extend a common superclass
    23
    else if (alignment == VerticalAlignment.BOTTOM)
    23
    startX = chartArea.getX() + chartArea.getWidth() - rightSpace - w;
    23
    startX = chartArea.getX() + chartArea.getWidth() - rightSpace - w;
    24
    startY = chartArea.getMaxY() - bottomSpace - h;
    Differences
    Expression1Expression2Difference
    startXstartYVARIABLE_NAME_MISMATCH
    wbottomSpaceVARIABLE_NAME_MISMATCH
    chartArea.getX() + chartArea.getWidth() - rightSpacechartArea.getMaxY()INFIX_LEFT_OPERAND_MISMATCH
    chartArea.getX() + chartArea.getWidth() - rightSpace - wchartArea.getMaxY() - bottomSpace - hINFIX_EXTENDED_OPERAND_NUMBER_MISMATCH
    Preondition Violations
    Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression bottomSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getX() + chartArea.getWidth() - rightSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getX() + chartArea.getWidth() - rightSpace - w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    Expression chartArea.getMaxY() - bottomSpace - h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    24
    startY = chartArea.getMaxY() - bottomSpace - h;
    24
    g2.drawImage(this.image, (int)startX, (int)startY, (int)w, (int)h, null);
    25
    g2.drawImage(this.image, (int)startX, (int)startY, (int)w, (int)h, null);
    25
    return new Size2D(chartArea.getWidth() + leftSpace + rightSpace, h + topSpace + bottomSpace);
    26
    return new Size2D(chartArea.getWidth() + leftSpace + rightSpace, h + topSpace + bottomSpace);
    Precondition Violations (40)
    Row Violation
    1Unmatched statement topSpace=padding.calculateTopOutset(h); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    2Unmatched statement bottomSpace=padding.calculateBottomOutset(h); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    3Unmatched statement leftSpace=padding.calculateLeftOutset(w); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    4Unmatched statement rightSpace=padding.calculateRightOutset(w); cannot be moved before or after the extracted code, because it has dependencies to/from statements that will be extracted
    5Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    6Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    7Expression topSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    8Expression leftSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    9Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    10Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    11Expression h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    12Expression rightSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    13Expression chartArea.getY() + chartArea.getHeight() - bottomSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    14Expression chartArea.getY() + chartArea.getHeight() - bottomSpace - h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    15Expression chartArea.getMaxX() - rightSpace - w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    16Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    17Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    18Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.CENTER does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.TOP
    19Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    20Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    21Expression chartArea.getX() + leftSpace + chartArea.getWidth() / 2.0 - w / 2.0 cannot be parameterized, because it has dependencies to/from statements that will be extracted
    22Expression chartArea.getMinY() + topSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    23Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    24Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    25Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.LEFT does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.CENTER
    26Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    27Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    28Expression chartArea.getX() + leftSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    29Expression chartArea.getMinY() + topSpace + chartArea.getHeight() / 2.0 - h / 2.0 cannot be parameterized, because it has dependencies to/from statements that will be extracted
    30Type org.jfree.ui.HorizontalAlignment of variable horizontalAlignment does not match with type org.jfree.ui.VerticalAlignment of variable alignment
    31Type org.jfree.ui.HorizontalAlignment does not match with type org.jfree.ui.VerticalAlignment
    32Type org.jfree.ui.HorizontalAlignment of variable HorizontalAlignment.RIGHT does not match with type org.jfree.ui.VerticalAlignment of variable VerticalAlignment.BOTTOM
    33Expression startX cannot be parameterized, because it has dependencies to/from statements that will be extracted
    34Expression startY cannot be parameterized, because it has dependencies to/from statements that will be extracted
    35Expression w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    36Expression bottomSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    37Expression chartArea.getX() + chartArea.getWidth() - rightSpace cannot be parameterized, because it has dependencies to/from statements that will be extracted
    38Expression chartArea.getX() + chartArea.getWidth() - rightSpace - w cannot be parameterized, because it has dependencies to/from statements that will be extracted
    39Expression chartArea.getMaxY() - bottomSpace - h cannot be parameterized, because it has dependencies to/from statements that will be extracted
    40Clone fragment #1 returns variables topSpace, h, padding, bottomSpace, leftSpace, w, rightSpace , while Clone fragment #2 returns variables padding, topSpace, h, bottomSpace, leftSpace, w, rightSpace