http://oshige.com/blog3/diagram/images/sort1.jpg