@classmethod
def make_at_port(cls, port, num, gap, inner_gap):
    """
        Creates a Spiral around the given port

        :param port: port at which the spiral starts
        :param num: number of turns
        :param gap: gap between two waveguides
        :param inner_gap: inner radius of the spiral
        """
    return cls(port.parallel_offset(-num * (port.total_width + gap) -
        inner_gap).origin, port.angle, port.width, num, gap, inner_gap)
