more copy/paste. make a mixin?