why's the port a string now? is it worth labelling these to disambiguate string -> string now?