a lot of trajectory framework