breaking dependencies and tweaking