generated properties allow overriding