core functions reformatting