Why is this function nessasary?