<｜begin▁of▁sentence｜>### Instruction:
Imagine you're out in the field dealing with two separate networks, named 'AlphaNet' and 'BetaNet'. 'AlphaNet' has a set of connected devices with IDs 0, 1, and 2, and cables running between devices 0 and 1, 0 and 2, as well as 1 and 2. Its device 0 has a special setting labeled 'key1'. Meanwhile, 'BetaNet' stretches over devices 0 to 3, with cables linking devices 0 to 3, 1 to 2, and 2 to 3, plus it has its own unique setting called 'key2' on device 0 that shouldn't be confused with 'AlphaNet's' device 0 setting.

Your job is to integrate both networks into a larger, unified system we'll call 'UnifiedNet'. The twist is that when you're joining 'AlphaNet' and 'BetaNet', you need to ensure that all devices remain uniquely identifiable, so you'll need to reassign IDs to the devices from 'BetaNet', while keeping their original connections and settings intact. This way, each device maintains its specific configurations, and none of the cables end up crisscrossing incorrectly.

How do you plan to tackle this task while preserving the uniqueness of each network's settings and connections?
### Response:
import networkx as nx

# Create two graphs G and H
G = nx.Graph([(0,1),(0,2),(1,2)])
G.nodes[0]['key1'] = 5
H = nx.Graph([(0,3),(1,2),(2,3)])
H.nodes[0]['key2'] = 10

# Use the disjoint_union to combine G and H into a new graph U
U = nx.disjoint_union(G, H)

# Print the nodes with data and the edges of the graph U
print(U.nodes(data=True))
print(U.edges())
<|EOT|>
