[UPDATE] add signum function.