lots of syntactic sugar for config