don't use (shell), it tries to evaluate at runtime instead of access time