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_zeroBeaconNoCallsign() {
        //this raw source was manually edited to remove the flight rules (VFR/IFR) field
        String rawNop = "[RH],STARS,A11_B,03/31/2018,23:05:47.612,,,,0000,000,140,315,061.42058,-149.52365,2766,0000,14.2051,14.6263,,,,A11,,,,,,ACT,,,00000,,,,,,,1,,1,{RH}";

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

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

        IfrVfrAssigner assigner = new IfrVfrAssigner();

        assertEquals(
           VFR, assigner.statusOf(point),
            "When the beacon is 0000 the aircraft should be VFR"
        );
    }