Some of the frontend code does not exactly adhere to CA principles. We need to do some reorganization.