reduce dsl, prefer fetch/set