Annotate Module

Build from scratch for learning purpose