implementing custom ab testing for learning purppose