remove most protocol extensions to nil, just handle directly