refactor(index) __defineGetter__ -> defineProperty