Updated w/ Tony's Implementation Suggestions