Use maddon to reduce the boilerplate code