added initial version of hw4. with some name changed