http://amysrobot.com/archives/2005/01/law_order_gets.php