refactor content view