compiled and added unit testing procedure