function A = accumarrayStable(varargin)
subs = varargin{1};
val = varargin{2};
[~, I] = sort(subs*max(subs,[],1).');
A = accumarray(subs(I,:), val(I), varargin{3:end});
ZnVuY3Rpb24gQSA9IGFjY3VtYXJyYXlTdGFibGUodmFyYXJnaW4pCnN1YnMgPSB2YXJhcmdpbnsxfTsKdmFsID0gdmFyYXJnaW57Mn07Clt+LCBJXSA9IHNvcnQoc3VicyptYXgoc3VicyxbXSwxKS4nKTsKQSA9IGFjY3VtYXJyYXkoc3VicyhJLDopLCB2YWwoSSksIHZhcmFyZ2luezM6ZW5kfSk7