handle base prob tidily (ish)