add scheduler framework