everything seems broken, ill fix it promise XD