added alot more stuff