everything is now broken, but if i make it it will properly support definitions of variables now :)