updated callbacks + documentation