use ClientPopupBase instead of overriding