Aggressive space saving with ordering
fix conflict
ifdef the aggressive sorting
cleanup
revert
default off
don't throw if the ref vector product id is null