This needs to include Aaron's code -----
Merge pull request #1 from mirrislegend/ALFbranch

This needs to include Aaron's code -----