improved forward one and reverse two functions;
new test