Squashed commit of the following:

commit 2775bec0c5fc02d3221e9e47cf89c6f5cda26dd9
Merge: 49aa1b0 d5c896d
Author: Czhipu <zhipuchen@163.com>
Date:   Thu Sep 18 17:09:50 2014 +0800

    Merge https://github.com/zhipuchen/Czp