dynamic keyword doesn't compile