Unfortunately, it is required. :(  

`parseMapping()` requires the second parameter to be passed by reference:

```php
private static function parseMapping($mapping, &$i = 0, $objectForMap = false)
```

PHP disallows passing constants by reference because the method may mutate the value (and indeed it does).  So you must create a temporary variable and pass that instead. PHP doesn't mind if you omit the parameter because of the default on the function, but if you specify arguments that come *after* the referenced parameter, you must supply one.

I could do the variable assignment inline, but it's effectively the same thing:

```php
$value = self::parseMapping('{'.$value.'}', $j = 0, $objectForMap);
```

Open to alternatives, but I did it this way because alternative approaches (removing the reference) would require fairly drastic restructuring of how the parsing works for what is ultimately just a little semantic blemish :)