sign function program