added missing Serializable interface