basic framework working