UPDATED FRAMEWORK