layer ids shorter, and register functional