<｜begin▁of▁sentence｜>### Instruction:
As a blockchain developer, you've been tasked with implementing a decentralized application for an e-commerce platform. Each product in the e-commerce store is represented by a Rectangle class, which has a custom __hash__ method for unique identification based on its width and height. The requirement is to create a graph using NetworkX, with instances of the Rectangle class as nodes, to model the relationships between these products for efficient data management and visualization.
### Response:
import networkx as nx

# Create a graph with Rectangle nodes
G = nx.Graph()

# Define a simple Rectangle class
class Rectangle:
    def __init__(self, width, height):
        self.width = width
        self.height = height

    def __hash__(self):
        return hash((self.width, self.height))

    def __eq__(self, other):
        return self.width == other.width and self.height == other.height

# Create rectangle nodes
rect1 = Rectangle(10, 20)
rect2 = Rectangle(5, 15)

# Add rectangle nodes to the graph
G.add_node(rect1)
G.add_node(rect2)

# Verify that the nodes are added using the hash
print(G.nodes())
<|EOT|>
