Follow up on this, Wims pointed out that 28 and 29 were hex not decimal, so these are excluding the open/close parenthesis, which allows it to handle (ban@mask) correctly.