solution and tweaks