more test and functions