Study this mindmap from this blog