implemented Serializable and Cloneable in IP