bit more test and func