move to dictionary instead of expando
Merge commit 'efb04028bc69b2d197097633647e4aedd9c00988'