modified part of the file, add more support for testing