Remake the functions