basic idea specified