Why did I ever think that using CM was a good idea? any comparison with numbers more than 0x8000 apart would be wrong...