gathered more functions