added some more framework