add skeleton feature functions