prolly shouldnt commit this function but welp here i am doing it