initial extension framework