Added and updated core functions