Updated source from SaevarIngi