shib refactor