updated with changes. need to write a few more test and add the glycation