switch to extension registry model