Why do we need the question mark here? 
With a colon it creates a non-capturing group but the colon must be present, so it must be `(?::([0-5][0-9]))`