anchor.diff:  <3> YAML supports hexadecimal numbers.
   
   The YAML syntax is based on OpenFlow 1.4, but the same input
  -can generate earlier protocol version messages. `libofp` is intelligent about
  +can generate earlier protocol version messages. Libofp is intelligent about
   translating between OpenFlows versions. For example,
   here's a FlowMod message specified using OpenFlow 1.4 syntax, but which will 
   output a "1.0" message because version 1 is explicitly specified.
  
positive.code: = LIBOFP: OpenFlow to YAML Converter and Microservice image:https://travis-ci.org/byllyfish/libofp.svg?branch=develop["Build Status", link="https://travis-ci.org/byllyfish/libofp"]
  :source-highlighter: pygments
  :toc:
  
  == What is Libofp?
  
  The `libofp` program translates binary OpenFlow messages to YAML and back
  again. It provides a simple, uniform object syntax for directly working with the
  OpenFlow protocol programmatically.
  
  NOTE: Libofp also supports JSON natively; JSON is a valid subset of YAML 1.2.
  
  For example, the following YAML input will produce an OpenFlow 1.3 message:
  
  [source,yaml]
  ----
  
negative.code: <3> Flags are specified using arrays of strings.
  <4> Match field dependencies are automatically added when necessary.
  
  === OpenFlow to YAML
  
  Given a binary OpenFlow message, `libofp` can translate it back to a human-readable
  YAML (or JSON) object. Here's the binary for an OpenFlow OFPT_ERROR message in hexadecimal:
  
  