*** plugins/format/address.inc.old	2011-07-13 20:55:51.000000000 +0100
--- plugins/format/address.inc	2011-07-15 18:47:23.000000000 +0100
***************
*** 88,94 ****
        '#attributes' => array('class' => array('state')),
      );
    }
! 
    // A few contries have a well-known list of administrative divisions.
    if ($address['country'] == 'US') {
      $format['locality_block']['administrative_area']['#options'] = array(
--- 88,123 ----
        '#attributes' => array('class' => array('state')),
      );
    }
!   
!   // GB-specific tweaks
!   if ($address['country'] == 'GB') {
!     $locality = $format['locality_block']['locality'];
!     unset($format['locality_block']['locality']);
!     $locality['#title'] = t('Town/City');
!     $locality['#weight'] = 40;
!     $locality['#tag'] = 'div';
!     $locality['#prefix'] = '';
!     $format['locality'] = $locality;
!     // County
!     $administrative_area = $format['locality_block']['administrative_area'];
!     unset($format['locality_block']['administrative_area']);
!     $administrative_area['#title'] = t('County');
!     $administrative_area['#required'] = FALSE;
!     $administrative_area['#size'] = 30;
!     $administrative_area['#weight'] = 50;
!     $administrative_area['#tag'] = 'div';
!     $administrative_area['#prefix'] = '';
!     $format['administrative_area'] = $administrative_area;
!     // Postcode
!     $postal_code = $format['locality_block']['postal_code'];
!     unset($format['locality_block']['postal_code']);
!     $postal_code['#title']  = t('Postcode');
!     $postal_code['#weight'] = 60;
!     $postal_code['#prefix'] = '';
!     $postal_code['#tag'] = 'div';
!     $format['postal_code'] = $postal_code;
!   }
!   
    // A few contries have a well-known list of administrative divisions.
    if ($address['country'] == 'US') {
      $format['locality_block']['administrative_area']['#options'] = array(
