I answered a similar question here a couple of years ago. It's not a great answer in a couple of ways, so I might add some stuff when I get home, but there are a lot of examples.