public override object Clone() { Class newObj = new Class(this); cloneFields: ; // For each non-static field: // Insert statement template "CloneField" return newObj; }