content: package com.espressif.iot.esptouch.protocol;
  
  import com.espressif.iot.esptouch.task.ICodeData;
  import com.espressif.iot.esptouch.util.ByteUtil;
  
  public class GuideCode implements ICodeData {
  
      public static final int GUIDE_CODE_LEN = 4;
  
      @Override
      public byte[] getBytes() {
          throw new RuntimeException("DataCode don't support getBytes()");
      }
  
      @Override
      public String toString() {
          StringBuilder sb = new StringBuilder();
          char[] dataU8s = getU8s();
          for (int i = 0; i < GUIDE_CODE_LEN; i++) {
              String hexString = ByteUtil.convertU8ToHexString(dataU8s[i]);
              sb.append("0x");
              if (hexString.length() == 1) {
                  sb.append("0");
              }
              sb.append(hexString).append(" ");
          }
          return sb.toString();
      }
  
      @Override
      public char[] getU8s() {
          char[] guidesU8s = new char[GUIDE_CODE_LEN];
          guidesU8s[0] = 515;
          guidesU8s[1] = 514;
          guidesU8s[2] = 513;
          guidesU8s[3] = 512;
          return guidesU8s;
      }
  }
  