Okay...the DRY fail makes me cringe slightly, but, meh.