Vector3D absolute = flag.getKey().getAbsolutePosition();
Vector3D seen = flag.getValue();
flagsXYZ.add(seen.rotateOverX(agent.rotationX).rotateOverY(agent.rotationY).rotateOverZ(agent.rotationZ).negate().add(absolute));
flagsXZY.add(seen.rotateOverX(agent.rotationX).rotateOverZ(agent.rotationZ).rotateOverY(agent.rotationY).negate().add(absolute));
flagsYXZ.add(seen.rotateOverY(agent.rotationY).rotateOverX(agent.rotationX).rotateOverZ(agent.rotationZ).negate().add(absolute));
flagsYZX.add(seen.rotateOverY(agent.rotationY).rotateOverZ(agent.rotationZ).rotateOverX(agent.rotationX).negate().add(absolute));
flagsZXY.add(seen.rotateOverZ(agent.rotationZ).rotateOverX(agent.rotationX).rotateOverY(agent.rotationY).negate().add(absolute));
flagsZYX.add(seen.rotateOverZ(agent.rotationZ).rotateOverY(agent.rotationY).rotateOverX(agent.rotationX).negate().add(absolute));
}