updated base framework