    @Test
    public void bwc()
    {

        try
        {
            String[] nmeas = new String[] {
                "$GPBWC,081837,,,,,,T,,M,,N,*13\r\n",
                "$GPBWC,220516,5130.02,N,00046.34,W,213.8,T,218.0,M,0004.6,N,EGLM*21\r\n",
                "$GPBWC,010003,1248.4128,S,03827.6978,W,338.4,T,1.5,M,0.314,N,BA01,A*61\r\n"
            };
            for (String nmea : nmeas)
            {
                System.err.println(nmea);
                SimpleStorage ss = new SimpleStorage();
                NMEAObserver tc = ss.getStorage(NMEAObserver.class);
                parser.parse(nmea, false, null, tc, null);
                assertNull(ss.getRollbackReason());
                assertEquals(MessageType.BWC, ss.getProperty("messageType"));
                NMEAContentHelper nch = new NMEAContentHelper(nmea);
                assertEquals(TalkerId.GP, ss.getProperty("talkerId"));
                NMEAClock clock = (NMEAClock) ss.getProperty("clock");
                String hhmmss = nch.getString(1);
                assertEquals(Integer.parseInt(hhmmss.substring(0, 2)), clock.getHour());
                assertEquals(Integer.parseInt(hhmmss.substring(2, 4)), clock.getMinute());
                assertEquals(Integer.parseInt(hhmmss.substring(4, 6)), clock.getSecond());
                assertEquals(nch.getDegree(2), ss.getDouble("latitude"), Epsilon);
                assertEquals(nch.getDegree(4), ss.getDouble("longitude"), Epsilon);
                assertEquals(nch.getFloat(6), ss.getFloat(nch.getPrefix(7)+"Bearing"), Epsilon);
                assertEquals(nch.getFloat(8), ss.getFloat(nch.getPrefix(9)+"Bearing"), Epsilon);
                assertEquals(nch.getFloat(10), ss.getFloat("distanceToWaypoint"), Epsilon);
                assertEquals(nch.getString(12), ss.getProperty("waypoint"));
                if (nch.getSize() > 14)
                {
                    assertEquals(nch.getChar(13), ss.getProperty("faaModeIndicator"));
                }
            }
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
            fail(ex.getMessage());
        }
    }