general framework established