updates (semi working)