def deep_vars
      instance_variables.select do |var|
        value = instance_variable_get(var)
        value.kind_of?(Array) or value.kind_of?(Hash) or value.kind_of?(DeepClonable::InstanceMethods)
      end
    end
def deep_vars
      instance_variables.select do |var|
        value = instance_variable_get(var)
        value.kind_of?(Array) or value.kind_of?(Hash) or value.kind_of?(DeepClonable::InstanceMethods)
      end
    end
You can override deep_vars in your class to specify which instance_variables should be deep cloned.
 As it is, all Arrays and Hashes are deep cloned.