NOTE: NOT entirely UP TO DATE, WILL UPDATE with more LATER