Use defineProperty instead of __defineGetter__