add deep nesting unit test