ISO: Missing member

The following two lines are each missing an entry.

ABBCCDDEEFFGHHIILLLMNPPRSSS
TFHABHNIWNWXYBMBEFGFYAIFWAC


Your job is to get it in place with the rest.

• After haven seen the solution: Very nice puzzle! However, I don't think the tag "wordplay" really applies... ? Commented Feb 17, 2016 at 19:14
• I think you're probably right on that. Wasn't sure if I should count ISO as word play (ie In Search Of vs Int'l Standard Org). Probably not strong enough to really warrant the tag.
– Matt
Commented Feb 17, 2016 at 20:23

I think the missing entries are:

G in the top line and H in the bottom line (both as the 12th entry)

which fit into place to give the completed lists

TFHABHNIWNWHXYBMBEFGFYAIFWAC

To show this,

First, in the original list, write out each two letter pairing from the top line and bottom line in order:

AT, BF, BH, CA, CB, DH, DN, EI, EW, FN, FW, GX, HY, HB, IM, IB, LE, LF, LG, MF, NY, PA, PI, RF, SW, SA, SC

Now, for each of these bigrams, think of the second letter being encrypted by a Caesar cipher with the corresponding shift determined by the first letter. Specifically, the rule for decryption is

Decryption Rule: If the first letter is the $n$th letter of the alphabet, decrypt by shifting the second letter $n-1$ places back in the alphabet.

So, for example, the first bigram AT remains the same, the next two bigrams BF and BH have their second letters shifted back one place to become BE and BG, respectively. The next bigrams CA and CB have the second letter shifted back two places (in which case the alphabet loops) to give CY and CZ, and so on. After decryption, the full sequence becomes

AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK

These are ISO 3166-1 alpha-2 country codes (hence the hint in the title) for members of the European Union, namely

Austria, Belgium, Bulgaria, Cyprus, Czech Republic, Germany, Denmark, Estonia, Spain, Finland, France, Greece, Croatia, Hungary, Ireland, Italy, Lithuania, Luxembourg, Latvia, Malta, Netherlands, Poland, Portugal, Romania, Sweden, Slovenia and Slovakia

There is one EU member missing from this list, the United Kingdom of Great Britain and Northern Ireland which has country code GB. But of course we must encrypt it again by shifting the B forward six places to give GH. The list is sorted alphabetically, first by top row, then by bottom row, whence the idea for the placement.

• Nicely done. I wasn't sure if I was being too obtuse with it. I was also trying to sneak in a joke/hint in there about Brexit, but nothing sounded quite right when I was writing it up.
– Matt
Commented Feb 17, 2016 at 16:36
• This type of cipher (shifting a number of places depending on the corresponding letter in a key) is usually called a Vigenere cipher. Commented Feb 17, 2016 at 20:38