### Godot version

4.0.1

### System information

Windows 11

### Issue description

When you have binds set for a given signal in the editor and then duplicate the node with ctrl + D, it does not maintain the bind values; they are simply ignored. I can't imagine this is not a bug, so reporting it. If absolutely needed, I can produce a repro project for this, it's just very simple and probably an obvious bug somewhere in the duplication code.

### Steps to reproduce

1. Create a basic project. (One is not included because the issue requires actually doing the steps, rather than looking at what's there.)
2. Create a Node2D as the root of a scene. Give it an Area2D.
3. Add a script to the Node2D and connect the area_entered signal of Area2D to the Node2D's script, including one or more extra bound values in the advanced editor.
4. Duplicate the Area2D; note that the signal connections themselves are duplicated, but the binds array has not been.

### Minimal reproduction project

N/A
ADD_PROPERTY(PropertyInfo(Variant::INT, "process_thread_group", PROPERTY_HINT_ENUM, "Inherit,Main Thread,Sub Thread"), "set_process_thread_group", "get_process_thread_group");
	ADD_PROPERTY(PropertyInfo(Variant::INT, "process_thread_group_order"), "set_process_thread_group_order", "get_process_thread_group_order");
	ADD_PROPERTY(PropertyInfo(Variant::INT, "process_thread_messages", PROPERTY_HINT_FLAGS, "Process,Physics Process"), "set_process_thread_messages", "get_process_thread_messages");
	ADD_GROUP("Editor Description", "editor_");
	ADD_PROPERTY(PropertyInfo(Variant::STRING, "editor_description", PROPERTY_HINT_MULTILINE_TEXT), "set_editor_description", "get_editor_description");
	GDVIRTUAL_BIND(_process, "delta");
	GDVIRTUAL_BIND(_physics_process, "delta");
	GDVIRTUAL_BIND(_enter_tree);
	GDVIRTUAL_BIND(_exit_tree);
	GDVIRTUAL_BIND(_ready);
	GDVIRTUAL_BIND(_get_configuration_warnings);
	GDVIRTUAL_BIND(_input, "event");
	GDVIRTUAL_BIND(_shortcut_input, "event");
	GDVIRTUAL_BIND(_unhandled_input, "event");
	GDVIRTUAL_BIND(_unhandled_key_input, "event");
}
String Node::_get_name_num_separator() {
	switch (GLOBAL_GET("editor/naming/node_name_num_separator").operator int()) {
		case 0:
			return "";
		case 1:
			return " ";
		case 2:
			return "_";
		case 3:
			return "-";
	}
	return " ";
}
Node::Node() {