add support and test case for return