public int readUnsignedShort() throws IOException {
final int value;
final AbstractConverter binaryConverter;
try {
binaryConverter = helperBinaryConversion.shortConverter;
binaryConverter.fromBinary(binary, offset);
} catch (BinaryConverterException exception) {
throw new IOException(exception);
}
if (!binaryConverter.valueDefinedFromBinary) {
throw new IOException(VALUE_NOT_DEFINED);