this should be wrapped in d_(Event(), writable=False)