revamp controller infrastructure