public <T> IfrVfrStatus statusOf(Track<T> track, Instant time) {
        checkNotNull(track);
        checkNotNull(time);
        checkArgument(
            track.asTimeWindow().contains(time),
            "This track does not exist at this moment in time"
        );

        EnumMultiset<IfrVfrStatus> counts = EnumMultiset.create(IfrVfrStatus.class);
        Collection<Point<T>> localPoints = track.kNearestPoints(time, numPointsToConsider);

        for (Point<T> point : localPoints) {
            counts.add(statusOf(point));
        }
        return (counts.count(IFR) > counts.count(VFR)) ? IFR : VFR;
    }
@Test
    public void testStatusOfPoint_hasBeaconNoCallsign() {
        String rawNop = "[RH],STARS,A11_B,04/06/2018,18:17:37.168,,,,0506,005,071,272,061.21630,-149.86218,1048,0000,4.4746,2.2864,,,,A11,,,,,,ACT,IFR,,00000,,,,,,,1,,0,{RH}";

        Point<NopHit> point = NopHit.from(rawNop);

        assertEquals(506, point.rawData().beaconActualAsInt());
        assertTrue(point.rawData().hasFlightRules());
        assertFalse(point.hasValidCallsign());

        IfrVfrAssigner assigner = new IfrVfrAssigner();

        assertEquals(
            VFR, assigner.statusOf(point),
            "When the callsign is missing ignore the Flight Rules tag (because it defaults to IFR)"
        );
    }