(data []byte)
| 67 | } |
| 68 | |
| 69 | func wrap(data []byte) string { |
| 70 | var s strings.Builder |
| 71 | for i := 0; i < len(data); i += 52 { |
| 72 | c := 52 |
| 73 | if c > len(data)-i { |
| 74 | c = len(data) - i |
| 75 | } |
| 76 | b := (c / 5) * 4 |
| 77 | |
| 78 | if b <= 26 { |
| 79 | s.WriteByte(byte('A' + b - 1)) |
| 80 | } else { |
| 81 | s.WriteByte(byte('a' + b - 27)) |
| 82 | } |
| 83 | s.Write(data[i : i+c]) |
| 84 | s.WriteByte('\n') |
| 85 | } |
| 86 | return s.String() |
| 87 | } |
| 88 | |
| 89 | func init() { |
| 90 | flag.StringVar(&mode, "mode", "parse", "operation mode, one of 'parse' or 'encode'") |