<｜begin▁of▁sentence｜>### Instruction:
Given a graph generated with the Erdős-Rényi model having 10 nodes and 20 edges, can you create a visual representation using AlphaVaryingEdgeDrawer in igraph to draw edges with varying alpha transparency values from the source to the destination of the edges?
### Response:
from igraph import Graph, AlphaVaryingEdgeDrawer
from igraph.drawing import plot
import cairo

# Load a graph
g = Graph.Erdos_Renyi(n=10, m=20)

# Initialize a Cairo surface to draw on
surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, 400, 400)
ctx = cairo.Context(surface)

# Create an AlphaVaryingEdgeDrawer instance
drawer = AlphaVaryingEdgeDrawer(ctx, alpha_at_src=0.5, alpha_at_dest=1.0)

# Plot the graph using the custom edge drawer
plot(g, target=surface, edge_drawer=drawer)

# Save the output
target = 'custom_edges_plot.png'
surface.write_to_png(target)
<|EOT|>
