basis of cloning existing objects