building framework