some fragment implementation and stuff.