http://www.cnblogs.com/KiloNet/archive/2010/08/17/1801154.html
http://www.cnblogs.com/KiloNet/archive/2010/08/18/1801990.html
http://www.cnblogs.com/KiloNet/archive/2010/08/17/1801154.html
http://www.cnblogs.com/KiloNet/archive/2010/08/18/1801990.html