this is where using a mixin would probably come in handy...