this took so long pls