function createHands(renderer, icon, mirror) {
    if (typeof icon === "string") {
        icon = renderer.createResource("ICON", icon);
    }

    var front = renderer.createEffect("fiskheroes:booster").setIcon(icon);
    front.setOffset(1.2, 10.0, 0.15).setRotation(-12.0, 5.0, 173.0).setSize(4.75, 1.5);
    front.anchor.set("rightArm");

    var back = renderer.createEffect("fiskheroes:booster").setIcon(icon);
    back.setOffset(1.2, 10.0, -0.15).setRotation(12.0, -5.0, 173.0).setSize(4.75, 1.5);
    back.anchor.set("rightArm");

    var bottom = renderer.createEffect("fiskheroes:booster").setIcon(icon);
    bottom.setOffset(-1.0, 8.4, 0.0).setRotation(0.0, 0.0, 83.0).setSize(3.0, 1.0);
    bottom.anchor.set("rightArm");

    front.opacity = back.opacity = bottom.opacity = 0.1;
    front.flutter = back.flutter = bottom.flutter = 0.5;
    front.speedScale = back.speedScale = bottom.speedScale = 0;
    front.mirror = back.mirror = bottom.mirror = mirror;

    return {
        front: front,
        back: back,
        bottom: bottom,
        render: (entity) => {
            front.progress = back.progress = bottom.progress = entity.getInterpolatedData("gowhp:dyn/spartanrage_timer") * 1.0;
            front.render();
            back.render();
            bottom.render();
        }
    };
}
