The code became more selfish now :(