prepare framework