added a port range support