Finished port, seems to be working