Added support for recursive extension