Re-Enginnered the base framework