initial commit

returning -ve numbers & needs refactoring