the read that is stored in the ReadHeadInfo object isn't ever flipped.  That is, the sequence is never put in as a reverse-complement.  That means the `flipped` logic is the opposite of what you have in your comments here.  "Flipped" means flipped with respect to the node that is containing the read.

```java
if (flipped) {
    // <--     2
    //   -->   3
```