Fix unit handling in SIValue