Re-wrote the portal stuff. Much more efficient now. Sorry lex =P