add type sig for S()