try add recursively