Try to break dependency cylces between opt package and implementation packages.