refactored index vector