initial version of framework code committed
refactor the code
intial commit