IT FUCKING WORKS BITCH (but need some improvements...)