cloneable, serializable added