Recreated API and excluded it to a single class including unittests