added comparable module, and id