http://weelookang.blogspot.sg/2014/10/components-vector-model.html