Source files: 42

Click here to show/hide file names

Clones detected: 54

1228 of 3670 lines are duplicates (33.46%)

Parameters
clustering_threshold = 10
distance_threshold = 200
size_threshold = 10
hashing_depth = 1
clusterize_using_hash = False
clusterize_using_dcup = False

Time elapsed
Construction of AST : 40.36 seconds
Building statement hash : 0.02 seconds
Building patterns : 8.73 seconds
Marking similar statements : 14.07 seconds
Finding similar sequences of statements : 1.07 seconds
Refining candidates : 0.94 seconds
Total time: 65.20
Started at: Fri Oct 19 07:47:12 2012
Finished at: Fri Oct 19 07:48:17 2012

Clone # 1
Distance between two fragments = 29
Clone size = 79
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 209
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 207
f1218  =  new  JButton();
getContentPane().add(f1218);
f1218
.setText("Save");
f1218.setBounds(12,  317,  70,  23);
f1218.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v8)  {
    f118.m712(f1018.getText());
btnSave  =  new  JButton();
getContentPane().add(btnSave);
btnSave
.setText("Save");
btnSave.setBounds(12,  317,  70,  23);
btnSave.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.saveMap(txtFilename.getText());
f1118  =  new  JButton();
getContentPane().add(f1118);
f1118
.setText("Load");
f1118.setBounds(87,  317,  68,  23);
f1118.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v9)  {
    f118.m812(f1018.getText());
btnLoad  =  new  JButton();
getContentPane().add(btnLoad);
btnLoad
.setText("Load");
btnLoad.setBounds(87,  317,  68,  23);
btnLoad.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.loadMap(txtFilename.getText());
f1018  =  new  JTextField();
getContentPane().add(f1018);
f1018.setBounds(12,  345,  225,  23);
f1018.setText("test.map");
txtFilename  =  new  JTextField();
getContentPane().add(txtFilename);
txtFilename.setBounds(12,  345,  225,  23);
txtFilename.setText("test.map");
f918  =  new  JButton();
getContentPane().add(f918);
f918
.setText("New");
f918.setBounds(160,  317,  71,  23);
f918.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v10)  {
    f118.m612(28,  31);
btnNew  =  new  JButton();
getContentPane().add(btnNew);
btnNew
.setText("New");
btnNew.setBounds(160,  317,  71,  23);
btnNew.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.newMap(28,  31);
f818  =  new  JButton();
getContentPane().add(f818);
f818
.setText("Teleport");
f818.setBounds(237,  218,  110,  23);
f818.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v11)  {
    f118.m012(GameObject.f710);
    f118.m512
(Integer.parseInt(f418.getText()),
      Integer.parseInt(f318.getText()));
btnTeleport  =  new  JButton();
getContentPane().add(btnTeleport);
btnTeleport
.setText("Teleport");
btnTeleport.setBounds(237,  218,  110,  23);
btnTeleport.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_TELEPORT);
    editor.setMarkerTeleport
(Integer.parseInt(txtTeleportX.getText()),
      Integer.parseInt(txtTeleportY.getText()));
