[Demonstration 1]

[Buggy Method]
public Kernel prepareKernel() {
    Kernel kernel = new Kernel(this);
    for (final ContextMapping contextMapping : this.getExperiment().getContextMappings()) {
        final Context context = Context.load(kernel, contextMapping);
        if (!kernel.map(context, candidateThreadId -> candidateThreadId == contextMapping.getThreadId())) {
            throw new RuntimeException();
        }
        kernel.getContexts().add(context);
    }
    return kernel;
}

[Buggy Hunk]
for (final ContextMapping contextMapping : this.getExperiment().getContextMappings()) {

[Patch]
for (final ContextMapping contextMapping : this.getExperiment().getConfig().getContextMappings()) {

[Demonstration 2]

[Buggy Method]
@Override
public void create() {
    this.font = new BitmapFont();
    this.sb = new SpriteBatch();
    this.sr = new ShapeRenderer();
    this.sr.setAutoShapeType(true);
    this.cam = new OrthographicCamera();
    this.viewport = new FitViewport(Gdx.graphics.getWidth(), Gdx.graphics.getHeight(), this.cam);
    this.viewport.apply();
    this.cam.position.set(this.cam.viewportWidth / 2f, this.cam.viewportHeight / 2f, 0);
    this.world = new World(this);
    this.pop = new Population(this.world.getCities());
    this.gui = new Gui(this);
    this.stage = new Stage(viewport, this.sb);
    {
        final Skin skin = new Skin(Gdx.files.internal("skin/plain-james-ui.json"));
        if (false) {
            final Table table = new Table();
            table.setFillParent(true);
            {
                final Label l = new Label("Cities:", skin);
                final Label o = new Label("", skin);
                table.add(l);
                final Slider s = new Slider(1, 500, 1, false, skin);
                s.addListener(new ChangeListener() {

                    @Override
                    public void changed(ChangeEvent event, Actor actor) {
                        final Integer i = (int) s.getValue();
                        final String s = String.valueOf(i);
                        o.setText(s);
                    }
                });
                table.add(s);
                table.add(o);
            }
            table.row();
            {
                final Label l = new Label("Population:", skin);
                final Label o = new Label("", skin);
                table.add(l);
                final Slider s = new Slider(1, 500, 1, false, skin);
                s.addListener(new ChangeListener() {

                    @Override
                    public void changed(ChangeEvent event, Actor actor) {
                        final Integer i = (int) s.getValue();
                        final String s = String.valueOf(i);
                        o.setText(s);
                    }
                });
                table.add(s);
                table.add(o);
            }
            table.align(Align.topRight);
            this.stage.addActor(table);
        }
        final Table table = new Table();
        table.setFillParent(true);
        final TextButton btn = new TextButton("Reset", skin);
        btn.addListener(new ClickListener() {

            @Override
            public void clicked(InputEvent event, float x, float y) {
                super.clicked(event, x, y);
                reset();
            }
        });
        table.add(btn);
        table.align(Align.topRight);
        table.pad(5f);
        this.stage.addActor(table);
        Gdx.input.setInputProcessor(this.stage);
    }
    this.reset();
}

[Buggy Hunk]
this.pop = new Population(this.world.getCities());

[Patch]
this.pop = new Population(this.world);

[Demonstration 3]

[Buggy Method]
@Override
public void render(GameContainer gc, Graphics g) throws SlickException {
    //Renders the images
    gameBackground.draw();
    player1.CheckMovement(g);
    player1.Render();
    g.setColor(Color.white);
    g.drawString("BreakOut", 275, 200);
    onScreenGUI.DrawGUI(g);
    //Draw increment of score
    g.drawString("Score " + score, 500, 0);
    //Draw increment of level
    g.drawString("Level " + level, 400, 0);
    if (onScreenGUI.getLives() != 0)
        ball1.render();
    if (ball1.getIsAlive() == false && onScreenGUI.getLives() != 0) {
        g.drawString("Press SPACE to launch", player1.getX() - 30, 600);
    }
    if (onScreenGUI.getLives() == 0) {
        g.setColor(Color.red);
        g.drawString("GAME OVER! PRESS SPACE TO RETRY", player1.getX() - 70, 600);
    }
    //For-loop: Draws the blocks with image, if the blocks are not shattered (destroyed)
    for (int i = 0; i < blocks.length; i++) {
        if (!blocks[i].isShattered()) {
            blocks[i].getImage().draw(blocks[i].getX(), blocks[i].getY());
        }
    }
}

[Buggy Hunk]
g.drawString("Score " + score, 500, 0);	//Draw increment of score

[Patch]
g.drawString("Score " + (score + finalScore), 500, 0);	//Draw increment of score