Initial Implementation with no testing