Howto: load YAML and preserve the key order?

the orderedhash gem does a really nice job at allowing you to print
yaml with ordered keys.

quick example to show what I’m talking about

require ‘orderedhash’
h = OrderedHash.new
h[3] = 8
h[9] = 10

h.to_yaml # will give: “—\n3: 8\n9:10” every time

I need to be able to also read in YAML while preserving the key
order. Any ideas on how to do this (besides using 1.9)?