added another block of functions