Iran gripped by protests