+As we can see in `# Add` section, there are four `add` variants:
+
+* add RT,RA,RB (OE=0 Rc=0)
+* add. RT,RA,RB (OE=0 Rc=1)
+* addo RT,RA,RB (OE=1 Rc=0)
+* addo. RT,RA,RB (OE=1 Rc=1)
+
+All variants are covered in the relevant OpenPOWER ISA. As of time of writing,
+the most recent edition is 3.0C, and it is available here:
+
+https://ftp.libre-soc.org/PowerISA_public.v3.0C.pdf
+
+The instructions of our interest can be found exactly where we'd expect them
+to be found, at chapter `3.3: Fixed-Point Facility Instructions`. We can see
+here the instruction encoding, as well as its form (XO) and all information
+we already found in `fixedarith.mdwn` file.
+
+All these details are available in some form as part of `info` variable we
+observed before (at `caller.py` file). The `info` variable is, actually,
+a simple instance of named tuple; the overall structure of this named tuple
+is left as an exercise for the reader.
+
+# Modifying the pseudocode
+
+We won't dive into all gory details of the decoder, at least for now. What
+is important for us at this stage is, how can we affect the generated code?
+As we saw recently, the markdown file is somehow converted into the Python
+code; but how is the conversion done?
+
+This is done by the script called pywriter. Again, we omit the exact details,
+since this script clearly deserves its own documentation; the only crucial
+information that pywriter script uses PLY (hint: Python-Lex-Yacc) in order
+to get the work done, and, thanks to PLY magic, it is able to convert ISA
+pseudocode into something more Pythonic.
+
+For illustrative purposes, let's modify the pseudocode so that, instead of
+addition, it performs a subtraction. Let's find the pseudocode for `add`
+instructions inside `fixedarith.mdwn`...