### Question:
CarFlagEncoder extends AbstractFlagEncoder { @Override public void createEncodedValues(List<EncodedValue> registerNewEncodedValue, String prefix, int index) { super.createEncodedValues(registerNewEncodedValue, prefix, index); registerNewEncodedValue.add(avgSpeedEnc = new UnsignedDecimalEncodedValue(EncodingManager.getKey(prefix, "average_speed"), speedBits, speedFactor, speedTwoDirections)); } CarFlagEncoder();  CarFlagEncoder(PMap properties);  CarFlagEncoder(String propertiesStr);  CarFlagEncoder(int speedBits, double speedFactor, int maxTurnCosts); @Override int getVersion(); @Override void createEncodedValues(List<EncodedValue> registerNewEncodedValue, String prefix, int index); @Override EncodingManager.Access getAccess(ReaderWay way); @Override IntsRef handleWayTags(IntsRef edgeFlags, ReaderWay way, EncodingManager.Access accept); @Override String toString();  }### Answer:
@Test public void testIssue_1256() { ReaderWay way = new ReaderWay(1); way.setTag("route", "ferry"); way.setTag("estimated_distance", 257); CarFlagEncoder lowFactorCar = new CarFlagEncoder(10, 1, 0); List<EncodedValue> list = new ArrayList<>(); lowFactorCar.setEncodedValueLookup(em); lowFactorCar.createEncodedValues(list, "car", 0); assertEquals(2.5, encoder.getFerrySpeed(way), .1); assertEquals(.5, lowFactorCar.getFerrySpeed(way), .1); }