avoid mutating the base buttons