Should we add a check for < 0 in case someone does something silly?