finishing the basic requrement