f718  =  new  JLabel();
getContentPane().add(f718);
f718.setText("Teleport  Settings");
f718.setBounds(237,  196,  123,  16);
lblTeleportSettings  =  new  JLabel();
getContentPane().add(lblTeleportSettings);
lblTeleportSettings.setText("Teleport  Settings");
lblTeleportSettings.setBounds(237,  196,  123,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("Dest  X:");
f618.setBounds(237,  249,  60,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lblTeleportX.setBounds(237,  249,  60,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  279,  52,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  279,  52,  16);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  246,  85,  23);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  246,  85,  23);
f318  =  new  JTextArea();
getContentPane().add(f318);
f318.setText("17");
f318.setBounds(280,  275,  82,  20);
txtTeleportY  =  new  JTextArea();
getContentPane().add(txtTeleportY);
txtTeleportY.setText("17");
txtTeleportY.setBounds(280,  275,  82,  20);
f1818  =  new  JButton();
getContentPane().add(f1818);
f1818
.setText("Powerup");
f1818.setBounds(12,  65,  102,  23);
f1818.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v12)  {
    f118.m012(GameObject.f110);
btnPowerup  =  new  JButton();
getContentPane().add(btnPowerup);
btnPowerup
.setText("Powerup");
btnPowerup.setBounds(12,  65,  102,  23);
btnPowerup.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_POWERUP);
f1718  =  new  JLabel();
getContentPane().add(f1718);
f1718.setText("Ghost  Settings");
f1718.setBounds(272,  12,  76,  16);
lblGhosts  =  new  JLabel();
getContentPane().add(lblGhosts);
lblGhosts.setText("Ghost  Settings");
lblGhosts.setBounds(272,  12,  76,  16);
f1618  =  new  JCheckBox();
getContentPane().add(f1618);
f1618
.setText("Trapped");
f1618.setBounds(360,  10,  100,  20);
f1618.addActionListener(new  ActionListener()  {
  @Override
  public  void  actionPerformed(ActionEvent  v13)  {
    f118.m312(!f118.m412());
    System.out.println(f118.m412());
chkGhostTrapped  =  new  JCheckBox();
getContentPane().add(chkGhostTrapped);
chkGhostTrapped
.setText("Trapped");
chkGhostTrapped.setBounds(360,  10,  100,  20);
chkGhostTrapped.addActionListener(new  ActionListener()  {
  @Override
  public  void  actionPerformed(ActionEvent  evt)  {
    editor.setMarkerGhostTrapped(!editor.getMarkerGhostTrapped());
    System.out.println(editor.getMarkerGhostTrapped());



Clone # 2
Distance between two fragments = 25
Clone size = 61
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 79
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 79
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
getContentPane().setLayout(null); getContentPane().setLayout(null);
this.setTitle("Pacman  Map  Editor  -  Ramsey  Kant"); this.setTitle("Pacman  Map  Editor  -  Ramsey  Kant");
this.addWindowListener(new  WindowAdapter()  {
  @Override
  public  void  windowClosed(WindowEvent  v1)  {
    f118.m020().m73(State.f520);
this.addWindowListener(new  WindowAdapter()  {
  @Override
  public  void  windowClosed(WindowEvent  evt)  {
    editor.getGame().requestChangeState(State.STATE_EXITING);
f2518  =  new  JMenuBar();
setJMenuBar(f2518);
{
  f2418  =  new  JMenu();
  f2518.add(f2418);
  f2418
.setText("File");
  {
    f2318  =  new  JMenuItem();
    f2418.add(f2318);
    f2318
.setText("Load");
  }
  {
    f2218  =  new  JMenuItem();
    f2418.add(f2218);
    f2218
.setText("Save");
  }
  {
    f218  =  new  JMenuItem();
    f2418.add(f218);
    f218
.setText("Save  As..");
  }
  {
    f2118  =  new  JSeparator();
    f2418.add(f2118
);
  }
  {
    f2018  =  new  JMenuItem();
    f2418.add(f2018);
    f2018
.setText("Exit");
jMenuBar1  =  new  JMenuBar();
setJMenuBar(jMenuBar1);
{
  jMenuFile  =  new  JMenu();
  jMenuBar
1.add(jMenuFile);
  jMenuFile
.setText("File");
  {
    jItemLoad  =  new  JMenuItem();
    jMenuFile.add(jItemLoad);
    jItemLoad
.setText("Load");
  }
  {
    jItemSave  =  new  JMenuItem();
    jMenuFile.add(jItemSave);
    jItemSave
.setText("Save");
  }
  {
    jItemSaveAs  =  new  JMenuItem();
    jMenuFile.add(jItemSaveAs);
    jItemSaveAs
.setText("Save  As..");
  }
  {
    jSeperatorFile  =  new  JSeparator();
    jMenuFile.add(jSeperatorFile
);
  }
  {
    jItemExit  =  new  JMenuItem();
    jMenuFile.add(jItemExit);
    jItemExit
.setText("Exit");
f3018  =  new  JButton();
getContentPane().add(f3018);
f3018
.setText("Wall");
f3018.setBounds(12,  218,  59,  23);
f3018.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v2)  {
    f118.m012(GameObject.f610);
btnWall  =  new  JButton();
getContentPane().add(btnWall);
btnWall
.setText("Wall");
btnWall.setBounds(12,  218,  59,  23);
btnWall.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_WALL);
f2918  =  new  JButton();
getContentPane().add(f2918);
f2918
.setText("Dot");
f2918.setBounds(12,  36,  59,  23);
f2918.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v3)  {
    f118.m012(GameObject.f010);
btnDot  =  new  JButton();
getContentPane().add(btnDot);
btnDot
.setText("Dot");
btnDot.setBounds(12,  36,  59,  23);
btnDot.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_DOT);
f2818  =  new  JButton();
getContentPane().add(f2818);
f2818
.setText("Pacman");
f2818.setBounds(136,  36,  110,  23);
f2818.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v4)  {
    f118.m012(GameObject.f310);
btnPacman  =  new  JButton();
getContentPane().add(btnPacman);
btnPacman
.setText("Pacman");
btnPacman.setBounds(136,  36,  110,  23);
btnPacman.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_PLAYER);
f2718  =  new  JSeparator();
getContentPane().add(f2718);
f2718.setBounds(12,  301,  360,  10);
jSeparator1  =  new  JSeparator();
getContentPane().add(jSeparator1);
jSeparator1.setBounds(12,  301,  360,  10);
f2618  =  new  JLabel();
getContentPane().add(f2618);
f2618.setText("Placeable  Objects");
f2618.setBounds(12,  12,  129,  16);
lblPlaceableObjs  =  new  JLabel();
getContentPane().add(lblPlaceableObjs);
lblPlaceableObjs.setText("Placeable  Objects");
lblPlaceableObjs.setBounds(12,  12,  129,  16);
f1918  =  new  JLabel();
getContentPane().add(f1918);
f1918.setText("Wall  Type");
f1918.setBounds(12,  196,  82,  16);
jWallTypeLabel  =  new  JLabel();
getContentPane().add(jWallTypeLabel);
jWallTypeLabel.setText("Wall  Type");
jWallTypeLabel.setBounds(12,  196,  82,  16);



Clone # 3
Distance between two fragments = 20
Clone size = 34
Source file "detect/renamingContractionLoop/renamingContractionLoop/game/Game.java"
The first line is 67
Source file "detect/renamingContractionLoop/original/game/Game.java"
The first line is 67
  private  void  m03()  {
    //  Debug  vars
    f13  =  false;

    f113  =  "test.map";
    f93  =  false;

    //  Setup  the  game  frame
    f33  =  new  Frame("Pacman");
    f33.setLayout(null);
    setBounds(0,  0,  f43f53);
    f33
.add(this);
    f33.setSize(f43f53);
    f33
.setResizable(false);
    f33.setVisible(true);

    //  Set  the  exit  handler  with  an  anonymous  class
    f33.addWindowListener(new  WindowAdapter()  {
      @Override
      public  void  windowClosing(WindowEvent  v2)  {
        //  Exit  main  thread
        f23  =  false;
      }
    });

    //  Setup  double  buffering
    setIgnoreRepaint(true);  //  We'll  handle  repainting
    create
BufferStrategy(2);
    f63
  =  getBufferStrategy();

    f23  =  true;
  private  void  init()  {
    //  Debug  vars
    debugEnabled  =  false;

    startMap  =  "test.map";
    changeStateRequested  =  false;

    //  Setup  the  game  frame
    frame  =  new  Frame("Pacman");
    frame.setLayout(null);
    setBounds(0,  0,  RES_XRES_Y);
    frame
.add(this);
    frame.setSize(RES_XRES_Y);
    frame
.setResizable(false);
    frame.setVisible(true);

    //  Set  the  exit  handler  with  an  anonymous  class
    frame.addWindowListener(new  WindowAdapter()  {
      @Override
      public  void  windowClosing(WindowEvent  e)  {
        //  Exit  main  thread
        runMainThread  =  false;
      }
    });

    //  Setup  double  buffering
    setIgnoreRepaint(true);  //  We'll  handle  repainting
    createBufferStrategy(
2);
    m_gBuffer
  =  getBufferStrategy();

    runMainThread
  =  true;
public  Frame  m13()  {
  return  f33;
public  Frame  getFrame()  {
  return  frame;
public  Graphics2D  m23()  {
  return  (Graphics2D)  f63.getDrawGraphics();
public  Graphics2D  getGraphicsContext()  {
  return  (Graphics2D)  m_gBuffer.getDrawGraphics();
public  String  m33()  {
  return  f113;
public  String  getStartMap()  {
  return  startMap;
public  void  m43(String  v3)  {
  f113  =  v3;
public  void  setStartMap(String  m)  {
  startMap  =  m;
public  boolean  m53()  {
  return  f13;
public  boolean  isDebugEnabled()  {
  return  debugEnabled;
public  void  m63()  {
  f13  =  !f13;
public  void  toggleDebug()  {
  debugEnabled  =  !debugEnabled;
public  void  m73(int  v4)  {
  f103  =  v4;
  f93  =  true;
public  void  requestChangeState(int  state)  {
  requestedState  =  state;
  changeStateRequested  =  true;



Clone # 4
Distance between two fragments = 36
Clone size = 32
Source file "detect/renamingContractionLoop/original/state/StateEditor.java"
The first line is 74
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateEditor.java"
The first line is 74
public  void  setMarkerObjectType(int  t)  {
  markerObjectType  =  t;
public  void  m012(int  v1)  {
  f412  =  v1;
public  void  setMarkerWallType(byte  t)  {
  markerWallType  =  t;
public  void  m112(byte  v2)  {
  f512  =  v2;
public  void  setMarkerGhostType(String  t)  {
  markerGhostType  =  t;
public  void  m212(String  v3)  {
  f612  =  v3;
public  void  setMarkerGhostTrapped(boolean  t)  {
  markerGhostTrapped  =  t;
public  void  m312(boolean  v4)  {
  f712  =  v4;
public  boolean  getMarkerGhostTrapped()  {
  return  markerGhostTrapped;
public  boolean  m412()  {
  return  f712;
public  void  setMarkerTeleport(int  x,  int  y)  {
  markerTeleportX  =  x;
  markerTeleportY  =  y;
public  void  m512(int  v5,  int  v6)  {
  f812  =  v5;
  f912  =  v6;
  @Override
  public  void  reset()  {
    //  Force  previous  references  out  of  scope
    marker  =  null;
    map  =  null;

    markerObjectType  =  GameObject.OBJECT_DOT;
  @Override
  public  void  m120()  {
    //  Force  previous  references  out  of  scope
    f112  =  null;
    f312  =  null;

    f412  =  GameObject.f010;
  public  void  newMap(int  width,  int  height)  {
    //  Setup  the  game  map
    game.getGraphicsContext
().setBackground(Color.BLACK);
    mapWidth  =  width;
    mapHeight  =  height;
    map  =  new  Map(28,  31,  32);

    //  Create  the  marker  (but  don't  put  it  "in"  the  map)
    marker
  =  new  EditorMarker(Color.GREEN,  map,  0,  0);
  public  void  m612(int  v7,  int  v8)  {
    //  Setup 
thgame  map
    f620.m23
().setBackground(Color.BLACK);
    f1012  =  v7;
    f1112  =  v8;
    f312  =  new  Map(28,  31,  32);

    //  Create 
the  marker  (but  don't  put  it  "in"  the  map)
    f112
  =  new  EditorMarker(Color.GREEN,  f312,  0,  0);
public  void  saveMap(String  filename)  {
  map.write(System.getProperty("user.dir")  +  "\\"  +  filename);
public  void  m712(String  v9)  {
  f312.m235(System.getProperty("user.dir")  +  "\\"  +  v9);
  public  void  loadMap(String  filename)  {
    //  Setup  the  game  map
    game.getGraphicsContext().setBackground(Color.BLACK);
    map  =  new  Map(System.getProperty("user.dir")  +  "\\"  +  filename,  32);
    mapWidth  =  map.getWidth();
    mapHeight
  =  map.getHeight();

    //  Create  the  marker  (but  don't  put  it  "in"  the  map)
    marker  =  new  EditorMarker(Color.GREEN,  map,  0,  0);
  public  void  m812(String  v10)  {
    //  Setup  the  game  map
    f620.m23().setBackground(Color.BLACK);
    f312  =  new  Map(System.getProperty("user.dir")  +  "\\"  +  v10,  32);
    f1012  =  f312.m05();
    f1112
  =  f312.m15();

    //  Create  the  marker  (but  don't  put  it  "in"  the  map)
    f112  =  new  EditorMarker(Color.GREEN,  f312,  0,  0);



Clone # 5
Distance between two fragments = 11
Clone size = 27
Source file "detect/renamingContractionLoop/original/game/Game.java"
The first line is 227
Source file "detect/renamingContractionLoop/renamingContractionLoop/game/Game.java"
The first line is 216
if  (currentState  !=  null)  {
  frame.removeKeyListener(currentState);
  removeKeyListener(currentState);
  currentState.end();
if  (f83  !=  null)  {
  f33.removeKeyListener(f83);
  removeKeyListener(f83);
  f83.m320();
stateId  =  state; f73  =  v9;
switch  (stateId)  {
  case  State.STATE_GAME:
    currentState  =  new  StateGame(this);
    break;
  case  State.STATE_SCOREBOARD:
    currentState
  =  new  StateScoreboard(this);
    /*
      *  StateGame  sb  =  new  StateScoreboard();  int  newScore  =  0;
      *
      *  //  If  the  previous  state  was  STATE_GAME,  pull  the  session
      *  score  and  pass  it  to  the  scoreboard  if(currentState
      *  instanceof  StateGame)
      *  sb.addScore((int)((StateGame)currentState
      *  ).getSessionScore()));
      *
      *  currentState  =  sb;
      */
    break;
  case  State.STATE_EDITOR:
    currentState  =  new  StateEditor(this);
    break;
  case  State.STATE_MENU:
    currentState  =  new  StateMenu(this);
    break;
  case  State.STATE_EXITING:
    currentState
  =  null;
    runMainThread  =  false;
    break;
  default:
    break;
switch  (f73)  {
  case  State.f220:
    f83  =  new  State
Game(this);
    break;
  case  State.f120
:
    f83  =  new  StateScoreboard(this);
    /*
      *  StateGame  sb  =  new  StateScoreboard();  int  newScore  =  0;
      *
      *  //  If  the  previous  state  was  STATE_GAME,  pull  the  session
      *  score  and  pass  it  to  the  scoreboard  if(currentState
      *  instanceof  StateGame)
      *  sb.addScore((int)((StateGame)currentState
      *  ).getSessionScore()));
      *
      *  currentState  =  sb;
      */
    break;
  case  State.f420:
    f83  =  new  State
Editor(this);
    break;
  case  State.f020
:
    f83  =  new  StateMenu(this);
    break;
  case  State.f520:
    f83  =  null;
    f23  =  false;
    break;
  default:
    break;
if  (currentState  !=  null)  {
  frame.addKeyListener(currentState);
  addKeyListener(currentState);
if  (f83  !=  null)  {
  f33.addKeyListener(f83);
  addKeyListener(f83);



Clone # 6
Distance between two fragments = 18
Clone size = 21
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 414
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 421
public  int  findDistance(GameObject  start,  GameObject  end)  {
  return  (int)  Math.sqrt(Math.pow(Math.abs(start.getX()  -  end.getX()),  2)
    +  Math.pow(Math.abs(start.getY()  -  end.getY()),  2));
public  int  m175(GameObject  v34,  GameObject  v35)  {
  return  (int)  Math.sqrt(Math.pow(Math.abs(v34.m310()  -  v35.m310()),  2)
    +  Math.pow(Math.abs(v34.m410()  -  v35.m410()),  2));
  public  boolean  isEmpty(int  x,  int  y)  {
    //  Check  bounds
    if  (x  <  0  ||  y  <  0  ||  x  >=  mapWidth  ||  y  >=  mapHeight)  {
      return  false;
    }

    //  Check  if  the  Object  is  hitting  something  on  the  collideMap
    if  (getCollidable(xy)  !=  0)  {
      return  false;
    }

    //  Check  if  object  is  hitting  something  on  the  itemMap
    if  (getItem(xy)  !=  null)  {
      return  false;
    }

    //  Actor  collission
    if  (getActor(xy,  false)  !=  null)  {
      return  false;
    }

    return  true;
  public  boolean  m185(int  v36,  int  v37)  {
    //  Check  bounds
    if  (v36  <  0  ||  v37  <  0  ||  v36  >=  f05  ||  v37  >=  f15)  {
      return  false;
    }

    //  Check  if  the  Object  is  hitting  something  on  the  collideMap
    if  (m95(v36v37)  !=  0)  {
      return  false;
    }

    //  Check  if  object  is  hitting  something  on  the  itemMap
    if  (m105(v36v37)  !=  null)  {
      return  false;
    }

    //  Actor  collission
    if  (m135(v36v37,  false)  !=  null)  {
      return  false;
    }

    return  true;
  public  boolean  canMove(Actor  act,  int  x,  int  y)  {
    if  (act  ==  null)  {
      return  false;
    }

    //  Check  bounds
    if  (!isInBounds(xy))  {
      return  false;
    }

    //  Check  if  the  Object  is  hitting  something  on  the  collideMap
    if  (getCollidable(xy)  !=  0)  {
      return  false;
    }

    //  Allow  the  Actor  to  move
    return  true;
  public  boolean  m195(Actor  v38,  int  v39,  int  v40)  {
    if  (v38  ==  null)  {
      return  false;
    }

    //  Check  bounds
    if  (!m215(v39v40))  {
      return  false;
    }

    //  Check  if  the  Object  is  hitting  something  on  the  collideMap
    if  (m95(v39v40)  !=  0)  {
      return  false;
    }

    //  Allow  the  Actor  to  move
    return  true;



Clone # 7
Distance between two fragments = 16
Clone size = 19
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 99
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 99
public  int  getWidth()  {
  return  mapWidth;
public  int  m05()  {
  return  f05;
public  int  getHeight()  {
  return  mapHeight;
public  int  m15()  {
  return  f15;
public  int  getNumActors()  {
  return  actorList.size();
public  int  m25()  {
  return  f85.size();
public  byte[][]  getCollidableMap()  {
  return  collideMap;
public  byte[][]  m35()  {
  return  f65;
public  Item[][]  getItemMap()  {
  return  itemMap;
public  Item[][]  m45()  {
  return  f75;
public  int  getDotsRemaining()  {
  return  dotsRemaining;
public  int  m55()  {
  return  f95;
  public  boolean  addCollidable(int  x,  int  y,  byte  t)  {
    //  Check  bounds
    if  (x
  <  0  ||  y  <  0  ||  x  >=  mapWidth  ||  y  >=  mapHeight)  {
      return  false;
    }

    //  Check  if  theres  already  something  there
    if  (collideMap[x][y]  >  0)  {
      return  false;
    }

    //  Add  to  the  collideMap
    collideMap[x][y
]  =  t;
    return  true;
  public  boolean  m65(int  v5,  int  v6,  byte  v7)  {
    // 
Check  bounds
    if 
(v5  <  0  ||  v6  <  0  ||  v5  >=  f05  ||  v6  >=  f15)  {
      return  false;
    }

    //  Check  if  theres  already  so
mething  there
    if  (f65[v5][v6]  >  0)  {
      return  false;
    }

    //  Add  to  the  collideM
ap
    f65[v5][v6
]  =  v7;
    return  true;



Clone # 8
Distance between two fragments = 26
Clone size = 19
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 317
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 346
public  float  m98(Actor  v36,  int  v37,  int  v38,  int  v39,  int  v40)  {
  return  f28.m225(v36v37v38v39v40);
public  float  getMovementCost(Actor  mover,  int  sx,  int  sy,  int  tx,  int  ty)  {
  return  map.getCost(moversxsytxty);
public  float  m108(Actor  v41,  int  v42,  int  v43,  int  v44,  int  v45)  {
  return  f68.m016(f28v41v42v43v44v45);
public  float  getHeuristicCost(Actor  mover,  int  x,  int  y,  int  tx,  int  ty)  {
  return  heuristic.getCost(mapmoverxytxty);
  private  class  SortedNodeList  {
    /**  The  list  of  elements  */
    private  final  ArrayList<Node>  f08  =  new  ArrayList<Node>();

    /**
      *  Retrieve  the  first  element  from  the  list
      *
      *  @return  The  first  element  from  the  list
      */
    public  Object  m08()  {
        return  f08.get(0);
    }

    /**
      *  Empty  the  list
      */
    public  void  m18()  {
        f08.clear();
    }

    /**
      *  Add  an  element  to  the  list  -  causes  sorting
      *
      *  @param  v46
      *                        The  element  to  add
      */
    public  void  m28
(Node  v46)  {
        f08.add(v46);
        Collections.sort(f08);
    }

    /**
      *  Remove  an  element  from  the  list
      *
      *  @param  v47
      *                        The  element  to  remo
ve
      */
    public 
void  m38(Object  v47)  {
        f08.remove(v47);
    }

    /**
      *  Get  the  number  of  elements  in  the  list
      *
      *  @return  The  number  of  element  in  the  list
      */
    public  int  m48()  {
        return  f08
.size();
    }

    /**
      *  Check  if  an  element  is  in  the  list
      *
      *  @param  v48
      *                        The  element  to  search  for
      *  @return  True  if  the  element  is  in  the  list
      */
    public  boolean  m58(Object  v48)  {
        return  f08.contains(v48);
  private  class  SortedNodeList  {
    /**  The  list  of  elements  */
    private  final  ArrayList<Node>  list  =  new  ArrayList<Node>();

    /**
      *  Retrieve  the  first  element  from  the  list
      *
      *  @return  The  first  element  from  the  list
      */
    public  Object  first()  {
        return  list.get(0);
    }

    /**
      *  Empty  the  list
      */
    public  void  clear()  {
        list.clear();
    }

    /**
      *  Add  an  element  to  the  list  -  causes  sorting
      *
      *  @param  o
      *                        The  element  to  add
      */
    public 
void  add(Node  o)  {
        list.add(o);
        Collections.sort(list);
    }

    /**
      *  Remove  an  element  from  the  list
      *
      *  @param  o
      *                        The  element  to  remo
ve
      */
    public 
void  remove(Object  o)  {
        list.remo
ve(o);
    }

    /**
      *  Get  the  number  of  elements  in  the  list
      *
      *  @return  The  number  of  element  in  the  list
      */
    public  int  size(
)  {
        return  list.size();
    }

    /**
      *  Check  if  an  element  is  in  the  list
      *
      *  @param  o
      *                        The  element  to  search  for
      *  @return  True  if  the  element  is  in  the  list
      */
    public  boolean  contains(Object  o)  {
        return  list.contains(o);



Clone # 9
Distance between two fragments = 8
Clone size = 17
Source file "detect/renamingContractionLoop/original/state/StateGame.java"
The first line is 271
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 265
  if  (game.isDebugEnabled())  {
    g.setColor(Color.RED);
    g
.drawString("DEBUG  ON",  750,  650);
    /*
      *  //  Paint  gridline  overlay  for(int  i  =  0;  i  <  mapWidth;  i++)
      *  g.drawLine(i*map.CELL_SIZE,  0,  i*map.CELL_SIZE,
      *  mapHeight*map.CELL_SIZE);  for(int  i  =  0;  i  <  mapHeight;  i++)
      *  g.drawLine(0,  i*map.CELL_SIZE,  mapWidth*map.CELL_SIZE,
      *  i*map.CELL_SIZE);
      */

    //  Player  X,Y  coordinates  bottom  right
    g.drawString("positionX:  "  +  player.getX(),  750,  675);
    g.drawString("positionY:  "  +  player.getY(),  750,  700);
  if  (f620.m53())  {
    v5.
setColor(Color.RED);
    v5
.drawString("DEBUG  ON",  750,  650);
    /*
      *  //  Paint  gridline  overlay  for(int  i  =  0;  i  <  mapWidth;  i++)
      *  g.drawLine(i*map.CELL_SIZE,  0,  i*map.CELL_SIZE,
      *  mapHeight*map.CELL_SIZE);  for(int  i  =  0;  i  <  mapHeight;  i++)
      *  g.drawLine(0,  i*map.CELL_SIZE,  mapWidth*map.CELL_SIZE,
      *  i*map.CELL_SIZE);
      */

    //  Player  X,Y  coordinates  bottom  right
    v5.drawString("positionX:  "  +  f04.m310(),  750,  675);
    v5.drawString("positionY:  "  +  f04.m410(),  750,  700);
if  (gamePaused)  {
  g.setColor(Color.RED);
  g.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24));
  g.drawString("PAUSED",  750,  500);
  if  (pauseTime  >  System.currentTimeMillis())  {
    g.drawString(
      "Pause  ends  in..."  +  ((pauseTime  -  System.currentTimeMillis()) 
/  1000),
      750,  550);
  }
  if  (pauseTime  !=  0  &&  System.currentTimeMillis()  >  pauseTime)  {
    pauseTime  =  0;
    gamePaused  =  false;
  }
  return;
if  (f74)  {
  v5.setColor(Color.RED);
  v5.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24));
  v5.drawString("PAUSED",  750,  500);
  if  (f84  >  System.currentTimeMillis())  {
    v5.drawString(
      "Pause  ends  in..."  +  ((f84  -
  System.currentTimeMillis())  /  1000),
      750,  550);
  }
  if  (f84  !=  0  &&  System.currentTimeMillis()  >  f84)  {
    f84  =  0;
    f74  =  false;
  }
  return;



Clone # 10
Distance between two fragments = 15
Clone size = 17
Source file "detect/renamingContractionLoop/original/state/StateGame.java"
The first line is 154
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 159
g.translate(10,  30); v5.translate(10,  30);
g.setColor(Color.WHITE); v5.setColor(Color.WHITE);
g.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24)); v5.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24));
g.drawString("PACMAN  by  Ramsey  Kant",  680,  50); v5.drawString("PACMAN  by  Ramsey  Kant",  680,  50);
g.drawString("Score:  "  +  player.getScore(),  750,  100); v5.drawString("Score:  "  +  f04.m115(),  750,  100);
g.drawString("Total:  "  +  sessionScore,  750,  150); v5.drawString("Total:  "  +  f54,  750,  150);
g.drawString("Lives:  "  +  livesRemaining,  750,  200); v5.drawString("Lives:  "  +  f64,  750,  200);
g.drawString("Level:  "  +  currentLevel,  750,  250); v5.drawString("Level:  "  +  f44,  750,  250);
if  (!gamePaused)  {
  ai.process();
  player.act();
if  (!f74)  {
  f24.m27();
  f04.m510();
if  (player.isDead())  {
  lose();
  return;
if  (f04.m39())  {
  m34();
  return;
if  (map.getDotsRemaining()  <=  0)  {
  win();
  return;
if  (f14.m55()  <=  0)  {
  m24();
  return;



Clone # 11
Distance between two fragments = 17
Clone size = 16
Source file "detect/renamingContractionLoop/original/actors/Ghost.java"
The first line is 56
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Ghost.java"
The first line is 56
public  boolean  isInFear()  {
  return  inFear;
public  boolean  m017()  {
  return  f417;
public  void  setFear(boolean  f)  {
  inFear  =  f;
public  void  m117(boolean  v5)  {
  f417  =  v5;
public  boolean  isTrapped()  {
  return  trapped;
public  boolean  m217()  {
  return  f317;
public  void  setTrapped(boolean  t)  {
  trapped  =  t;
public  void  m317(boolean  v6)  {
  f317  =  v6;
public  boolean  needsNewPath()  {
  return  needNewPath;
public  boolean  m417()  {
  return  f217;
public  void  updatePath(Path  p)  {
  nextStepIdx  =  1;
  path  =  p;
  needNewPath  =  false;
public  void  m517(Path  v7)  {
  f117  =  1;
  f017  =  v7;
  f217  =  false;
public  void  setDebugDrawPath(boolean  d)  {
  debugDrawPath  =  d;
public  void  m617(boolean  v8)  {
  f517  =  v8;



Clone # 12
Distance between two fragments = 5
Clone size = 16
Source file "detect/renamingContractionLoop/original/state/StateMenu.java"
The first line is 83
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateMenu.java"
The first line is 83
g.setColor(Color.YELLOW); v5.setColor(Color.YELLOW);
g.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  50)); v5.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  50));
g.fillArc(56,  92,  100,  100,  35,  270);  //  First  pacman v5.fillArc(56,  92,  100,  100,  35,  270);  //  First  pacman
g.drawString("PACMAN",  350,  180); v5.drawString("PACMAN",  350,  180);
g.fillArc(780,  92,  100,  100,  35,  270); v5.fillArc(780,  92,  100,  100,  35,  270);
g.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24)); v5.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  24));
g.drawString("Play  Game",  380,  300); v5.drawString("Play  Game",  380,  300);
g.drawString("Scoreboard",  380,  340); v5.drawString("Scoreboard",  380,  340);
g.drawString("Exit",  380,  380); v5.drawString("Exit",  380,  380);
if  (mapList.length  >  0)  {
  g.drawString("Current  Map:  "  +  mapList[currentMapOption],  380,  600);
}  else  {
  g.drawString(
    "No  maps  detected.  Have  you  placed  the  maps  file  in  the  same  directory  as  the  program?",
    100,  600);
if  (f42.length  >  0)  {
  v5.drawString("Current  Map:  "  +  f42[f32],  380,  600);
}  else  {
  v5.drawString(
    "No  maps  detected.  Have  you  placed  the  maps  file  in  the  same  directory  as  the  program?",
    100,  600);
g.setColor(Color.RED); v5.setColor(Color.RED);
g.fillRect(cursorXcursorY,  150,  5); v5.fillRect(f02f12,  150,  5);



Clone # 13
Distance between two fragments = 9
Clone size = 16
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 134
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 122
btnDot  =  new  JButton();
getContentPane().add(btnDot);
btnDot
.setText("Dot");
btnDot.setBounds(12,  36,  59,  23);
btnDot.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_DOT);
btnWall  =  new  JButton();
getContentPane().add(btnWall);
btnWall
.setText("Wall");
btnWall.setBounds(12,  218,  59,  23);
btnWall.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_WALL);
btnPacman  =  new  JButton();
getContentPane().add(btnPacman);
btnPacman
.setText("Pacman");
btnPacman.setBounds(136,  36,  110,  23);
btnPacman.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_PLAYER);
btnDot  =  new  JButton();
getContentPane().add(btnDot);
btnDot
.setText("Dot");
btnDot.setBounds(12,  36,  59,  23);
btnDot.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_DOT);



Clone # 14
Distance between two fragments = 13
Clone size = 16
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 134
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 122
btnDot  =  new  JButton();
getContentPane().add(btnDot);
btnDot
.setText("Dot");
btnDot.setBounds(12,  36,  59,  23);
btnDot.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_DOT);
f3018  =  new  JButton();
getContentPane().add(f3018);
f3018
.setText("Wall");
f3018.setBounds(12,  218,  59,  23);
f3018.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v2)  {
    f118.m012(GameObject.f610);
btnPacman  =  new  JButton();
getContentPane().add(btnPacman);
btnPacman
.setText("Pacman");
btnPacman.setBounds(136,  36,  110,  23);
btnPacman
.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_PLAYER);
f2918  =  new  JButton();
getContentPane().add(f2918);
f2918
.setText("Dot");
f2918.setBounds(12,  36,  59,  23);
f2918
.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v3)  {
    f118.m012(GameObject.f010);



Clone # 15
Distance between two fragments = 13
Clone size = 16
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 134
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 122
f2918  =  new  JButton();
getContentPane().add(f2918);
f2918
.setText("Dot");
f2918.setBounds(12,  36,  59,  23);
f2918.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v3)  {
    f118.m012(GameObject.f010);
btnWall  =  new  JButton();
getContentPane().add(btnWall);
btnWall
.setText("Wall");
btnWall.setBounds(12,  218,  59,  23);
btnWall.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_WALL);
f2818  =  new  JButton();
getContentPane().add(f2818);
f2818.setText("Pacman");
f2818.setBounds(1
36,  36,  110,  23);
f2818.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v4)  {
    f118.m012(GameObject.f310);
btnDot  =  new  JButton();
getContentPane().add(btnDot);
btnDot.setText("Dot");
btnDot.setBounds(1
236,  59,  23);
btnDot.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_DOT);



Clone # 16
Distance between two fragments = 11
Clone size = 16
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 134
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 122
f2918  =  new  JButton();
getContentPane().add(f2918);
f29
18.setText("Dot");
f2918.setBounds(12,  36,  59,  23);
f2918.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v3)  {
    f118.m012(GameObject.f010);
f3018  =  new  JButton();
getContentPane().add(f3018);
f30
18.setText("Wall");
f3018.setBounds(12,  218,  59,  23);
f3018.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v2)  {
    f118.m012(GameObject.f610);
f2818  =  new  JButton();
getContentPane().add(f2818);
f28
18.setText("Pacman");
f2818.setBounds(136,  36,  110,  23);
f28
18.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v4)  {
    f118.m012(GameObject.f310);
f2918  =  new  JButton();
getContentPane().add(f2918);
f29
18.setText("Dot");
f2918.setBounds(12,  36,  59,  23);
f29
18.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v3)  {
    f118.m012(GameObject.f010);



Clone # 17
Distance between two fragments = 22
Clone size = 16
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 263
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 269
lblTeleportSettings  =  new  JLabel();
getContentPane().add(lblTeleportSettings);
lblTeleportSettings.setText("TeleporSettings");
lblTeleportSettings.setBounds(237,  196123,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("DesX:");
lblTeleportX.setBounds(237,  24960,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lblTeleportX.setBounds(237,  249,  60,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  279,  52,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  279,  52,  16);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  246,  85,  23);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  246,  85,  23);
txtTeleportY  =  new  JTextArea();
getContentPane().add(txtTeleportY);
txtTeleportY.setText("17");
txtTeleportY.setBounds(280,  275,  82,  20);



Clone # 18
Distance between two fragments = 22
Clone size = 16
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 263
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 271
lblTeleportSettings  =  new  JLabel();
getContentPane().add(lblTeleportSettings);
lblTeleportSettings.setText("TeleporSettings");
lblTeleportSettings.setBounds(237,  196123,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("DesX:");
f618.setBounds(237,  24960,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lblTeleportX.setBounds(237,  249,  60,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  279,  52,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  279,  52,  16);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  246,  85,  23);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  246,  85,  23);
f318  =  new  JTextArea();
getContentPane().add(f318);
f318.setText("17");
f318.setBounds(280,  275,  82,  20);



Clone # 19
Distance between two fragments = 22
Clone size = 16
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 265
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 269
f718  =  new  JLabel();
getContentPane().add(f718);
f718.setText("Teleport  Settings");
f718
.setBounds(237,  196123,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lbl
TeleportX.setBounds(237,  24960,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("Dest  X:");
f618.setBounds(237,  249,  60,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  279,  52,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  279,  52,  16);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  246,  85,  23);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  246,  85,  23);
txtTeleportY  =  new  JTextArea();
getContentPane().add(txtTeleportY);
txtTeleportY.setText("17");
txtTeleportY.setBounds(280,  275,  82,  20);



Clone # 20
Distance between two fragments = 22
Clone size = 16
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 265
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 271
f718  =  new  JLabel();
getContentPane().add(f718);
f718.setText("TeleporSettings");
f718.setBounds(237,  196123,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("DesX:");
f618.setBounds(237,  24960,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("Dest  X:");
f618.setBounds(237,  249,  60,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  279,  52,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  279,  52,  16);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  246,  85,  23);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  246,  85,  23);
f318  =  new  JTextArea();
getContentPane().add(f318);
f318.setText("17");
f318.setBounds(280,  275,  82,  20);



Clone # 21
Distance between two fragments = 10
Clone size = 16
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 487
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 496
switch  (dir)  {
  case  up:
    y--;
    break;
  case  right:
    x++;
    break;
  case  down:
    y++;
    break;
  case  left:
    x--;
    break;
  case  none:
    return  true;
switch  (v42)  {
  case  f00:
    v44--;
    break;
  case  f10:
    v43++;
    break;
  case  f20:
    v44++;
    break;
  case  f30:
    v43--;
    break;
  case  f40:
    return  true;
return  canMove(actxy); return  m195(v41v43v44);



Clone # 22
Distance between two fragments = 9
Clone size = 15
Source file "detect/renamingContractionLoop/original/state/State.java"
The first line is 43
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/State.java"
The first line is 43
public  Game  getGame()  {
  return  game;
public  Game  m020()  {
  return  f620;
public  abstract  void  reset(); public  abstract  void  m120();
public  abstract  void  logic(); public  abstract  void  m220();
public  abstract  void  end(); public  abstract  void  m320();
@Override
public  void  keyReleased(KeyEvent  e)  {
@Override
public  void  keyReleased(KeyEvent  v1)  {
@Override
public  void  keyTyped(KeyEvent  e)  {
  //  Esc
  switch  (e.getKeyChar())  {
    case  27:
      game.requestChangeState(STATE_EXITING);
      break;
    default:
      break;
@Override
public  void  keyTyped(KeyEvent  v2)  {
  //  Esc
  switch  (v2.getKeyChar())  {
    case  27:
      f620.m73(f520);
      break;
    default:
      break;



Clone # 23
Distance between two fragments = 9
Clone size = 15
Source file "detect/renamingContractionLoop/original/state/StateMenu.java"
The first line is 135
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateMenu.java"
The first line is 135
switch  (currentOption)  {
  case  0:
    //  Play  game
    if  (mapList.length  >  0)  {
      game.setStartMap(mapList[currentMapOption]);
      game.requestChangeState(STATE_GAME);
    }
    break;
  case 
1:
    //  Scoreboard
    game.requestChangeState(STATE_SCOREBOARD
);
    break;
  case  2:
    //  Exit
    game.requestChangeState(STATE_EXITING);
    break;
  default:
    break;
switch  (f22)  {
  case  0:
    //  Play  game
    if  (f42.length  >  0)  {
      f620.m43(f42[f32]);
      f620.m73(f220);
    }
    break;
  case  1:
    // 
Scoreboard
    f620.m73(f
120);
    break;
  case  2:
    //  Exit
    f620.m73(f520);
    break;
  default:
    break;
break; break;



Clone # 24
Distance between two fragments = 10
Clone size = 15
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 186
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 188
if  (sType.equals("Vertical"))  {
  editor.setMarkerWallType(GameObject.WA
LL_VERTICAL);
}  else  if  (sType.equals("Horizontal"))  {
  editor.setMarkerWallType(GameObject.WALL_HORIZONTAL);
}  else  if  (sType.equals("Top  Left"))  {
  editor.setMarkerWallType(GameObject.WALL_TOPLEFT);
}  else  if  (sType
.equals("Top  Right"))  {
  editor.setMarkerWallType(GameObject.WALL_TOPRIGHT);
}  else  if  (sType.equals("Bottom  Left"))  {
  editor.setMarkerWallType(GameObject.WALL_BOTTOMLEFT);
}  else  if  (sType
.equals("Bottom  Right"))  {
  editor.setMarkerWallType(GameObject.WALL_BOTTOMRIGHT);
}  else  if  (sType
.equals("Ghost  Barrier"))  {
  editor.setMarkerWallType(GameObject.WALL_GHOSTBARRIER);
}  else  {
  editor.setMarkerWallType(GameObject.WALL_HORIZONTAL);
if  (v7.equals("Vertical"))  {
  f118.m112(GameObject.f810);
}  else  if  (v7.equals("Horizontal"))  {
  f118.m112(GameObject.f910);
}  else  if  (v7.equals("
Top  Left"))  {
  f118.m112(GameObject.f1010);
}  else  if  (v7
.equals("Top  Right"))  {
  f118.m112(GameObject.f1110);
}  else  if  (v7.equals("Bottom 
Left"))  {
  f118.m112(GameObject.f1210);
}  else  if  (v7
.equals("Bottom  Right"))  {
  f118.m112(GameObject.f1310);
}  else  if  (v7
.equals("Ghost  Barrier"))  {
  f118.m112(GameObject.f1410);
}  else  {
  f118.m112(GameObject.f910);



Clone # 25
Distance between two fragments = 19
Clone size = 14
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 240
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 209
protected  Node  getFirstInOpen()  {
  return  (Node)  open.first();
protected  Node  m18()  {
  return  (Node)  f18.m08();
protected  void  addToOpen(Node  node)  {
  open.add(node);
protected  void  m28(Node  v24)  {
  f18.m28(v24);
protected  boolean  inOpenList(Node  node)  {
  return  open.contains(node);
protected  boolean  m38(Node  v25)  {
  return  f18.m58(v25);
protected  void  removeFromOpen(Node  node)  {
  open.remove(node);
protected  void  m48(Node  v26)  {
  f18.m38(v26);
protected  void  addToClosed(Node  node)  {
  closed.add(node);
protected  void  m58(Node  v27)  {
  f08.add(v27);
protected  boolean  inClosedList(Node  node)  {
  return  closed.contains(node);
protected  boolean  m68(Node  v28)  {
  return  f08.contains(v28);
protected  void  removeFromClosed(Node  node)  {
  closed.remove(node);
protected  void  m78(Node  v29)  {
  f08.remove(v29);



Clone # 26
Distance between two fragments = 19
Clone size = 14
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Path.java"
The first line is 27
Source file "detect/renamingContractionLoop/original/map/Path.java"
The first line is 27
public  int  m013()  {
  return  f013.size();
public  int  getLength()  {
  return  steps.size();
public  Step  m113(int  v0)  {
  return  f013.get(v0);
public  Step  getStep(int  index)  {
  return  steps.get(index);
public  int  m213(int  v1)  {
  return  m113(v1).f013;
public  int  getX(int  index)  {
  return  getStep(index).x;
public  int  m313(int  v2)  {
  return  m113(v2).f113;
public  int  getY(int  index)  {
  return  getStep(index).y;
public  void  m413(int  v3,  int  v4)  {
  f013.add(new  Step(v3v4));
public  void  appendStep(int  x,  int  y)  {
  steps.add(new  Step(xy));
public  void  m513(int  v5,  int  v6)  {
  f013.add(0,  new  Step(v5v6));
public  void  prependStep(int  x,  int  y)  {
  steps.add(0,  new  Step(xy));
public  boolean  m613(int  v7,  int  v8)  {
  return  f013.contains(new  Step(v7v8));
public  boolean  contains(int  x,  int  y)  {
  return  steps.contains(new  Step(xy));



Clone # 27
Distance between two fragments = 16
Clone size = 14
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Actor.java"
The first line is 95
Source file "detect/renamingContractionLoop/original/actors/Actor.java"
The first line is 95
public  int  m09()  {
  return  f19;
public  int  getSpawnX()  {
  return  spawnX;
public  int  m19()  {
  return  f29;
public  int  getSpawnY()  {
  return  spawnY;
public  void  m29(boolean  v5)  {
  f09  =  v5;
public  void  setDead(boolean  s)  {
  isDead  =  s;
public  boolean  m39()  {
  return  f09;
public  boolean  isDead()  {
  return  isDead;
public  void  m49(float  v6)  {
  f99  =  v6;
public  void  setSpeed(float  s)  {
  speed  =  s;
public  float  m59()  {
  return  f99;
public  float  getSpeed()  {
  return  speed;
public  void  m69(Direction  v7)  {
  f49.m111(v7);
public  void  setMoveDirection(Direction  dir)  {
  requestedMoveDirBuffer.setRequestedDirection(dir);



Clone # 28
Distance between two fragments = 13
Clone size = 14
Source file "detect/renamingContractionLoop/original/state/StateGame.java"
The first line is 311
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 305
@Override
public  void  end()  {
  //  Cleanup
  player  =  null;
  map  =  null;
@Override
public  void  m320()  {
  //  Cleanup
  f04  =  null;
  f14  =  null;
  public  void  win()  {
    sessionScore  +=  player.getScore();

    respawn(true);
  public  void  m24()  {
    f54  +=  f04.m115();

    m14(true);
  public  void  lose()  {
    livesRemaining
--;

    if  (livesRemaining  >  0)  {
      respawn(fa
lse);
    }  else  {
      if  (currentLevel  ==  1)  {
        sessionScore  =  player.getScore();  //  win()  never  called,  so
          //  score  is  the  1st  level
          //  score
      }
      game.requestChangeState(State.STATE_SCOREBOARD);
  public  void  m34()  {
    f64
--;

    if  (f64  >  0)  {
      m14(f
alse);
    }  else  {
      if  (f44  ==  1)  {
        f54  =  f04.m115();  //  win()  never  called,  so
          //  score  is  the  1st  level
          //  score
      }
      f620.m73(State.f120);



Clone # 29
Distance between two fragments = 7
Clone size = 12
Source file "detect/renamingContractionLoop/original/game/Item.java"
The first line is 134
Source file "detect/renamingContractionLoop/renamingContractionLoop/game/Item.java"
The first line is 136
switch  (objType)  {
  case  OBJECT_DOT:
    g.fillArc(cen
ter_x  -  4,  center_y  -  4,  8,  8,  0,  360);
    break;
  case  OBJECT_POWERUP:
    g.fillArc(center_x  -  8,  center_y  -  8,  16,  16,  0,  360);
    break;
  case  OBJECT_TELEPORT:
    g.fillOval(center_x  -  6,  center_y  -  8,  12,  16);
    break;
  default:
    break;
switch  (f1510)  {
  case  f010:
    v9.fillArc(v10  -  4,  v11  -  4,  8,  8,  0,  360);
    break;
  case  f110:
    v9.fillArc(v10  -  8,  v11  -  8,  16,  16,  0,  360);
    break;
  case  f710:
    v9.fill
Oval(v10  -  6,  v11  -  8,  12,  16);
    break;
  defaul
t:
    break;



Clone # 30
Distance between two fragments = 19
Clone size = 12
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 263
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 275
lblTeleportSettings  =  new  JLabel();
getContentPane().add(lblTeleportSettings);
lblTeleportSettings.setText("TeleporSettings");
lblTeleportSettings.setBounds(237196123,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("DesY:  ");
lblTeleportY.setBounds(23527952,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lblTeleportX.setBounds(237,  2496016);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  2468523);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  27952,  16);
txtTeleportY  =  new  JTextArea();
getContentPane().add(txtTeleportY);
txtTeleportY.setText("17");
txtTeleportY.setBounds(280,  27582,  20);



Clone # 31
Distance between two fragments = 19
Clone size = 12
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 263
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 277
lblTeleportSettings  =  new  JLabel();
getContentPane().add(lblTeleportSettings);
lblTeleportSettings.setText("TeleporSettings");
lblTeleportSettings.setBounds(237196123,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("DesY:  ");
f518.setBounds(23527952,  16);
lblTeleportX  =  new  JLabel();
getContentPane().add(lblTeleportX);
lblTeleportX.setText("Dest  X:");
lblTeleportX.setBounds(237,  2496016);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  2468523);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lblTeleportY.setBounds(235,  27952,  16);
f318  =  new  JTextArea();
getContentPane().add(f318);
f318.setText("17");
f318.setBounds(280,  27582,  20);



Clone # 32
Distance between two fragments = 19
Clone size = 12
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 265
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 275
f718  =  new  JLabel();
getContentPane().add(f718);
f718.setText("Teleport  Settings");
f718
.setBounds(237196123,  16);
lblTeleportY  =  new  JLabel();
getContentPane().add(lblTeleportY);
lblTeleportY.setText("Dest  Y:  ");
lbl
TeleportY.setBounds(23527952,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("Dest  X:");
f618.setBounds(237,  2496016);
txtTeleportX  =  new  JTextField();
getContentPane().add(txtTeleportX);
txtTeleportX.setText("13");
txtTeleportX.setBounds(280,  2468523);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  27952,  16);
txtTeleportY  =  new  JTextArea();
getContentPane().add(txtTeleportY);
txtTeleportY.setText("17");
txtTeleportY.setBounds(280,  27582,  20);



Clone # 33
Distance between two fragments = 19
Clone size = 12
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 265
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 277
f718  =  new  JLabel();
getContentPane().add(f718);
f718.setText("TeleporSettings");
f718.setBounds(237196123,  16);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("DesY:  ");
f518.setBounds(23527952,  16);
f618  =  new  JLabel();
getContentPane().add(f618);
f618.setText("Dest  X:");
f618.setBounds(237,  2496016);
f418  =  new  JTextField();
getContentPane().add(f418);
f418.setText("13");
f418.setBounds(280,  2468523);
f518  =  new  JLabel();
getContentPane().add(f518);
f518.setText("Dest  Y:  ");
f518.setBounds(235,  27952,  16);
f318  =  new  JTextArea();
getContentPane().add(f318);
f318.setText("17");
f318.setBounds(280,  27582,  20);



Clone # 34
Distance between two fragments = 12
Clone size = 12
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 564
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 582
item  =  itemMap[x][y]; v57  =  f75[v58][v59];
if  (item  ==  null)  {
  data.writeBoolean(false);
  continue;
if  (v57  ==  null)  {
  v54.writeBoolean(false);
  continue;
data.writeBoolean(true); v54.writeBoolean(true);
data.writeInt(item.getType()); v54.writeInt(v57.m010());
data.writeInt(item.getX()); v54.writeInt(v57.m310());
data.writeInt(item.getY()); v54.writeInt(v57.m410());
data.writeInt(item.getColor().getRGB()); v54.writeInt(v57.m110().getRGB());
if  (item.getType()  ==  GameObject.OBJECT_TELEPORT)  {
  data.writeInt(item.getTeleportX());
  data.writeInt(item.getTeleportY());
if  (v57.m010()  ==  GameObject.f710)  {
  v54.writeInt(v57.m16());
  v54.writeInt(v57.m26());



Clone # 35
Distance between two fragments = 7
Clone size = 12
Source file "detect/renamingContractionLoop/original/state/StateEditor.java"
The first line is 359
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateEditor.java"
The first line is 367
if  (markerGhostType.equals("Blinky"))  {
  map.addActor(new  Ghost(Color.RED,  map,  marker.getX(),  marker.getY(),
    markerGhostTrapped
));
}  else  if  (markerGhostType.equals("Pinky"))  {
  map.addActor(new  Ghost(Color.PINK,  map,  marker.getX(),  marker.getY(),
    markerGhostTrapped
));
}  else  if  (markerGhostType.equals("Inky"))  {
  map.addActor(new  Ghost(Color.CYAN,  map,  marker.getX(),  marker.getY(),
    markerGhostTrapped
));
}  else  {
  map.addActor(new  Ghost(Color.ORANGE,  map,  marker.getX(),  marker.getY(),
    markerGhostTrapped
));
if  (f612.equals("Blinky"))  {
  f312.m85(new  Ghost(Color.RED,  f312,  f112.m310(),  f112.m410(),
    f712
));
}  else  if  (f612.equals("Pinky"))  {
  f312.m85(new  Ghost(Color.PINK,  f312,  f112.m310(),  f112.m410(),
    f712
));
}  else  if  (f612.equals("Inky"))  {
  f312.m85(new  Ghost(Color.CYAN,  f312,  f112.m310(),  f112.m410(),
    f712
));
}  else  {
  f312.m85(new  Ghost(Color.ORANGE,  f312,  f112.m310(),  f112.m410(),
    f712
));
break; break;



Clone # 36
Distance between two fragments = 9
Clone size = 11
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 618
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 633
fin  =  new  FileInputStream(filename); v63  =  new  FileInputStream(v62);
data  =  new  DataInputStream(fin); v64  =  new  DataInputStream(v63);
if  (!data.readUTF().equals("RKPACMAP"))  {
  System.out.println("Not  a  map  file!");
  return;
if  (!v64.readUTF().equals("RKPACMAP"))  {
  System.out.println("Not  a  map  file!");
  return;
mapWidth  =  data.readInt(); f05  =  v64.readInt();
mapHeight  =  data.readInt(); f15  =  v64.readInt();
dotsRemaining  =  0; f95  =  0;
collideMap  =  new  byte[mapWidth][mapHeight]; f65  =  new  byte[f05][f15];
itemMap  =  new  Item[mapWidth][mapHeight]; f75  =  new  Item[f05][f15];
actorList  =  new  ArrayList<Actor>(); f85  =  new  ArrayList<Actor>();



Clone # 37
Distance between two fragments = 29
Clone size = 10
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 261
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 250
protected  boolean  inOpenList(Node  node)  {
  return  open.contains(node);
protected  void  addToOpen(Node  node)  {
  open.add(node);
protected  void  removeFromOpen(Node  node)  {
  open.remove(node);
protected  boolean  inOpenList(Node  node)  {
  return  open.contains(node);
protected  void  addToClosed(Node  node)  {
  closed.add(node);
protected  void  removeFromOpen(Node  node)  {
  open.remove(node);
protected  boolean  inClosedList(Node  node)  {
  return  closed.contains(node);
protected  void  addToClosed(Node  node)  {
  closed.add(node);
protected  void  removeFromClosed(Node  node)  {
  closed.remove(node);
protected  boolean  inClosedList(Node  node)  {
  return  closed.contains(node);



Clone # 38
Distance between two fragments = 34
Clone size = 10
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 261
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 219
protected  boolean  inOpenList(Node  node)  {
  return  open.contains(node);
protected  void  m28(Node  v24)  {
  f18.m28(v24);
protected  void  removeFromOpen(Node  node)  {
  open.remove(node);
protected  boolean  m38(Node  v25)  {
  return  f18.m58(v25);
protected  void  addToClosed(Node  node)  {
  closed.add(node);
protected  void  m48(Node  v26)  {
  f18.m38(v26);
protected  boolean  inClosedList(Node  node)  {
  return  closed.contains(node);
protected  void  m58(Node  v27)  {
  f08.add(v27);
protected  void  removeFromClosed(Node  node)  {
  closed.remove(node);
protected  boolean  m68(Node  v28)  {
  return  f08.contains(v28);



Clone # 39
Distance between two fragments = 34
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 230
Source file "detect/renamingContractionLoop/original/map/PathFinder.java"
The first line is 250
protected  boolean  m38(Node  v25)  {
  return  f18.m58(v25);
protected  void  addToOpen(Node  node)  {
  open.add(node);
protected  void  m48(Node  v26)  {
  f18.m38(v26);
protected  boolean  inOpenList(Node  node)  {
  return  open.contains(node);
protected  void  m58(Node  v27)  {
  f08.add(v27);
protected  void  removeFromOpen(Node  node)  {
  open.remove(node);
protected  boolean  m68(Node  v28)  {
  return  f08.contains(v28);
protected  void  addToClosed(Node  node)  {
  closed.add(node);
protected  void  m78(Node  v29)  {
  f08.remove(v29);
protected  boolean  inClosedList(Node  node)  {
  return  closed.contains(node);



Clone # 40
Distance between two fragments = 34
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 230
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/PathFinder.java"
The first line is 219
protected  boolean  m38(Node  v25)  {
  return  f18.m58(v25);
protected  void  m28(Node  v24)  {
  f18.m28(v24);
protected  void  m48(Node  v26)  {
  f18.m38(v26);
protected  boolean  m38(Node  v25)  {
  return  f18.m58(v25);
protected  void  m58(Node  v27)  {
  f08.add(v27);
protected  void  m48(Node  v26)  {
  f18.m38(v26);
protected  boolean  m68(Node  v28)  {
  return  f08.contains(v28);
protected  void  m58(Node  v27)  {
  f08.add(v27);
protected  void  m78(Node  v29)  {
  f08.remove(v29);
protected  boolean  m68(Node  v28)  {
  return  f08.contains(v28);



Clone # 41
Distance between two fragments = 9
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Player.java"
The first line is 54
Source file "detect/renamingContractionLoop/original/actors/Player.java"
The first line is 54
public  void  m015(int  v3)  {
  f015  +=  v3;
public  void  incrementScore(int  amt)  {
  m_iScore  +=  amt;
public  int  m115()  {
  return  f015;
public  int  getScore()  {
  return  m_iScore;
public  boolean  m215()  {
  return  f115;
public  boolean  isPoweredUp()  {
  return  isPowered;
public  void  m315(boolean  v4)  {
  f115  =  v4;
  //  If  powered  up,  start  the  timer  and  increase  speed  temporarily
  if  (f115)  {
    f215  =  System.currentTimeMillis()  +  10000;
public  void  setPowerUp(boolean  x)  {
  isPowered  =  x;
  //  If  powered  up,  start  the  timer  and  increase  speed  temporarily
  if  (isPowered)  {
    poweredExpireTime  =  System.currentTimeMillis()  +  10000;



Clone # 42
Distance between two fragments = 10
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 65
Source file "detect/renamingContractionLoop/original/state/StateGame.java"
The first line is 65
public  int  m04()  {
  return  f54;
public  int  getSessionScore()  {
  return  sessionScore;
  @Override
  public  void  m120()  {
    // 
Set  game  vars
    f34  =  f62
0.m33();
    f44  =  0;
    f54  =  0;
    f64
  =  99;
    f84  =  0;

    //  Respawn  (start  level  1)
    m14(true);
  @Override
  public  void  reset()  {
    //  Set  game  vars
    mapName  =  game.getStartMap();
    currentLevel  = 
0;
    session
Score  =  0;
    livesRemaining
  =  99;
    pauseTime  =  0;

    //  Respawn  (start  level  1)
    respawn(true);



Clone # 43
Distance between two fragments = 14
Clone size = 10
Source file "detect/renamingContractionLoop/original/actors/Ghost.java"
The first line is 56
Source file "detect/renamingContractionLoop/original/actors/Actor.java"
The first line is 104
public  boolean  isInFear()  {
  return  inFear;
public  int  getSpawnY()  {
  return  spawnY;
public  void  setFear(boolean  f)  {
  inFear  =  f;
public  void  setDead(boolean  s)  {
  isDead  =  s;
public  boolean  isTrapped()  {
  return  trapped;
public  boolean  isDead()  {
  return  isDead;
public  void  setTrapped(boolean  t)  {
  trapped  =  t;
public  void  setSpeed(float  s)  {
  speed  =  s;
public  boolean  needsNewPath()  {
  return  needNewPath;
public  float  getSpeed()  {
  return  speed;



Clone # 44
Distance between two fragments = 14
Clone size = 10
Source file "detect/renamingContractionLoop/original/actors/Ghost.java"
The first line is 56
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Actor.java"
The first line is 104
public  boolean  isInFear()  {
  return  inFear;
public  int  m19()  {
  return  f29;
public  void  setFear(boolean  f)  {
  inFear  =  f;
public  void  m29(boolean  v5)  {
  f09  =  v5;
public  boolean  isTrapped()  {
  return  trapped;
public  boolean  m39()  {
  return  f09;
public  void  setTrapped(boolean  t)  {
  trapped  =  t;
public  void  m49(float  v6)  {
  f99  =  v6;
public  boolean  needsNewPath()  {
  return  needNewPath;
public  float  m59()  {
  return  f99;



Clone # 45
Distance between two fragments = 14
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Ghost.java"
The first line is 56
Source file "detect/renamingContractionLoop/original/actors/Actor.java"
The first line is 104
public  boolean  m017()  {
  return  f417;
public  int  getSpawnY()  {
  return  spawnY;
public  void  m117(boolean  v5)  {
  f417  =  v5;
public  void  setDead(boolean  s)  {
  isDead  =  s;
public  boolean  m217()  {
  return  f317;
public  boolean  isDead()  {
  return  isDead;
public  void  m317(boolean  v6)  {
  f317  =  v6;
public  void  setSpeed(float  s)  {
  speed  =  s;
public  boolean  m417()  {
  return  f217;
public  float  getSpeed()  {
  return  speed;



Clone # 46
Distance between two fragments = 12
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Ghost.java"
The first line is 56
Source file "detect/renamingContractionLoop/renamingContractionLoop/actors/Actor.java"
The first line is 104
public  boolean  m017()  {
  return  f417;
public  int  m19()  {
  return  f29;
public  void  m117(boolean  v5)  {
  f417  =  v5;
public  void  m29(boolean  v5)  {
  f09  =  v5;
public  boolean  m217()  {
  return  f317;
public  boolean  m39()  {
  return  f09;
public  void  m317(boolean  v6)  {
  f317  =  v6;
public  void  m49(float  v6)  {
  f99  =  v6;
public  boolean  m417()  {
  return  f217;
public  float  m59()  {
  return  f99;



Clone # 47
Distance between two fragments = 10
Clone size = 10
Source file "detect/renamingContractionLoop/original/game/GameObject.java"
The first line is 55
Source file "detect/renamingContractionLoop/renamingContractionLoop/game/GameObject.java"
The first line is 55
public  int  getType()  {
  return  objType;
public  int  m010()  {
  return  f1510;
public  Color  getColor()  {
  return  objColor;
public  Color  m110()  {
  return  f1610;
public  void  setColor(Color  c)  {
  objColor  =  c;
public  void  m210(Color  v0)  {
  f1610  =  v0;
public  int  getX()  {
  return  positionX;
public  int  m310()  {
  return  f1710;
public  int  getY()  {
  return  positionY;
public  int  m410()  {
  return  f1810;



Clone # 48
Distance between two fragments = 13
Clone size = 10
Source file "detect/renamingContractionLoop/original/state/StateGame.java"
The first line is 102
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 102
currentLevel++; f44++;
player  =  null; f04  =  null;
map  =  null; f14  =  null;
ai  =  null; f24  =  null;
game.getGraphicsContext().setBackground(Color.BLACK); f620.m23().setBackground(Color.BLACK);
map  =  new  Map(mapName,  0.75); f14  =  new  Map(f34,  0.75);
mapWidth  =  map.getWidth(); f94  =  f14.m05();
mapHeight  =  map.getHeight(); f104  =  f14.m15();
player  =  map.getPlayer(); f04  =  f14.m125();
ai  =  new  AIManager(mapplayergame.isDebugEnabled()); f24  =  new  AIManager(f14f04f620.m53());



Clone # 49
Distance between two fragments = 10
Clone size = 10
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 587
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 602
data.writeInt(actorList.size()); v54.writeInt(f85.size());
for  (final  Actor  a  :  actorList)  {
  data.writeInt(a.getType());
  data.writeInt(a.getX());
  data.writeInt(a.getY());
  data.writeInt(a.getColor
().getRGB());
  if  (a.getType()  ==  GameObject.OBJECT_GHOST)  {
    data.writeBoolean(((Ghost)  a).isTrapped());
for  (final  Actor  v60  :  f85)  {
  v54.writeInt(v60.m010());
  v54.writeInt(v60.m310());
  v54.writeInt(v60.m410());
  v54.writeInt(v60.m110
().getRGB());
  if  (v60.m010()  ==  GameObject.f410)  {
    v54.writeBoolean(((Ghost)  v60).m217());
data.close(); v54.close();
fout.close(); v53.close();



Clone # 50
Distance between two fragments = 5
Clone size = 10
Source file "detect/renamingContractionLoop/original/editor/EditorFrame.java"
The first line is 339
Source file "detect/renamingContractionLoop/renamingContractionLoop/editor/EditorFrame.java"
The first line is 343
btnGhost  =  new  JButton();
getContentPane().add(btnGhost);
btnGhost.setText(
"Add  Ghost");
btnGhost
.setBounds(272,  36,  146,  23);
btnGhost.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  evt)  {
    editor.setMarkerObjectType(GameObject.OBJECT_GHOST);
f1418  =  new  JButton();
getContentPane().add(f1418);
f1418.setText("Add 
Ghost");
f1418
.setBounds(272,  36,  146,  23);
f1418.addMouseListener(new  MouseAdapter()  {
  @Override
  public  void  mouseClicked(MouseEvent  v17)  {
    f118.m012(GameObject.f410);
pack(); pack();
this.setSize(451,  547); this.setSize(451,  547);



Clone # 51
Distance between two fragments = 48
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateMenu.java"
The first line is 79
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 155
final  Graphics2D  v5; final  Graphics2D  v5;
v5  =  f620.m23(); v5  =  f620.m23();
v5.setColor(Color.YELLOW); v5.translate(10,  30);
v5.setFont(new  Font("Comic  Sans  MS",  Font.BOLD,  50)); v5.setColor(Color.WHITE);
v5.fillArc(5692,  100,  100,  35,  270);  //  First  pacman v5.setFont(new  Font("Comic  Sans  MS"Font.BOLD,  24));
v5.drawString("PACMAN",  350,  180); v5.drawString("PACMAN  by  Ramsey  Kant",  680,  50);
v5.fillArc(78092,  100,  100,  35,  270); v5.drawString("Score:  "  +  f04.m115()750,  100);
v5.setFont(new  Font("Comic  Sans  MS"Font.BOLD24)); v5.drawString("Total:  "  +  f54750150);
v5.drawString("Play  Game"380,  300); v5.drawString("Lives:  "  +  f64750,  200);
v5.drawString("Scoreboard"380,  340); v5.drawString("Level:  "  +  f44750,  250);



Clone # 52
Distance between two fragments = 5
Clone size = 10
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateEditor.java"
The first line is 272
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateGame.java"
The first line is 251
final  int  v16; final  int  v10;
v16  =  f312.m25(); v10  =  f14.m25();
int  v17; int  v11;
v17  =  0; v11  =  0;
while  (v17  <  v16)  {
  final  Actor  v18;
  v18  =  f312.m115(v17);
  if  (v18  !=  null)  {
    v18.m610(v11);
  }
  v17++;
while  (v11  <  v10)  {
  final  Actor  v12;
  v12  =  f14.m115(v11);
  if  (v12  !=  null)  {
    v12.m610(v5);
  }
  v11++;



Clone # 53
Distance between two fragments = 13
Clone size = 10
Source file "detect/renamingContractionLoop/original/state/StateEditor.java"
The first line is 49
Source file "detect/renamingContractionLoop/renamingContractionLoop/state/StateEditor.java"
The first line is 49
gameView  =  false; f212  =  false;
game.getFrame().setSize(1024,  game.RES_Y); f620.m13().setSize(1024,  f620.f53);
editorFrame  =  new  EditorFrame(this); f012  =  new  EditorFrame(this);
editorFrame.setVisible(true); f012.setVisible(true);
markerObjectType  =  GameObject.OBJECT_WALL; f412  =  GameObject.f610;
markerWallType  =  GameObject.WALL_VERTICAL; f512  =  GameObject.f810;
markerGhostType  =  "Blinky"; f612  =  "Blinky";
markerGhostTrapped  =  false; f712  =  false;
markerTeleportX  =  13; f812  =  13;
markerTeleportY  =  17; f912  =  17;



Clone # 54
Distance between two fragments = 13
Clone size = 10
Source file "detect/renamingContractionLoop/original/map/Map.java"
The first line is 52
Source file "detect/renamingContractionLoop/renamingContractionLoop/map/Map.java"
The first line is 52
mapWidth  =  w; f05  =  v0;
mapHeight  =  h; f15  =  v1;
SCALE  =  scale; f55  =  v2;
CELL_SIZE  =  (int)  (32  *  scale); f25  =  (int)  (32  *  v2);
WALL_THICKNESS  =  (int)  (12  *  scale); f35  =  (int)  (12  *  v2);
WALL_OVERLAP  =  (int)  (10  *  scale); f45  =  (int)  (10  *  v2);
dotsRemaining  =  0; f95  =  0;
collideMap  =  new  byte[mapWidth][mapHeight]; f65  =  new  byte[f05][f15];
itemMap  =  new  Item[mapWidth][mapHeight]; f75  =  new  Item[f05][f15];
actorList  =  new  ArrayList<Actor>(); f85  =  new  ArrayList<Actor>();


(*) Warning: the highlighting of differences is based on diff and doesn't reflect the tree-based clone detection algorithm.


Clone Digger is aimed to find software clones in Python and Java programs. It is provided under the GPL license and can be downloaded from the site http://clonedigger.sourceforge.net