first version
appologize for the doc