I write ctor's of My dojo Widgets like this.

```
    constructor: function(params){
        var r = this.inherited(arguments);
        this.params = params;
        //other ctor works
        return r;
    }

```

I instanciate the widget with JSON response as ctor argument. like `new MyWidget(res)`  

and the JSON response contains an `id` attribute like `{id: 5, text: 'Hallo'}`

Now `_WidgetBase` constructor treats this id as Widget Id and throws `Tried to register widget with id==6 but that id is already registered`. cause there may be some other widget that is also getting `id: 6` for *another* subject. 

and I cannot change the JSON response to output like `subject_id` as it will need changing a lot of things. 

and I need to get that id after widget instantiation. 

So What would be a good design to handle this problem ?