add initial framework (not working)