multi-device: rewording and view improvement

Correct wording concerning multidevice Linking function.
Fix windows size in the account creation wizard.
Addings user hints to better understand Linking function.

Tuleap: #1158
Change-Id: I0d68a68ba61f51200052bb1a4428b82e79848447
diff --git a/src/ExportPasswordWC.mm b/src/ExportPasswordWC.mm
index f9b914c..054442e 100644
--- a/src/ExportPasswordWC.mm
+++ b/src/ExportPasswordWC.mm
@@ -100,8 +100,8 @@
                                                      }
                                                          break;
                                                      case Account::ExportOnRingStatus::WRONG_PASSWORD:{
-                                                         NSLog(@"Export ended with Wrong Password");
-                                                         [self showError:NSLocalizedString(@"Export ended with Wrong Password", @"Error shown to the user" )];
+                                                         NSLog(@"Export ended with wrong password");
+                                                         [self showError:NSLocalizedString(@"The password you entered does not unlock this account", @"Error shown to the user" )];
                                                      }
                                                          break;
                                                      case Account::ExportOnRingStatus::NETWORK_ERROR:{
@@ -121,18 +121,23 @@
 }
 
 //TODO: Move String formatting to a dedicated Utility Classes
-- (NSAttributedString *)formatPinMessage:(NSString*) pin
+- (NSAttributedString*) formatPinMessage:(NSString*) pin
 {
-    NSMutableAttributedString* hereIsThePin = [[NSMutableAttributedString alloc] initWithString:NSLocalizedString(@"Your generated pin:","Title shown to user to concat with Pin")];
-    NSMutableAttributedString* thePin = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@" %@\n", pin]];
+    NSMutableAttributedString* thePin = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"\n%@\n", pin]];
     [thePin beginEditing];
     NSRange range = NSMakeRange(0, [thePin length]);
-    [thePin addAttribute:NSFontAttributeName value:[NSFont fontWithName:@"Helvetica-Bold" size:12.0] range:range];
-    [hereIsThePin appendAttributedString:thePin];
-    NSMutableAttributedString* infos = [[NSMutableAttributedString alloc] initWithString:NSLocalizedString(@"This pin and the account password should be entered on your new device within 5 minutes. On most client, this is done from \"Existing Ring account\" menu. You may generate a new pin at any moment.","Infos on how to use the pin")];
-    [hereIsThePin appendAttributedString:infos];
+    [thePin addAttribute:NSFontAttributeName value:[NSFont fontWithName:@"Helvetica-Bold" size:20.0] range:range];
 
-    return hereIsThePin;
+    NSMutableParagraphStyle* mutParaStyle=[[NSMutableParagraphStyle alloc] init];
+    [mutParaStyle setAlignment:NSCenterTextAlignment];
+    
+    [thePin addAttributes:[NSDictionary dictionaryWithObject:mutParaStyle forKey:NSParagraphStyleAttributeName] range:range];
+
+    NSMutableAttributedString* infos = [[NSMutableAttributedString alloc] initWithString:NSLocalizedString(@"To complete the processs, you need to open Ring on the new device and choose the option \"Link this device to an account\". Your pin is valid for 10 minutes.","Title shown to user to concat with Pin")];
+    [thePin appendAttributedString:infos];
+    [thePin endEditing];
+
+    return thePin;
 }
 
 @end
diff --git a/src/RingWizardLinkAccountVC.mm b/src/RingWizardLinkAccountVC.mm
index 9b287e9..df3f0dd 100644
--- a/src/RingWizardLinkAccountVC.mm
+++ b/src/RingWizardLinkAccountVC.mm
@@ -56,6 +56,7 @@
     __unsafe_unretained IBOutlet NSProgressIndicator* progressBar;
 
     __unsafe_unretained IBOutlet NSView* errorContainer;
+    __unsafe_unretained IBOutlet NSPopover* helpContainer;
 
     Account* accountToCreate;
     NSTimer* errorTimer;
@@ -83,6 +84,12 @@
     [errorContainer setHidden:YES];
 }
 
+
+- (IBAction)showHelp:(id)sender
+{
+    [helpContainer showRelativeToRect:[sender bounds] ofView:sender preferredEdge:NSMaxYEdge];
+}
+
 - (IBAction)importRingAccount:(id)sender
 {
     [self showLoading];
diff --git a/src/RingWizardNewAccountVC.h b/src/RingWizardNewAccountVC.h
index e6232f1..4838997 100644
--- a/src/RingWizardNewAccountVC.h
+++ b/src/RingWizardNewAccountVC.h
@@ -21,6 +21,7 @@
 
 @protocol RingWizardNewDelegate <NSObject>
 - (void)didCreateAccountWithSuccess:(BOOL)success;
+- (void)showView:(NSView*)view;
 @end
 
 @interface RingWizardNewAccountVC : NSViewController
@@ -29,5 +30,9 @@
 
 @property (nonatomic, weak)NSString* alias;
 @property (nonatomic, weak)NSString* password;
+@property (nonatomic, weak)NSString* repeatPassword;
+@property (readonly)BOOL isRepeatPasswordValid;
+@property (readonly)BOOL isPasswordValid;
+
 - (void)show;
 @end
diff --git a/src/RingWizardNewAccountVC.mm b/src/RingWizardNewAccountVC.mm
index dff5258..254e544 100644
--- a/src/RingWizardNewAccountVC.mm
+++ b/src/RingWizardNewAccountVC.mm
@@ -49,21 +49,41 @@
 
 @implementation RingWizardNewAccountVC
 {
+    __unsafe_unretained IBOutlet NSView* loadingView;
+    __unsafe_unretained IBOutlet NSView* creationView;
+
     __unsafe_unretained IBOutlet NSButton* photoView;
     __unsafe_unretained IBOutlet NSTextField* nicknameField;
     __unsafe_unretained IBOutlet NSSecureTextField* passwordField;
-    __unsafe_unretained IBOutlet NSProgressIndicator* progressBar;
-    __unsafe_unretained IBOutlet NSTextField* indicationLabel;
+    __unsafe_unretained IBOutlet NSSecureTextField* passwordRepeatField;
     __unsafe_unretained IBOutlet NSTextField* passwordLabel;
+    __unsafe_unretained IBOutlet NSTextField* passwordRepeatLabel;
+    __unsafe_unretained IBOutlet NSImageView* passwordCheck;
+    __unsafe_unretained IBOutlet NSImageView* passwordRepeatCheck;
     __unsafe_unretained IBOutlet NSButton* createButton;
     __unsafe_unretained IBOutlet NSButton* cancelButton;
+
+    __unsafe_unretained IBOutlet NSProgressIndicator* progressBar;
     Account* accountToCreate;
     NSTimer* errorTimer;
     QMetaObject::Connection stateChanged;
 }
 
-NSInteger const NICKNAME_TAG        = 1;
+NSInteger const NICKNAME_TAG                    = 1;
 
+//ERROR CODE for textfields validations
+NSInteger const ERROR_PASSWORD_TOO_SHORT        = -1;
+NSInteger const ERROR_REPEAT_MISMATCH           = -2;
+
+
+- (BOOL)produceError:(NSError**)error withCode:(NSInteger)code andMessage:(NSString*)message
+{
+    if (error != NULL){
+        NSDictionary *errorDetail = @{NSLocalizedDescriptionKey: message};
+        *error = [NSError errorWithDomain:@"Input" code:code userInfo:errorDetail];
+    }
+    return NO;
+}
 
 - (void)show
 {
@@ -81,11 +101,25 @@
     [photoView setWantsLayer: YES];
     photoView.layer.cornerRadius = photoView.frame.size.width / 2;
     photoView.layer.masksToBounds = YES;
+
+    [self display:creationView];
+}
+
+- (void)removeSubviews
+{
+    while ([self.view.subviews count] > 0){
+        [[self.view.subviews firstObject] removeFromSuperview];
+    }
+}
+
+- (void)display:(NSView *)view
+{
+    [self.delegate showView:view];
 }
 
 - (IBAction)editPhoto:(id)sender
 {
-   auto pictureTaker = [IKPictureTaker pictureTaker];
+    auto pictureTaker = [IKPictureTaker pictureTaker];
 
     [pictureTaker beginPictureTakerSheetForWindow:[self.delegate window]
                                      withDelegate:self
@@ -104,18 +138,66 @@
         [photoView setImage:[NSImage imageNamed:@"default_user_icon"]];
 }
 
+#pragma mark - Input validation
+- (BOOL)isPasswordValid
+{
+    return self.password.length >= 6;
+}
+
+- (BOOL)isRepeatPasswordValid
+{
+    return [self.password isEqualToString:self.repeatPassword];
+}
+
+- (BOOL)validateRepeatPassword:(NSError **)error
+{
+    if (!self.isRepeatPasswordValid){
+        return [self produceError:error
+                         withCode:ERROR_REPEAT_MISMATCH
+                       andMessage:NSLocalizedString(@"Passwords don't match",
+                                                     @"Indication for user")];
+    }
+    return YES;
+}
+
+- (BOOL)validatePassword:(NSError **)error
+{
+    if (!self.isRepeatPasswordValid){
+        return [self produceError:error
+                         withCode:ERROR_PASSWORD_TOO_SHORT
+                       andMessage:NSLocalizedString(@"Password is too short",
+                                                     @"Indication for user")];
+    }
+    return YES;
+}
+
+- (BOOL)validateUserInputPassword:(NSError **)error
+{
+    return [self validatePassword:error] && [self validateRepeatPassword:error];
+}
+
 - (IBAction)createRingAccount:(id)sender
 {
-    [nicknameField setHidden:YES];
-    [progressBar setHidden:NO];
-    [createButton setHidden:YES];
-    [photoView setHidden:YES];
-    [passwordField setHidden:YES];
-    [passwordLabel setHidden:YES];
-    [cancelButton setHidden:YES];
+    NSError *error = nil;
+    if (![self validateUserInputPassword:&error]){
+        NSAlert* alert = [NSAlert alertWithMessageText:[error localizedDescription]
+                                         defaultButton:NSLocalizedString(@"Revise Input",
+                                                                         @"Button title")
+                                       alternateButton:nil
+                                           otherButton:nil
+                             informativeTextWithFormat:@"%@",error];
+
+        [alert beginSheetModalForWindow:passwordField.window
+                          modalDelegate:nil
+                         didEndSelector:NULL
+                            contextInfo:NULL];
+
+        return;
+    }
+
+    [self display:loadingView];
     [progressBar startAnimation:nil];
-    [indicationLabel setStringValue:NSLocalizedString(@"Just a moment...",
-                                                      @"Indication for user")];
+
 
     if ([self.alias isEqualToString:@""]) {
         self.alias = NSLocalizedString(@"Unknown", @"Name used when user leave field empty");
@@ -139,7 +221,7 @@
         profile->save();
     }
 
-    QModelIndex qIdx =  AccountModel::instance().protocolModel()->selectionModel()->currentIndex();
+    QModelIndex qIdx = AccountModel::instance().protocolModel()->selectionModel()->currentIndex();
 
     [self setCallback];
 
@@ -229,4 +311,14 @@
     self.alias = alias;
 }
 
++ (NSSet *)keyPathsForValuesAffectingIsPasswordValid
+{
+    return [NSSet setWithObjects:@"password", nil];
+}
+
++ (NSSet *)keyPathsForValuesAffectingIsRepeatPasswordValid
+{
+    return [NSSet setWithObjects:@"password", @"repeatPassword", nil];
+}
+
 @end
diff --git a/src/RingWizardWC.h b/src/RingWizardWC.h
index b68c2c7..62a5ec5 100644
--- a/src/RingWizardWC.h
+++ b/src/RingWizardWC.h
@@ -25,7 +25,6 @@
     NSOpenSavePanelDelegate, RingWizardChooseDelegate, RingWizardNewDelegate,
     RingWizardLinkDelegate>
 
-
 - (void)showChooseWithCancelButton:(BOOL)showCancel;
 - (void)showNewAccountVC;
 - (void)showLinkAccountVC;
diff --git a/src/RingWizardWC.mm b/src/RingWizardWC.mm
index 373eb80..bb4e101 100644
--- a/src/RingWizardWC.mm
+++ b/src/RingWizardWC.mm
@@ -41,26 +41,26 @@
     IBOutlet RingWizardNewAccountVC* newAccountWC;
     IBOutlet RingWizardLinkAccountVC* linkAccountWC;
     IBOutlet RingWizardChooseVC* chooseActiontWC;
-    float initialHeight;
-    float currentHeight;
     BOOL isCancelable;
 }
 
+- (instancetype)initWithWindowNibName:(NSString *)windowNibName{
+    self = [super initWithWindowNibName:windowNibName];
+
+    chooseActiontWC = [[RingWizardChooseVC alloc] initWithNibName:@"RingWizardChoose" bundle:nil];
+    linkAccountWC = [[RingWizardLinkAccountVC alloc] initWithNibName:@"RingWizardLinkAccount" bundle:nil];
+    newAccountWC = [[RingWizardNewAccountVC alloc] initWithNibName:@"RingWizardChoose" bundle:nil];
+    return self;
+}
+
 - (void)windowDidLoad
 {
     [super windowDidLoad];
-
-    [self.window setBackgroundColor:[NSColor ringGreyHighlight]];
-    chooseActiontWC = [[RingWizardChooseVC alloc] initWithNibName:@"RingWizardChoose" bundle:nil];
     [chooseActiontWC setDelegate:self];
-    linkAccountWC = [[RingWizardLinkAccountVC alloc] initWithNibName:@"RingWizardLinkAccount" bundle:nil];
     [linkAccountWC setDelegate:self];
-    newAccountWC = [[RingWizardNewAccountVC alloc] initWithNibName:@"RingWizardNewAccount" bundle:nil];
     [newAccountWC setDelegate:self];
-    initialHeight = self.window.frame.size.height;
-    currentHeight = self.window.frame.size.height;
-    isCancelable = NO;
-    [self showView:chooseActiontWC.view];
+    [self.window setBackgroundColor:[NSColor ringGreyHighlight]];
+    [self showChooseWithCancelButton:isCancelable];
 }
 
 - (void)removeSubviews
@@ -71,33 +71,31 @@
     }
 }
 
-#define minHeight 135
-- (void)showView: (NSView*) view
+#define headerHeight 60
+#define minHeight 141
+#define defaultMargin 20
+- (void)showView:(NSView*)view
 {
     [self removeSubviews];
     NSRect frame = [self.container frame];
-    frame.size.height = MAX(minHeight, view.bounds.size.height);
+    float sizeFrame = MAX(minHeight, view.bounds.size.height);
+    frame.size.height = sizeFrame;
     [view setFrame:frame];
+
     [self.container setFrame:frame];
-    float size = 0;
-    NSView *container = self.window.contentView;
-    for (NSView *child in container.subviews){
-        size += child.frame.size.height;
-    }
-    if (currentHeight != size){
-        currentHeight = size;
-        NSRect frameWindows = self.window.frame;
-        frameWindows.size.height = currentHeight;
-        [self.window setFrame:frameWindows display:YES animate:YES];
-    }
+    float size = headerHeight + sizeFrame + defaultMargin;
+    NSRect frameWindows = self.window.frame;
+    frameWindows.size.height = size;
+    [self.window setFrame:frameWindows display:YES animate:YES];
+
     [self.container addSubview:view];
 }
 
 - (void)showChooseWithCancelButton:(BOOL)showCancel
 {
-    [self showView: chooseActiontWC.view];
     [chooseActiontWC showCancelButton:showCancel];
     isCancelable = showCancel;
+    [self showView:chooseActiontWC.view];
 }
 
 - (void)showNewAccountVC
diff --git a/ui/Base.lproj/AccDevices.strings b/ui/Base.lproj/AccDevices.strings
new file mode 100644
index 0000000..6768df4
--- /dev/null
+++ b/ui/Base.lproj/AccDevices.strings
@@ -0,0 +1,15 @@
+
+/* Class = "NSTextFieldCell"; title = "To use this account on other devices, you must first expose it on Ring. 
This will generate a PIN code that you must enter on the new device to setup the account. 
The PIN is valid for 10 minutes."; ObjectID = "Kzk-fW-9c3"; */
+"Kzk-fW-9c3.title" = "To use this account on other devices, you must first expose it on Ring. 
This will generate a PIN code that you must enter on the new device to setup the account. 
The PIN is valid for 10 minutes.";
+
+/* Class = "NSTextFieldCell"; title = "Use the same Ring account on multiple devices. Below is the list of devices linked to this Ring account"; ObjectID = "kMd-iv-UAy"; */
+"kMd-iv-UAy.title" = "Use the same Ring account on multiple devices. Below is the list of devices linked to this Ring account";
+
+/* Class = "NSTextFieldCell"; placeholderString = "Status"; ObjectID = "mAD-1Z-aYB"; */
+"mAD-1Z-aYB.placeholderString" = "Status";
+
+/* Class = "NSButtonCell"; title = "Link another device to this account"; ObjectID = "uDY-qB-G0I"; */
+"uDY-qB-G0I.title" = "Link another device to this account";
+
+/* Class = "NSTextFieldCell"; placeholderString = "Name"; ObjectID = "w62-Jz-2tu"; */
+"w62-Jz-2tu.placeholderString" = "Name";
diff --git a/ui/Base.lproj/AccDevices.xib b/ui/Base.lproj/AccDevices.xib
index 5db46b3..312acfb 100644
--- a/ui/Base.lproj/AccDevices.xib
+++ b/ui/Base.lproj/AccDevices.xib
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="16B2553a" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11201"/>
     </dependencies>
@@ -12,19 +12,18 @@
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
-        <customView id="Hz6-mo-xeY">
-            <rect key="frame" x="0.0" y="0.0" width="576" height="389"/>
+        <customView misplaced="YES" id="Hz6-mo-xeY">
+            <rect key="frame" x="0.0" y="0.0" width="576" height="409"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
             <subviews>
-                <scrollView fixedFrame="YES" borderType="none" autohidesScrollers="YES" horizontalLineScroll="57" horizontalPageScroll="10" verticalLineScroll="57" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Cn2-3f-RfE">
-                    <rect key="frame" x="20" y="20" width="536" height="219"/>
-                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <clipView key="contentView" ambiguous="YES" id="5RD-uP-uce">
+                <scrollView misplaced="YES" borderType="none" autohidesScrollers="YES" horizontalLineScroll="57" horizontalPageScroll="10" verticalLineScroll="57" verticalPageScroll="10" usesPredominantAxisScrolling="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Cn2-3f-RfE">
+                    <rect key="frame" x="20" y="134" width="536" height="219"/>
+                    <clipView key="contentView" id="5RD-uP-uce">
                         <rect key="frame" x="0.0" y="0.0" width="536" height="219"/>
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <outlineView verticalHuggingPriority="750" allowsExpansionToolTips="YES" columnAutoresizingStyle="lastColumnOnly" autosaveColumns="NO" rowHeight="55" rowSizeStyle="automatic" viewBased="YES" outlineTableColumn="Sv0-5z-dC2" id="20b-Ji-RbX" customClass="RingOutlineView">
-                                <rect key="frame" x="0.0" y="0.0" width="536" height="219"/>
+                                <rect key="frame" x="1" y="0.0" width="536" height="219"/>
                                 <autoresizingMask key="autoresizingMask"/>
                                 <size key="intercellSpacing" width="3" height="2"/>
                                 <color key="backgroundColor" name="controlBackgroundColor" catalog="System" colorSpace="catalog"/>
@@ -55,9 +54,9 @@
                                                             <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                                                         </textFieldCell>
                                                     </textField>
-                                                    <textField verticalHuggingPriority="750" tag="100" translatesAutoresizingMaskIntoConstraints="NO" id="UbS-VO-lii" userLabel="Name label">
+                                                    <textField verticalHuggingPriority="750" tag="100" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="UbS-VO-lii" userLabel="Name label">
                                                         <rect key="frame" x="38" y="26" width="208" height="21"/>
-                                                        <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" placeholderString="Name" id="w62-Jz-2tu">
+                                                        <textFieldCell key="cell" sendsActionOnEndEditing="YES" placeholderString="Name" id="w62-Jz-2tu">
                                                             <font key="font" metaFont="system" size="17"/>
                                                             <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                                             <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
@@ -88,27 +87,40 @@
                         </subviews>
                     </clipView>
                     <scroller key="horizontalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="YES" id="xKj-nZ-7Mx">
-                        <rect key="frame" x="0.0" y="-16" width="0.0" height="16"/>
+                        <rect key="frame" x="-8" y="-15" width="0.0" height="15"/>
                         <autoresizingMask key="autoresizingMask"/>
                     </scroller>
                     <scroller key="verticalScroller" hidden="YES" verticalHuggingPriority="750" horizontal="NO" id="eiD-YY-HVN">
-                        <rect key="frame" x="-16" y="0.0" width="16" height="0.0"/>
+                        <rect key="frame" x="-15" y="-8" width="15" height="0.0"/>
                         <autoresizingMask key="autoresizingMask"/>
                     </scroller>
                 </scrollView>
-                <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="K8a-3i-BoE">
-                    <rect key="frame" x="18" y="310" width="540" height="54"/>
-                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <textFieldCell key="cell" sendsActionOnEndEditing="YES" title="Use the same Ring account on multiple devices." id="kMd-iv-UAy">
+                <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="K8a-3i-BoE">
+                    <rect key="frame" x="18" y="361" width="540" height="34"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="34" id="naw-cT-zM2"/>
+                    </constraints>
+                    <textFieldCell key="cell" sendsActionOnEndEditing="YES" title="Use the same Ring account on multiple devices. Below is the list of devices linked to this Ring account" id="kMd-iv-UAy">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                     </textFieldCell>
                 </textField>
-                <button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hbO-OT-jpc">
-                    <rect key="frame" x="220" y="274" width="136" height="32"/>
-                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                    <buttonCell key="cell" type="push" title="Add new device" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="uDY-qB-G0I">
+                <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="qbe-Z5-0NO">
+                    <rect key="frame" x="18" y="52" width="540" height="79"/>
+                    <constraints>
+                        <constraint firstAttribute="height" constant="79" id="t9o-hB-b8b"/>
+                    </constraints>
+                    <textFieldCell key="cell" sendsActionOnEndEditing="YES" id="Kzk-fW-9c3">
+                        <font key="font" metaFont="system"/>
+                        <string key="title">To use this account on other devices, you must first expose it on Ring. 
This will generate a PIN code that you must enter on the new device to setup the account. 
The PIN is valid for 10 minutes.</string>
+                        <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                        <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                    </textFieldCell>
+                </textField>
+                <button verticalHuggingPriority="750" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hbO-OT-jpc">
+                    <rect key="frame" x="155" y="16" width="266" height="32"/>
+                    <buttonCell key="cell" type="push" title="Link another device to this account" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="uDY-qB-G0I">
                         <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                         <font key="font" metaFont="system"/>
                     </buttonCell>
@@ -117,7 +129,21 @@
                     </connections>
                 </button>
             </subviews>
-            <point key="canvasLocation" x="377" y="270.5"/>
+            <constraints>
+                <constraint firstAttribute="trailing" secondItem="K8a-3i-BoE" secondAttribute="trailing" constant="20" symbolic="YES" id="04L-Oh-TeA"/>
+                <constraint firstItem="K8a-3i-BoE" firstAttribute="top" secondItem="Hz6-mo-xeY" secondAttribute="top" constant="14" id="0o1-PJ-Ud6"/>
+                <constraint firstItem="Cn2-3f-RfE" firstAttribute="leading" secondItem="qbe-Z5-0NO" secondAttribute="leading" id="ICB-cT-5Xz"/>
+                <constraint firstItem="K8a-3i-BoE" firstAttribute="leading" secondItem="Cn2-3f-RfE" secondAttribute="leading" id="Jiu-i8-QaL"/>
+                <constraint firstItem="K8a-3i-BoE" firstAttribute="leading" secondItem="Hz6-mo-xeY" secondAttribute="leading" constant="20" symbolic="YES" id="KBt-HF-lOD"/>
+                <constraint firstItem="qbe-Z5-0NO" firstAttribute="centerX" secondItem="hbO-OT-jpc" secondAttribute="centerX" id="PdW-6C-uTd"/>
+                <constraint firstItem="K8a-3i-BoE" firstAttribute="trailing" secondItem="Cn2-3f-RfE" secondAttribute="trailing" id="ZKY-Mr-igx"/>
+                <constraint firstItem="Cn2-3f-RfE" firstAttribute="trailing" secondItem="qbe-Z5-0NO" secondAttribute="trailing" id="dFR-Lf-JS7"/>
+                <constraint firstItem="qbe-Z5-0NO" firstAttribute="top" secondItem="Cn2-3f-RfE" secondAttribute="bottom" constant="3" id="iee-xp-cxF"/>
+                <constraint firstItem="Cn2-3f-RfE" firstAttribute="top" secondItem="Hz6-mo-xeY" secondAttribute="top" constant="56" id="lSL-4E-Z6R"/>
+                <constraint firstItem="hbO-OT-jpc" firstAttribute="top" secondItem="qbe-Z5-0NO" secondAttribute="bottom" constant="8" symbolic="YES" id="lZ8-Oh-xzM"/>
+                <constraint firstAttribute="bottom" secondItem="hbO-OT-jpc" secondAttribute="bottom" constant="23" id="qC8-Vx-X0k"/>
+            </constraints>
+            <point key="canvasLocation" x="377" y="280.5"/>
         </customView>
     </objects>
 </document>
diff --git a/ui/Base.lproj/ExportPasswordWindow.strings b/ui/Base.lproj/ExportPasswordWindow.strings
index 10cd625..294984d 100644
--- a/ui/Base.lproj/ExportPasswordWindow.strings
+++ b/ui/Base.lproj/ExportPasswordWindow.strings
@@ -1,33 +1,30 @@
 
-/* Class = "BindingConnection"; ibShadowedIsNilPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+/* Class = "CocoaBindingsConnection"; ibShadowedIsNilPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
 "5cX-yS-4Sl.ibShadowedIsNilPlaceholder" = "Password...";
 
-/* Class = "BindingConnection"; ibShadowedMultipleValuesPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+/* Class = "CocoaBindingsConnection"; ibShadowedMultipleValuesPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
 "5cX-yS-4Sl.ibShadowedMultipleValuesPlaceholder" = "Password...";
 
-/* Class = "BindingConnection"; ibShadowedNoSelectionPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+/* Class = "CocoaBindingsConnection"; ibShadowedNoSelectionPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
 "5cX-yS-4Sl.ibShadowedNoSelectionPlaceholder" = "Password...";
 
-/* Class = "BindingConnection"; ibShadowedNotApplicablePlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+/* Class = "CocoaBindingsConnection"; ibShadowedNotApplicablePlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
 "5cX-yS-4Sl.ibShadowedNotApplicablePlaceholder" = "Password...";
 
-/* Class = "NSTextFieldCell"; title = "To add a new device to your Ring account, you export your account on the Ring. This will generate a pin that must be entered on your new device within 5 minutes of its generation."; ObjectID = "859-10-HEb"; */
-"859-10-HEb.title" = "To add a new device to your Ring account, you export your account on the Ring. This will generate a pin that must be entered on your new device within 5 minutes of its generation.";
+/* Class = "NSTextFieldCell"; title = "Please provide your Ring account password to start"; ObjectID = "859-10-HEb"; */
+"859-10-HEb.title" = "Please provide your Ring account password to start";
 
 /* Class = "NSWindow"; title = "Window"; ObjectID = "QvC-M9-y7g"; */
 "QvC-M9-y7g.title" = "Window";
 
-/* Class = "NSTextFieldCell"; placeholderString = "error label"; ObjectID = "Ua9-fG-r6k"; */
-"Ua9-fG-r6k.placeholderString" = "error label";
-
 /* Class = "NSButtonCell"; title = "OK"; ObjectID = "VN1-A3-RIh"; */
 "VN1-A3-RIh.title" = "OK";
 
 /* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "cSU-aD-OwX"; */
 "cSU-aD-OwX.title" = "Cancel";
 
-/* Class = "NSButtonCell"; title = "OK"; ObjectID = "cre-OL-lZy"; */
-"cre-OL-lZy.title" = "OK";
+/* Class = "NSButtonCell"; title = "OK"; ObjectID = "dfD-AK-f3R"; */
+"dfD-AK-f3R.title" = "OK";
 
 /* Class = "NSTextFieldCell"; placeholderString = "error label"; ObjectID = "e7n-Ev-bK7"; */
 "e7n-Ev-bK7.placeholderString" = "error label";
@@ -38,8 +35,8 @@
 /* Class = "NSTextFieldCell"; title = "Password"; ObjectID = "vwh-K9-3O9"; */
 "vwh-K9-3O9.title" = "Password";
 
-/* Class = "NSTextFieldCell"; title = "Adding new device"; ObjectID = "wmv-sA-Mlh"; */
-"wmv-sA-Mlh.title" = "Adding new device";
+/* Class = "NSTextFieldCell"; title = "Link another device to this account"; ObjectID = "wmv-sA-Mlh"; */
+"wmv-sA-Mlh.title" = "Link another device to this account";
 
 /* Class = "NSSecureTextFieldCell"; placeholderString = "Password..."; ObjectID = "xqz-Uz-hqU"; */
 "xqz-Uz-hqU.placeholderString" = "Password...";
diff --git a/ui/Base.lproj/ExportPasswordWindow.xib b/ui/Base.lproj/ExportPasswordWindow.xib
index c2631f2..6213b70 100644
--- a/ui/Base.lproj/ExportPasswordWindow.xib
+++ b/ui/Base.lproj/ExportPasswordWindow.xib
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="16B2553a" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11201"/>
         <capability name="Aspect ratio constraints" minToolsVersion="5.1"/>
@@ -23,17 +23,85 @@
         <window title="Window" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" oneShot="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" animationBehavior="default" id="QvC-M9-y7g">
             <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
             <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
-            <rect key="contentRect" x="196" y="240" width="410" height="191"/>
-            <rect key="screenRect" x="0.0" y="0.0" width="1680" height="1027"/>
+            <rect key="contentRect" x="196" y="240" width="410" height="161"/>
+            <rect key="screenRect" x="0.0" y="0.0" width="1440" height="900"/>
             <view key="contentView" id="EiT-Mj-1SZ">
-                <rect key="frame" x="0.0" y="0.0" width="410" height="191"/>
+                <rect key="frame" x="0.0" y="0.0" width="410" height="161"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
+                    <customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="ty1-sj-tT6">
+                        <rect key="frame" x="15" y="0.0" width="380" height="151"/>
+                        <subviews>
+                            <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="G1N-th-ZtP">
+                                <rect key="frame" x="-2" y="78" width="384" height="40"/>
+                                <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" placeholderString="error label" id="e7n-Ev-bK7">
+                                    <font key="font" metaFont="system"/>
+                                    <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                                    <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                                </textFieldCell>
+                            </textField>
+                            <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cxh-K7-1eh">
+                                <rect key="frame" x="327" y="13" width="59" height="32"/>
+                                <buttonCell key="cell" type="push" title="OK" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="VN1-A3-RIh">
+                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                    <font key="font" metaFont="system"/>
+                                    <string key="keyEquivalent" base64-UTF8="YES">
+DQ
+</string>
+                                </buttonCell>
+                                <connections>
+                                    <action selector="cancelPressed:" target="-2" id="JTp-N4-Tb8"/>
+                                </connections>
+                            </button>
+                        </subviews>
+                        <constraints>
+                            <constraint firstItem="G1N-th-ZtP" firstAttribute="centerX" secondItem="ty1-sj-tT6" secondAttribute="centerX" id="16p-wW-bMc"/>
+                            <constraint firstItem="G1N-th-ZtP" firstAttribute="centerY" secondItem="ty1-sj-tT6" secondAttribute="centerY" constant="-22.5" id="231-sh-LDp"/>
+                            <constraint firstAttribute="trailing" secondItem="cxh-K7-1eh" secondAttribute="trailing" id="OrO-VW-3Xw"/>
+                            <constraint firstAttribute="bottom" secondItem="cxh-K7-1eh" secondAttribute="bottom" constant="20" id="tLl-Ru-JDw"/>
+                            <constraint firstItem="cxh-K7-1eh" firstAttribute="width" secondItem="ty1-sj-tT6" secondAttribute="height" multiplier="47:171" constant="5.4970760233918128" id="xxl-WJ-uWd"/>
+                        </constraints>
+                    </customView>
+                    <customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="srJ-1d-Sbs">
+                        <rect key="frame" x="15" y="0.0" width="380" height="151"/>
+                        <subviews>
+                            <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="I5i-KQ-7yI">
+                                <rect key="frame" x="327" y="13" width="59" height="32"/>
+                                <buttonCell key="cell" type="push" title="OK" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="dfD-AK-f3R">
+                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                    <font key="font" metaFont="system"/>
+                                    <string key="keyEquivalent" base64-UTF8="YES">
+DQ
+</string>
+                                </buttonCell>
+                                <connections>
+                                    <action selector="cancelPressed:" target="-2" id="NWs-SH-M68"/>
+                                </connections>
+                            </button>
+                            <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="M0M-Fg-Znl">
+                                <rect key="frame" x="-2" y="44" width="384" height="107"/>
+                                <constraints>
+                                    <constraint firstAttribute="height" constant="107" id="egH-qZ-wBG"/>
+                                    <constraint firstAttribute="width" constant="380" id="lCL-W1-aOP"/>
+                                </constraints>
+                                <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="left" placeholderString="" id="ezj-X9-NQd">
+                                    <font key="font" metaFont="system"/>
+                                    <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                                    <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                                </textFieldCell>
+                            </textField>
+                        </subviews>
+                        <constraints>
+                            <constraint firstItem="I5i-KQ-7yI" firstAttribute="width" secondItem="srJ-1d-Sbs" secondAttribute="height" multiplier="47:171" constant="5.4970760233918128" id="1kj-gX-F60"/>
+                            <constraint firstAttribute="trailing" secondItem="I5i-KQ-7yI" secondAttribute="trailing" id="L4m-3f-iAH"/>
+                            <constraint firstAttribute="bottom" secondItem="I5i-KQ-7yI" secondAttribute="bottom" constant="20" id="OA3-eH-jPg"/>
+                        </constraints>
+                    </customView>
                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="AGJ-1n-ZWv">
-                        <rect key="frame" x="15" y="15" width="380" height="166"/>
+                        <rect key="frame" x="15" y="0.0" width="380" height="161"/>
                         <subviews>
                             <customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Ovf-4O-7LZ" customClass="ITProgressIndicator">
-                                <rect key="frame" x="155" y="48" width="70" height="70"/>
+                                <rect key="frame" x="155" y="46" width="70" height="70"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="70" id="CYq-9V-MRO"/>
                                     <constraint firstAttribute="height" constant="70" id="oZI-2d-W12"/>
@@ -41,24 +109,24 @@
                             </customView>
                         </subviews>
                         <constraints>
-                            <constraint firstItem="Ovf-4O-7LZ" firstAttribute="centerY" secondItem="AGJ-1n-ZWv" secondAttribute="centerY" id="4ka-be-3Bb"/>
-                            <constraint firstItem="Ovf-4O-7LZ" firstAttribute="width" secondItem="AGJ-1n-ZWv" secondAttribute="height" multiplier="35:83" id="Ntl-ue-3m3"/>
+                            <constraint firstItem="Ovf-4O-7LZ" firstAttribute="centerY" secondItem="AGJ-1n-ZWv" secondAttribute="centerY" constant="-0.5" id="4ka-be-3Bb"/>
+                            <constraint firstItem="Ovf-4O-7LZ" firstAttribute="width" secondItem="AGJ-1n-ZWv" secondAttribute="height" multiplier="35:83" constant="2.1084337349397515" id="Ntl-ue-3m3"/>
                             <constraint firstItem="Ovf-4O-7LZ" firstAttribute="centerX" secondItem="AGJ-1n-ZWv" secondAttribute="centerX" id="teu-Ra-LR8"/>
                         </constraints>
                     </customView>
                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="xUT-yB-g8Q">
-                        <rect key="frame" x="15" y="10" width="380" height="171"/>
+                        <rect key="frame" x="15" y="0.0" width="380" height="151"/>
                         <subviews>
                             <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Bcr-Pl-Fz9">
-                                <rect key="frame" x="45" y="39" width="63" height="17"/>
+                                <rect key="frame" x="50" y="68" width="63" height="17"/>
                                 <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Password" id="vwh-K9-3O9">
                                     <font key="font" metaFont="system"/>
                                     <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                     <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                                 </textFieldCell>
                             </textField>
-                            <secureTextField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="vej-Z8-dOm">
-                                <rect key="frame" x="113" y="36" width="210" height="22"/>
+                            <secureTextField verticalHuggingPriority="750" ambiguous="YES" translatesAutoresizingMaskIntoConstraints="NO" id="vej-Z8-dOm">
+                                <rect key="frame" x="118" y="65" width="210" height="22"/>
                                 <secureTextFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" borderStyle="bezel" placeholderString="Password..." drawsBackground="YES" usesSingleLineMode="YES" id="xqz-Uz-hqU">
                                     <font key="font" metaFont="system"/>
                                     <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
@@ -81,15 +149,18 @@
                                 </connections>
                             </secureTextField>
                             <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="YR8-e7-f8B">
-                                <rect key="frame" x="45" y="142" width="280" height="17"/>
-                                <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="Adding new device" id="wmv-sA-Mlh">
+                                <rect key="frame" x="18" y="126" width="231" height="17"/>
+                                <constraints>
+                                    <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="227" id="6Fn-hi-Ji3"/>
+                                </constraints>
+                                <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="left" title="Link another device to this account" id="wmv-sA-Mlh">
                                     <font key="font" metaFont="systemBold"/>
                                     <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                     <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                                 </textFieldCell>
                             </textField>
                             <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="oXB-Be-LaB">
-                                <rect key="frame" x="327" y="-7" width="59" height="32"/>
+                                <rect key="frame" x="327" y="13" width="59" height="32"/>
                                 <buttonCell key="cell" type="push" title="OK" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="rW5-Il-5YD">
                                     <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                     <font key="font" metaFont="system"/>
@@ -103,19 +174,18 @@
                                 </connections>
                             </button>
                             <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="Qx0-KE-jEl">
-                                <rect key="frame" x="18" y="66" width="344" height="68"/>
+                                <rect key="frame" x="18" y="104" width="344" height="14"/>
                                 <constraints>
-                                    <constraint firstAttribute="height" constant="68" id="g34-vr-Zas"/>
+                                    <constraint firstAttribute="height" constant="14" id="g34-vr-Zas"/>
                                 </constraints>
-                                <textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="justified" id="859-10-HEb">
-                                    <font key="font" metaFont="system"/>
-                                    <string key="title">To add a new device to your Ring account, you export your account on the Ring. This will generate a pin that must be entered on your new device within 5 minutes of its generation.</string>
+                                <textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="justified" title="Please provide your Ring account password to start" id="859-10-HEb">
+                                    <font key="font" metaFont="system" size="11"/>
                                     <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
                                     <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                                 </textFieldCell>
                             </textField>
                             <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Yf1-T3-fOf">
-                                <rect key="frame" x="237" y="-7" width="82" height="32"/>
+                                <rect key="frame" x="245" y="13" width="82" height="32"/>
                                 <buttonCell key="cell" type="push" title="Cancel" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="cSU-aD-OwX">
                                     <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
                                     <font key="font" metaFont="system"/>
@@ -129,93 +199,26 @@
                             </button>
                         </subviews>
                         <constraints>
-                            <constraint firstItem="vej-Z8-dOm" firstAttribute="top" secondItem="Qx0-KE-jEl" secondAttribute="bottom" constant="8" id="12Q-Te-DMO"/>
-                            <constraint firstItem="YR8-e7-f8B" firstAttribute="leading" secondItem="xUT-yB-g8Q" secondAttribute="leading" constant="47" id="86W-iT-c6E"/>
-                            <constraint firstItem="YR8-e7-f8B" firstAttribute="trailing" secondItem="vej-Z8-dOm" secondAttribute="trailing" id="97f-vZ-ehW"/>
+                            <constraint firstItem="YR8-e7-f8B" firstAttribute="leading" secondItem="xUT-yB-g8Q" secondAttribute="leading" constant="20" id="86W-iT-c6E"/>
                             <constraint firstAttribute="trailing" secondItem="Qx0-KE-jEl" secondAttribute="trailing" constant="20" id="FV8-cW-4Ua"/>
                             <constraint firstItem="Qx0-KE-jEl" firstAttribute="leading" secondItem="xUT-yB-g8Q" secondAttribute="leading" constant="20" id="GL9-b9-rHs"/>
-                            <constraint firstItem="oXB-Be-LaB" firstAttribute="leading" secondItem="Yf1-T3-fOf" secondAttribute="trailing" constant="20" id="Ghk-zq-b9T"/>
                             <constraint firstItem="Bcr-Pl-Fz9" firstAttribute="baseline" secondItem="vej-Z8-dOm" secondAttribute="baseline" id="MM1-gt-2Ln"/>
-                            <constraint firstItem="Qx0-KE-jEl" firstAttribute="top" secondItem="YR8-e7-f8B" secondAttribute="bottom" constant="8" id="OPG-g5-b8f"/>
-                            <constraint firstItem="YR8-e7-f8B" firstAttribute="top" secondItem="xUT-yB-g8Q" secondAttribute="top" constant="12" id="T0q-sr-B1c"/>
+                            <constraint firstItem="YR8-e7-f8B" firstAttribute="top" secondItem="xUT-yB-g8Q" secondAttribute="top" constant="8" id="T0q-sr-B1c"/>
+                            <constraint firstItem="oXB-Be-LaB" firstAttribute="leading" secondItem="Yf1-T3-fOf" secondAttribute="trailing" constant="12" id="ev5-mb-dg5"/>
                             <constraint firstItem="vej-Z8-dOm" firstAttribute="leading" secondItem="Bcr-Pl-Fz9" secondAttribute="trailing" constant="7" id="ibU-NT-KTl"/>
-                            <constraint firstAttribute="bottom" secondItem="Yf1-T3-fOf" secondAttribute="bottom" id="kKt-h2-PSf"/>
-                            <constraint firstItem="Bcr-Pl-Fz9" firstAttribute="top" secondItem="Qx0-KE-jEl" secondAttribute="bottom" constant="10" id="md2-cC-e45"/>
+                            <constraint firstAttribute="bottom" secondItem="Yf1-T3-fOf" secondAttribute="bottom" constant="20" id="kKt-h2-PSf"/>
+                            <constraint firstItem="Bcr-Pl-Fz9" firstAttribute="top" secondItem="Qx0-KE-jEl" secondAttribute="bottom" constant="19" id="md2-cC-e45"/>
                             <constraint firstAttribute="trailing" secondItem="oXB-Be-LaB" secondAttribute="trailing" id="nc0-bc-HZy"/>
-                            <constraint firstItem="Qx0-KE-jEl" firstAttribute="top" secondItem="YR8-e7-f8B" secondAttribute="bottom" constant="8" symbolic="YES" id="sQ9-yl-Dxe"/>
-                            <constraint firstAttribute="trailing" secondItem="YR8-e7-f8B" secondAttribute="trailing" constant="57" id="slS-SE-ulf"/>
-                            <constraint firstAttribute="bottom" secondItem="oXB-Be-LaB" secondAttribute="bottom" id="upQ-xH-MIe"/>
-                            <constraint firstItem="YR8-e7-f8B" firstAttribute="leading" secondItem="Bcr-Pl-Fz9" secondAttribute="leading" id="wF5-CT-zPE"/>
-                        </constraints>
-                    </customView>
-                    <customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="ty1-sj-tT6">
-                        <rect key="frame" x="15" y="10" width="380" height="171"/>
-                        <subviews>
-                            <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="G1N-th-ZtP">
-                                <rect key="frame" x="-2" y="0.0" width="384" height="132"/>
-                                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                                <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="left" placeholderString="error label" id="e7n-Ev-bK7">
-                                    <font key="font" metaFont="system"/>
-                                    <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
-                                    <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
-                                </textFieldCell>
-                            </textField>
-                            <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cxh-K7-1eh">
-                                <rect key="frame" x="327" y="-7" width="59" height="32"/>
-                                <buttonCell key="cell" type="push" title="OK" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="VN1-A3-RIh">
-                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                    <font key="font" metaFont="system"/>
-                                    <string key="keyEquivalent" base64-UTF8="YES">
-DQ
-</string>
-                                </buttonCell>
-                                <connections>
-                                    <action selector="cancelPressed:" target="-2" id="JTp-N4-Tb8"/>
-                                </connections>
-                            </button>
-                        </subviews>
-                        <constraints>
-                            <constraint firstAttribute="trailing" secondItem="cxh-K7-1eh" secondAttribute="trailing" id="OrO-VW-3Xw"/>
-                            <constraint firstAttribute="bottom" secondItem="cxh-K7-1eh" secondAttribute="bottom" id="tLl-Ru-JDw"/>
-                            <constraint firstItem="cxh-K7-1eh" firstAttribute="width" secondItem="ty1-sj-tT6" secondAttribute="height" multiplier="47:171" id="xxl-WJ-uWd"/>
-                        </constraints>
-                    </customView>
-                    <customView hidden="YES" translatesAutoresizingMaskIntoConstraints="NO" id="srJ-1d-Sbs">
-                        <rect key="frame" x="15" y="10" width="380" height="171"/>
-                        <subviews>
-                            <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="M0M-Fg-Znl">
-                                <rect key="frame" x="-2" y="0.0" width="384" height="132"/>
-                                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
-                                <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="left" placeholderString="finish label" id="ezj-X9-NQd">
-                                    <font key="font" metaFont="system"/>
-                                    <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
-                                    <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
-                                </textFieldCell>
-                            </textField>
-                            <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="I5i-KQ-7yI">
-                                <rect key="frame" x="327" y="-7" width="59" height="32"/>
-                                <buttonCell key="cell" type="push" title="OK" bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="dfD-AK-f3R">
-                                    <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                    <font key="font" metaFont="system"/>
-                                    <string key="keyEquivalent" base64-UTF8="YES">
-DQ
-</string>
-                                </buttonCell>
-                                <connections>
-                                    <action selector="cancelPressed:" target="-2" id="NWs-SH-M68"/>
-                                </connections>
-                            </button>
-                        </subviews>
-                        <constraints>
-                            <constraint firstItem="I5i-KQ-7yI" firstAttribute="width" secondItem="srJ-1d-Sbs" secondAttribute="height" multiplier="47:171" id="1kj-gX-F60"/>
-                            <constraint firstAttribute="trailing" secondItem="I5i-KQ-7yI" secondAttribute="trailing" id="L4m-3f-iAH"/>
-                            <constraint firstAttribute="bottom" secondItem="I5i-KQ-7yI" secondAttribute="bottom" id="OA3-eH-jPg"/>
+                            <constraint firstItem="Qx0-KE-jEl" firstAttribute="top" secondItem="YR8-e7-f8B" secondAttribute="bottom" constant="8" id="sQ9-yl-Dxe"/>
+                            <constraint firstAttribute="bottom" secondItem="oXB-Be-LaB" secondAttribute="bottom" constant="20" id="upQ-xH-MIe"/>
+                            <constraint firstItem="YR8-e7-f8B" firstAttribute="leading" secondItem="Bcr-Pl-Fz9" secondAttribute="leading" constant="-32" id="wF5-CT-zPE"/>
                         </constraints>
                     </customView>
                 </subviews>
                 <constraints>
                     <constraint firstAttribute="trailing" secondItem="xUT-yB-g8Q" secondAttribute="trailing" constant="15" id="0cz-Qg-8O3"/>
-                    <constraint firstAttribute="bottom" secondItem="ty1-sj-tT6" secondAttribute="bottom" constant="10" id="1bi-Qk-WJf"/>
+                    <constraint firstAttribute="bottom" secondItem="ty1-sj-tT6" secondAttribute="bottom" id="1bi-Qk-WJf"/>
+                    <constraint firstItem="M0M-Fg-Znl" firstAttribute="top" secondItem="EiT-Mj-1SZ" secondAttribute="top" constant="10" id="7Rm-Mq-9lm"/>
                     <constraint firstItem="xUT-yB-g8Q" firstAttribute="top" secondItem="EiT-Mj-1SZ" secondAttribute="top" constant="10" id="80V-3H-yhe"/>
                     <constraint firstItem="ty1-sj-tT6" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="15" id="JfP-nv-HzG"/>
                     <constraint firstItem="srJ-1d-Sbs" firstAttribute="leading" secondItem="xUT-yB-g8Q" secondAttribute="leading" id="LX2-ln-cMG"/>
@@ -224,17 +227,19 @@
                     <constraint firstItem="AGJ-1n-ZWv" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="15" id="fQD-sb-Ef1"/>
                     <constraint firstItem="xUT-yB-g8Q" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="15" id="hyR-9O-NC2"/>
                     <constraint firstAttribute="trailing" secondItem="ty1-sj-tT6" secondAttribute="trailing" constant="15" id="kMD-cN-UU3"/>
-                    <constraint firstAttribute="bottom" secondItem="xUT-yB-g8Q" secondAttribute="bottom" constant="10" id="p1f-f1-8dd"/>
+                    <constraint firstAttribute="trailing" secondItem="M0M-Fg-Znl" secondAttribute="trailing" constant="15" id="nhW-2W-aOa"/>
+                    <constraint firstAttribute="bottom" secondItem="xUT-yB-g8Q" secondAttribute="bottom" id="p1f-f1-8dd"/>
                     <constraint firstAttribute="trailing" secondItem="AGJ-1n-ZWv" secondAttribute="trailing" constant="15" id="pRc-7V-4dD"/>
                     <constraint firstItem="srJ-1d-Sbs" firstAttribute="top" secondItem="xUT-yB-g8Q" secondAttribute="top" id="uGQ-Kt-GUW"/>
-                    <constraint firstItem="AGJ-1n-ZWv" firstAttribute="top" secondItem="EiT-Mj-1SZ" secondAttribute="top" constant="10" id="xBv-N5-u4V"/>
-                    <constraint firstAttribute="bottom" secondItem="AGJ-1n-ZWv" secondAttribute="bottom" constant="15" id="xtD-fH-ddM"/>
+                    <constraint firstItem="AGJ-1n-ZWv" firstAttribute="top" secondItem="EiT-Mj-1SZ" secondAttribute="top" id="xBv-N5-u4V"/>
+                    <constraint firstAttribute="bottom" secondItem="AGJ-1n-ZWv" secondAttribute="bottom" id="xtD-fH-ddM"/>
+                    <constraint firstItem="M0M-Fg-Znl" firstAttribute="leading" secondItem="EiT-Mj-1SZ" secondAttribute="leading" constant="15" id="xze-0s-FPH"/>
                 </constraints>
             </view>
             <connections>
                 <outlet property="delegate" destination="-2" id="3wn-SC-48D"/>
             </connections>
-            <point key="canvasLocation" x="-420" y="-196.5"/>
+            <point key="canvasLocation" x="-420" y="-193.5"/>
         </window>
         <userDefaultsController representsSharedInstance="YES" id="2A5-Q9-edp"/>
     </objects>
diff --git a/ui/Base.lproj/RestoreAccountWindow.strings b/ui/Base.lproj/RestoreAccountWindow.strings
new file mode 100644
index 0000000..5a134e2
--- /dev/null
+++ b/ui/Base.lproj/RestoreAccountWindow.strings
@@ -0,0 +1,39 @@
+
+/* Class = "CocoaBindingsConnection"; ibShadowedIsNilPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+"5cX-yS-4Sl.ibShadowedIsNilPlaceholder" = "Password...";
+
+/* Class = "CocoaBindingsConnection"; ibShadowedMultipleValuesPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+"5cX-yS-4Sl.ibShadowedMultipleValuesPlaceholder" = "Password...";
+
+/* Class = "CocoaBindingsConnection"; ibShadowedNoSelectionPlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+"5cX-yS-4Sl.ibShadowedNoSelectionPlaceholder" = "Password...";
+
+/* Class = "CocoaBindingsConnection"; ibShadowedNotApplicablePlaceholder = "Password..."; ObjectID = "5cX-yS-4Sl"; */
+"5cX-yS-4Sl.ibShadowedNotApplicablePlaceholder" = "Password...";
+
+/* Class = "NSTextFieldCell"; title = "Where"; ObjectID = "9h8-GU-av4"; */
+"9h8-GU-av4.title" = "Where";
+
+/* Class = "NSTextFieldCell"; title = "Restore a local copy of your account. You need to enter the password you used to secure this archive."; ObjectID = "KYZ-TW-44Y"; */
+"KYZ-TW-44Y.title" = "Restore a local copy of your account. You need to enter the password you used to secure this archive.";
+
+/* Class = "NSWindow"; title = "Window"; ObjectID = "QvC-M9-y7g"; */
+"QvC-M9-y7g.title" = "Window";
+
+/* Class = "NSButtonCell"; title = "OK"; ObjectID = "VN1-A3-RIh"; */
+"VN1-A3-RIh.title" = "OK";
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "cSU-aD-OwX"; */
+"cSU-aD-OwX.title" = "Cancel";
+
+/* Class = "NSTextFieldCell"; title = "An error occured during the restoration"; ObjectID = "e7n-Ev-bK7"; */
+"e7n-Ev-bK7.title" = "An error occured during the restoration";
+
+/* Class = "NSButtonCell"; title = "OK"; ObjectID = "rW5-Il-5YD"; */
+"rW5-Il-5YD.title" = "OK";
+
+/* Class = "NSTextFieldCell"; title = "Password"; ObjectID = "vwh-K9-3O9"; */
+"vwh-K9-3O9.title" = "Password";
+
+/* Class = "NSSecureTextFieldCell"; placeholderString = "Password..."; ObjectID = "xqz-Uz-hqU"; */
+"xqz-Uz-hqU.placeholderString" = "Password...";
diff --git a/ui/Base.lproj/RingWizard.strings b/ui/Base.lproj/RingWizard.strings
index 6ecdc26..71fa796 100644
--- a/ui/Base.lproj/RingWizard.strings
+++ b/ui/Base.lproj/RingWizard.strings
@@ -1,36 +1,3 @@
 
-/* Class = "NSTextFieldCell"; title = "Choose your own certificates"; ObjectID = "4ls-Yq-mDp"; */
-"4ls-Yq-mDp.title" = "Choose your own certificates";
-
-/* Class = "NSTextFieldCell"; placeholderString = "'Unknown' if empty..."; ObjectID = "5Z7-Wi-530"; */
-"5Z7-Wi-530.placeholderString" = "'Unknown' if empty...";
-
-/* Class = "NSTextFieldCell"; title = "Advanced security (optional)"; ObjectID = "Gnn-K9-PTH"; */
-"Gnn-K9-PTH.title" = "Advanced security (optional)";
-
-/* Class = "NSSecureTextFieldCell"; placeholderString = "Password..."; ObjectID = "Hsc-U9-2RV"; */
-"Hsc-U9-2RV.placeholderString" = "Password...";
-
-/* Class = "NSButtonCell"; title = "Share"; ObjectID = "Kwr-LJ-K8C"; */
-"Kwr-LJ-K8C.title" = "Share";
-
-/* Class = "NSTextFieldCell"; title = "Certificate Authority list"; ObjectID = "SpA-zX-ytE"; */
-"SpA-zX-ytE.title" = "Certificate Authority list";
-
-/* Class = "NSTextFieldCell"; title = "User Certificate"; ObjectID = "V1U-ew-Ge2"; */
-"V1U-ew-Ge2.title" = "User Certificate";
-
-/* Class = "NSButton"; ibShadowedToolTip = "Choose custom certificates"; ObjectID = "aZl-bU-psB"; */
-"aZl-bU-psB.ibShadowedToolTip" = "Choose custom certificates";
-
-/* Class = "NSTextFieldCell"; title = "Choose your username"; ObjectID = "meL-TZ-VQO"; */
-"meL-TZ-VQO.title" = "Choose your username";
-
-/* Class = "NSTextFieldCell"; title = "Private key"; ObjectID = "poP-JD-MDa"; */
-"poP-JD-MDa.title" = "Private key";
-
-/* Class = "NSTextFieldCell"; title = "Welcome to Ring"; ObjectID = "uqu-uh-Wao"; */
-"uqu-uh-Wao.title" = "Welcome to Ring";
-
-/* Class = "NSButtonCell"; title = "Next"; ObjectID = "wDw-Ut-RUm"; */
-"wDw-Ut-RUm.title" = "Next";
+/* Class = "NSTextFieldCell"; title = "Welcome to Ring"; ObjectID = "2mM-yx-BfM"; */
+"2mM-yx-BfM.title" = "Welcome to Ring";
diff --git a/ui/Base.lproj/RingWizard.xib b/ui/Base.lproj/RingWizard.xib
index e1938c4..e399e27 100644
--- a/ui/Base.lproj/RingWizard.xib
+++ b/ui/Base.lproj/RingWizard.xib
@@ -6,25 +6,28 @@
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="RingWizardWC">
             <connections>
+                <outlet property="chooseActiontWC" destination="TGh-Qf-0hi" id="Q7C-b1-FN1"/>
                 <outlet property="container" destination="T98-k1-e6X" id="ucm-VA-quB"/>
+                <outlet property="linkAccountWC" destination="Hlf-uv-gt6" id="GFL-I8-wsd"/>
+                <outlet property="newAccountWC" destination="M2H-0Y-6UW" id="w3w-Wd-TvD"/>
                 <outlet property="window" destination="4LP-GX-BkH" id="Bgr-iZ-rif"/>
             </connections>
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <window allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" oneShot="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" animationBehavior="default" id="4LP-GX-BkH">
-            <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" resizable="YES" texturedBackground="YES"/>
-            <rect key="contentRect" x="599" y="440" width="509" height="179"/>
+            <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" texturedBackground="YES"/>
+            <rect key="contentRect" x="599" y="440" width="509" height="318"/>
             <rect key="screenRect" x="0.0" y="0.0" width="1440" height="877"/>
             <view key="contentView" id="Wgr-xH-z0G">
-                <rect key="frame" x="0.0" y="0.0" width="509" height="179"/>
+                <rect key="frame" x="0.0" y="0.0" width="509" height="318"/>
                 <autoresizingMask key="autoresizingMask"/>
                 <subviews>
                     <customView translatesAutoresizingMaskIntoConstraints="NO" id="9ok-Ga-Q8u" userLabel="header">
-                        <rect key="frame" x="0.0" y="134" width="509" height="45"/>
+                        <rect key="frame" x="0.0" y="258" width="509" height="60"/>
                         <subviews>
                             <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="EpY-Kl-fNa">
-                                <rect key="frame" x="113" y="8" width="229" height="36"/>
+                                <rect key="frame" x="113" y="12" width="229" height="36"/>
                                 <textFieldCell key="cell" controlSize="mini" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="Welcome to Ring" id="2mM-yx-BfM">
                                     <font key="font" metaFont="system" size="30"/>
                                     <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -32,24 +35,24 @@
                                 </textFieldCell>
                             </textField>
                             <imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="P7h-tj-klA">
-                                <rect key="frame" x="348" y="0.0" width="45" height="45"/>
+                                <rect key="frame" x="348" y="7" width="45" height="46"/>
                                 <constraints>
                                     <constraint firstAttribute="width" constant="45" id="XMY-BN-Ymg"/>
-                                    <constraint firstAttribute="height" constant="45" id="i8K-g8-EfQ"/>
+                                    <constraint firstAttribute="height" constant="46" id="i8K-g8-EfQ"/>
                                 </constraints>
-                                <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="FCFFD2E7-2FE4-4DA1-8E12-AA0B2702EF69" id="XSN-TP-V1z"/>
+                                <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="AFEB12E4-CFAC-4035-A92B-8ED00981BEF7" id="XSN-TP-V1z"/>
                             </imageView>
                         </subviews>
                         <constraints>
-                            <constraint firstItem="EpY-Kl-fNa" firstAttribute="top" secondItem="9ok-Ga-Q8u" secondAttribute="top" constant="1" id="DAz-Kg-Cak"/>
+                            <constraint firstItem="P7h-tj-klA" firstAttribute="centerY" secondItem="9ok-Ga-Q8u" secondAttribute="centerY" id="82u-TT-jdV"/>
                             <constraint firstItem="EpY-Kl-fNa" firstAttribute="leading" secondItem="9ok-Ga-Q8u" secondAttribute="leading" constant="115" id="Kv8-F4-uJL"/>
-                            <constraint firstItem="P7h-tj-klA" firstAttribute="top" secondItem="9ok-Ga-Q8u" secondAttribute="top" id="bDu-ca-izv"/>
-                            <constraint firstAttribute="height" constant="45" id="bnc-Ui-EBV"/>
+                            <constraint firstAttribute="height" constant="60" id="bnc-Ui-EBV"/>
                             <constraint firstItem="P7h-tj-klA" firstAttribute="leading" secondItem="EpY-Kl-fNa" secondAttribute="trailing" constant="8" symbolic="YES" id="ckf-Wb-pkP"/>
+                            <constraint firstItem="EpY-Kl-fNa" firstAttribute="centerY" secondItem="9ok-Ga-Q8u" secondAttribute="centerY" id="i1N-4g-yOy"/>
                         </constraints>
                     </customView>
                     <view translatesAutoresizingMaskIntoConstraints="NO" id="T98-k1-e6X">
-                        <rect key="frame" x="0.0" y="0.0" width="509" height="134"/>
+                        <rect key="frame" x="0.0" y="0.0" width="509" height="258"/>
                     </view>
                 </subviews>
                 <constraints>
@@ -65,11 +68,14 @@
             <connections>
                 <outlet property="delegate" destination="-2" id="cKX-Z2-yDq"/>
             </connections>
-            <point key="canvasLocation" x="447.5" y="-558.5"/>
+            <point key="canvasLocation" x="447.5" y="-489"/>
         </window>
+        <viewController nibName="RingWizardChoose" id="TGh-Qf-0hi" customClass="RingWizardChooseVC"/>
+        <viewController nibName="RingWizardLinkAccount" id="Hlf-uv-gt6" customClass="RingWizardLinkAccountVC"/>
+        <viewController nibName="RingWizardNewAccount" id="M2H-0Y-6UW" customClass="RingWizardNewAccountVC"/>
     </objects>
     <resources>
-        <image name="FCFFD2E7-2FE4-4DA1-8E12-AA0B2702EF69" width="92.160003662109375" height="85.919998168945312">
+        <image name="AFEB12E4-CFAC-4035-A92B-8ED00981BEF7" width="92.160003662109375" height="85.919998168945312">
             <mutableData key="keyedArchiveRepresentation">
 YnBsaXN0MDDUAQIDBAUGOjtYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoK0HCBEW
 GxwgISgrLjQ3VSRudWxs1AkKCwwNDg8QViRjbGFzc1xOU0ltYWdlRmxhZ3NWTlNSZXBzV05TQ29sb3KA
diff --git a/ui/Base.lproj/RingWizardChoose.strings b/ui/Base.lproj/RingWizardChoose.strings
new file mode 100644
index 0000000..a777133
--- /dev/null
+++ b/ui/Base.lproj/RingWizardChoose.strings
@@ -0,0 +1,9 @@
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "YJ3-7G-cU1"; */
+"YJ3-7G-cU1.title" = "Cancel";
+
+/* Class = "NSButtonCell"; title = "Link this device to an account"; ObjectID = "Z9K-mD-ucr"; */
+"Z9K-mD-ucr.title" = "Link this device to an account";
+
+/* Class = "NSButtonCell"; title = "New Ring account"; ObjectID = "k1T-a7-yZD"; */
+"k1T-a7-yZD.title" = "New Ring account";
diff --git a/ui/Base.lproj/RingWizardChoose.xib b/ui/Base.lproj/RingWizardChoose.xib
index 074154e..160a271 100644
--- a/ui/Base.lproj/RingWizardChoose.xib
+++ b/ui/Base.lproj/RingWizardChoose.xib
@@ -1,82 +1,71 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="10117" systemVersion="15G31" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11201"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="10117"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="RingWizardChooseVC">
             <connections>
-                <outlet property="view" destination="kwg-fS-3aI" id="C8q-qb-geg"/>
+                <outlet property="view" destination="uHQ-s7-X3y" id="1wM-Vd-wef"/>
             </connections>
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
-        <customView id="kwg-fS-3aI">
-            <rect key="frame" x="0.0" y="0.0" width="535" height="134"/>
+        <userDefaultsController representsSharedInstance="YES" id="ck0-Ru-0YG"/>
+        <view id="uHQ-s7-X3y">
+            <rect key="frame" x="0.0" y="0.0" width="525" height="138"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
             <subviews>
-                <view translatesAutoresizingMaskIntoConstraints="NO" id="uHQ-s7-X3y">
-                    <rect key="frame" x="5" y="5" width="525" height="109"/>
-                    <subviews>
-                        <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cpk-ql-oGP">
-                            <rect key="frame" x="163" y="30" width="198" height="29"/>
-                            <buttonCell key="cell" type="bevel" title="Link to existing Ring account" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="Z9K-mD-ucr">
-                                <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                <font key="font" metaFont="system"/>
-                            </buttonCell>
-                            <connections>
-                                <action selector="linkExistingRingAccount:" target="-2" id="q5v-67-9eC"/>
-                            </connections>
-                        </button>
-                        <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="pcF-lX-ex4">
-                            <rect key="frame" x="163" y="62" width="198" height="29"/>
-                            <buttonCell key="cell" type="bevel" title="New Ring account" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="k1T-a7-yZD">
-                                <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                <font key="font" metaFont="system"/>
-                            </buttonCell>
-                            <connections>
-                                <action selector="createRingAccount:" target="-2" id="Mij-SG-JWQ"/>
-                            </connections>
-                        </button>
-                        <button translatesAutoresizingMaskIntoConstraints="NO" id="UXp-us-Mbl">
-                            <rect key="frame" x="435" y="17" width="72" height="29"/>
-                            <constraints>
-                                <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="BJn-n9-or6"/>
-                            </constraints>
-                            <buttonCell key="cell" type="bevel" title="Cancel" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="YJ3-7G-cU1">
-                                <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                                <font key="font" metaFont="system"/>
-                            </buttonCell>
-                            <connections>
-                                <action selector="onCancel:" target="-2" id="VXk-Vg-8RL"/>
-                                <binding destination="-2" name="hidden" keyPath="self.isCancelable" id="BJD-kc-nuB">
-                                    <dictionary key="options">
-                                        <string key="NSValueTransformerName">NSNegateBoolean</string>
-                                    </dictionary>
-                                </binding>
-                            </connections>
-                        </button>
-                    </subviews>
+                <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="pcF-lX-ex4">
+                    <rect key="frame" x="160" y="96" width="205" height="29"/>
+                    <buttonCell key="cell" type="bevel" title="New Ring account" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="k1T-a7-yZD">
+                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                        <font key="font" metaFont="system"/>
+                    </buttonCell>
+                    <connections>
+                        <action selector="createRingAccount:" target="-2" id="Mij-SG-JWQ"/>
+                    </connections>
+                </button>
+                <button translatesAutoresizingMaskIntoConstraints="NO" id="UXp-us-Mbl">
+                    <rect key="frame" x="435" y="17" width="72" height="29"/>
                     <constraints>
-                        <constraint firstItem="cpk-ql-oGP" firstAttribute="top" secondItem="pcF-lX-ex4" secondAttribute="bottom" constant="8" id="5zS-8W-pRW"/>
-                        <constraint firstAttribute="trailing" secondItem="UXp-us-Mbl" secondAttribute="trailing" constant="20" id="A9P-tO-DO2"/>
-                        <constraint firstItem="pcF-lX-ex4" firstAttribute="trailing" secondItem="cpk-ql-oGP" secondAttribute="trailing" id="HN8-pn-yp6"/>
-                        <constraint firstItem="cpk-ql-oGP" firstAttribute="centerX" secondItem="uHQ-s7-X3y" secondAttribute="centerX" id="KMQ-q8-0Vy"/>
-                        <constraint firstAttribute="bottom" secondItem="UXp-us-Mbl" secondAttribute="bottom" constant="20" id="fJH-5w-ca6"/>
-                        <constraint firstItem="pcF-lX-ex4" firstAttribute="centerX" secondItem="uHQ-s7-X3y" secondAttribute="centerX" id="iq8-Px-R61"/>
-                        <constraint firstItem="pcF-lX-ex4" firstAttribute="leading" secondItem="cpk-ql-oGP" secondAttribute="leading" id="n6m-l1-sty"/>
-                        <constraint firstItem="pcF-lX-ex4" firstAttribute="top" secondItem="uHQ-s7-X3y" secondAttribute="top" constant="20" id="vhe-SJ-yfX"/>
+                        <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="BJn-n9-or6"/>
                     </constraints>
-                </view>
+                    <buttonCell key="cell" type="bevel" title="Cancel" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="YJ3-7G-cU1">
+                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                        <font key="font" metaFont="system"/>
+                    </buttonCell>
+                    <connections>
+                        <action selector="onCancel:" target="-2" id="VXk-Vg-8RL"/>
+                        <binding destination="-2" name="hidden" keyPath="self.isCancelable" id="BJD-kc-nuB">
+                            <dictionary key="options">
+                                <string key="NSValueTransformerName">NSNegateBoolean</string>
+                            </dictionary>
+                        </binding>
+                    </connections>
+                </button>
+                <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="cpk-ql-oGP">
+                    <rect key="frame" x="160" y="64" width="205" height="29"/>
+                    <buttonCell key="cell" type="bevel" title="Link this device to an account" bezelStyle="regularSquare" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="Z9K-mD-ucr">
+                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                        <font key="font" metaFont="system"/>
+                    </buttonCell>
+                    <connections>
+                        <action selector="linkExistingRingAccount:" target="-2" id="q5v-67-9eC"/>
+                    </connections>
+                </button>
             </subviews>
             <constraints>
-                <constraint firstAttribute="trailing" secondItem="uHQ-s7-X3y" secondAttribute="trailing" constant="5" id="2fY-ll-RLQ"/>
-                <constraint firstAttribute="bottom" secondItem="uHQ-s7-X3y" secondAttribute="bottom" constant="5" id="Sm2-ur-GGt"/>
-                <constraint firstItem="uHQ-s7-X3y" firstAttribute="leading" secondItem="kwg-fS-3aI" secondAttribute="leading" constant="5" id="Uek-aG-LYS"/>
-                <constraint firstItem="uHQ-s7-X3y" firstAttribute="top" secondItem="kwg-fS-3aI" secondAttribute="top" constant="20" id="UvI-iR-x3B"/>
+                <constraint firstItem="cpk-ql-oGP" firstAttribute="top" secondItem="pcF-lX-ex4" secondAttribute="bottom" constant="8" id="5zS-8W-pRW"/>
+                <constraint firstAttribute="bottom" secondItem="UXp-us-Mbl" secondAttribute="bottom" constant="20" id="AII-Gc-Vvg"/>
+                <constraint firstItem="pcF-lX-ex4" firstAttribute="trailing" secondItem="cpk-ql-oGP" secondAttribute="trailing" id="HN8-pn-yp6"/>
+                <constraint firstItem="cpk-ql-oGP" firstAttribute="centerX" secondItem="uHQ-s7-X3y" secondAttribute="centerX" id="KMQ-q8-0Vy"/>
+                <constraint firstAttribute="trailing" secondItem="UXp-us-Mbl" secondAttribute="trailing" constant="20" id="aKC-JI-SVx"/>
+                <constraint firstItem="pcF-lX-ex4" firstAttribute="centerX" secondItem="uHQ-s7-X3y" secondAttribute="centerX" id="iq8-Px-R61"/>
+                <constraint firstItem="pcF-lX-ex4" firstAttribute="leading" secondItem="cpk-ql-oGP" secondAttribute="leading" id="n6m-l1-sty"/>
+                <constraint firstItem="pcF-lX-ex4" firstAttribute="top" secondItem="uHQ-s7-X3y" secondAttribute="top" constant="15" id="v64-PJ-sTS"/>
             </constraints>
-            <point key="canvasLocation" x="485.5" y="-279"/>
-        </customView>
-        <userDefaultsController representsSharedInstance="YES" id="ck0-Ru-0YG"/>
+            <point key="canvasLocation" x="-14.5" y="49"/>
+        </view>
     </objects>
 </document>
diff --git a/ui/Base.lproj/RingWizardLinkAccount.strings b/ui/Base.lproj/RingWizardLinkAccount.strings
new file mode 100644
index 0000000..b1ee701
--- /dev/null
+++ b/ui/Base.lproj/RingWizardLinkAccount.strings
@@ -0,0 +1,27 @@
+
+/* Class = "NSTextFieldCell"; title = "Enter your pin"; ObjectID = "3ik-rY-Gig"; */
+"3ik-rY-Gig.title" = "Enter your pin";
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "4ev-TK-8Yt"; */
+"4ev-TK-8Yt.title" = "Cancel";
+
+/* Class = "NSButtonCell"; title = "Next"; ObjectID = "8b8-bt-eAj"; */
+"8b8-bt-eAj.title" = "Next";
+
+/* Class = "NSTextFieldCell"; title = "An error occured, please check your password and pin."; ObjectID = "DyG-SJ-U1Q"; */
+"DyG-SJ-U1Q.title" = "An error occured, please check your password and pin.";
+
+/* Class = "NSTextFieldCell"; title = "Just a moment..."; ObjectID = "M4C-GY-B6t"; */
+"M4C-GY-B6t.title" = "Just a moment...";
+
+/* Class = "NSTextFieldCell"; title = "Enter your Ring account password"; ObjectID = "U2K-fu-INc"; */
+"U2K-fu-INc.title" = "Enter your Ring account password";
+
+/* Class = "NSTextFieldCell"; title = "To link this device to another account, you first need to obtain a pin code. 
To generate the pin code, go to the account management setting of a previous device, choose the Ring Account to use and select \"Link another device to this account\". 
You will get the necessary pin to complete this form.
The Pin is only valid for 10 minutes."; ObjectID = "dJ0-Rk-Rqr"; */
+"dJ0-Rk-Rqr.title" = "To link this device to another account, you first need to obtain a pin code. 
To generate the pin code, go to the account management setting of a previous device, choose the Ring Account to use and select \"Link another device to this account\". 
You will get the necessary pin to complete this form.
The Pin is only valid for 10 minutes.";
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "t12-O0-kcf"; */
+"t12-O0-kcf.title" = "Cancel";
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "uhy-DE-TKw"; */
+"uhy-DE-TKw.title" = "Cancel";
diff --git a/ui/Base.lproj/RingWizardLinkAccount.xib b/ui/Base.lproj/RingWizardLinkAccount.xib
index f38c63e..af699ae 100644
--- a/ui/Base.lproj/RingWizardLinkAccount.xib
+++ b/ui/Base.lproj/RingWizardLinkAccount.xib
@@ -1,5 +1,5 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<?xml version="1.0" encoding="UTF-8"?>
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="16B2553a" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
         <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11201"/>
     </dependencies>
@@ -8,6 +8,7 @@
             <connections>
                 <outlet property="createButton" destination="xmI-fH-GpH" id="VnH-tA-YA2"/>
                 <outlet property="errorContainer" destination="B0P-LC-JmW" id="lKa-Nb-o79"/>
+                <outlet property="helpContainer" destination="VJx-c6-hvT" id="dQM-IP-fmp"/>
                 <outlet property="initialContainer" destination="jR6-WY-o19" id="zJs-xD-OjK"/>
                 <outlet property="loadingContainer" destination="PQA-fA-Rio" id="Vgf-yn-jFS"/>
                 <outlet property="passwordField" destination="VeW-tY-k3K" id="LH6-sz-3EY"/>
@@ -21,14 +22,14 @@
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <customView id="kG1-xB-0op">
-            <rect key="frame" x="0.0" y="0.0" width="350" height="203"/>
+            <rect key="frame" x="0.0" y="0.0" width="355" height="193"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
             <subviews>
                 <view translatesAutoresizingMaskIntoConstraints="NO" id="B0P-LC-JmW">
-                    <rect key="frame" x="0.0" y="0.0" width="350" height="203"/>
+                    <rect key="frame" x="0.0" y="0.0" width="355" height="193"/>
                     <subviews>
-                        <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" misplaced="YES" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Hwa-xK-TuM">
-                            <rect key="frame" x="-2" y="76" width="354" height="51"/>
+                        <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Hwa-xK-TuM">
+                            <rect key="frame" x="-2" y="88" width="359" height="17"/>
                             <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="An error occured, please check your password and pin." id="DyG-SJ-U1Q">
                                 <font key="font" metaFont="system"/>
                                 <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -36,7 +37,7 @@
                             </textFieldCell>
                         </textField>
                         <button translatesAutoresizingMaskIntoConstraints="NO" id="daZ-Bz-vsM">
-                            <rect key="frame" x="260" y="17" width="72" height="29"/>
+                            <rect key="frame" x="265" y="17" width="72" height="29"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="vNb-db-X99"/>
                             </constraints>
@@ -61,10 +62,10 @@
                     </constraints>
                 </view>
                 <view translatesAutoresizingMaskIntoConstraints="NO" id="PQA-fA-Rio">
-                    <rect key="frame" x="0.0" y="0.0" width="350" height="203"/>
+                    <rect key="frame" x="0.0" y="0.0" width="355" height="193"/>
                     <subviews>
                         <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="80Z-XU-adp">
-                            <rect key="frame" x="3" y="63" width="344" height="17"/>
+                            <rect key="frame" x="6" y="59" width="344" height="17"/>
                             <constraints>
                                 <constraint firstAttribute="width" constant="340" id="OcO-zL-LBK"/>
                             </constraints>
@@ -75,7 +76,7 @@
                             </textFieldCell>
                         </textField>
                         <button translatesAutoresizingMaskIntoConstraints="NO" id="moc-jn-6gS">
-                            <rect key="frame" x="260" y="17" width="72" height="29"/>
+                            <rect key="frame" x="265" y="17" width="72" height="29"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="p5l-CE-iab"/>
                             </constraints>
@@ -91,7 +92,7 @@
                             </connections>
                         </button>
                         <progressIndicator wantsLayer="YES" maxValue="100" indeterminate="YES" style="spinning" translatesAutoresizingMaskIntoConstraints="NO" id="uxb-PD-AaW">
-                            <rect key="frame" x="127" y="85" width="96" height="32"/>
+                            <rect key="frame" x="130" y="116" width="96" height="32"/>
                             <constraints>
                                 <constraint firstAttribute="width" constant="96" id="QHN-gm-GxV"/>
                             </constraints>
@@ -100,17 +101,17 @@
                     <constraints>
                         <constraint firstItem="uxb-PD-AaW" firstAttribute="centerX" secondItem="PQA-fA-Rio" secondAttribute="centerX" id="5a0-wi-oYZ"/>
                         <constraint firstAttribute="bottom" secondItem="moc-jn-6gS" secondAttribute="bottom" constant="20" id="ENl-ng-a12"/>
-                        <constraint firstItem="uxb-PD-AaW" firstAttribute="centerY" secondItem="PQA-fA-Rio" secondAttribute="centerY" id="Reg-FH-UrX"/>
+                        <constraint firstItem="uxb-PD-AaW" firstAttribute="centerY" secondItem="PQA-fA-Rio" secondAttribute="centerY" constant="-35.5" id="Reg-FH-UrX"/>
                         <constraint firstItem="uxb-PD-AaW" firstAttribute="centerX" secondItem="80Z-XU-adp" secondAttribute="centerX" id="ZiA-sz-Pnl"/>
-                        <constraint firstItem="80Z-XU-adp" firstAttribute="top" secondItem="uxb-PD-AaW" secondAttribute="bottom" constant="5" id="a6L-fb-blD"/>
+                        <constraint firstItem="80Z-XU-adp" firstAttribute="top" secondItem="uxb-PD-AaW" secondAttribute="bottom" constant="40" id="a6L-fb-blD"/>
                         <constraint firstAttribute="trailing" secondItem="moc-jn-6gS" secondAttribute="trailing" constant="20" id="fK2-ny-217"/>
                     </constraints>
                 </view>
                 <view translatesAutoresizingMaskIntoConstraints="NO" id="jR6-WY-o19">
-                    <rect key="frame" x="0.0" y="0.0" width="350" height="203"/>
+                    <rect key="frame" x="0.0" y="0.0" width="355" height="193"/>
                     <subviews>
                         <button translatesAutoresizingMaskIntoConstraints="NO" id="xmI-fH-GpH">
-                            <rect key="frame" x="260" y="17" width="72" height="29"/>
+                            <rect key="frame" x="265" y="17" width="72" height="29"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="Tl8-9U-xp5"/>
                             </constraints>
@@ -135,7 +136,7 @@
                             </connections>
                         </button>
                         <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="BFR-6z-UlF">
-                            <rect key="frame" x="75" y="134" width="200" height="22"/>
+                            <rect key="frame" x="78" y="124" width="200" height="22"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="ql3-eF-0Q3"/>
                             </constraints>
@@ -154,7 +155,7 @@
                             </connections>
                         </textField>
                         <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="VeW-tY-k3K" customClass="NSSecureTextField">
-                            <rect key="frame" x="75" y="75" width="200" height="22"/>
+                            <rect key="frame" x="78" y="65" width="200" height="22"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="EQr-I3-bWf"/>
                                 <constraint firstAttribute="width" constant="200" id="XLF-Bw-hQ5"/>
@@ -174,9 +175,9 @@
                             </connections>
                         </textField>
                         <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Nms-13-N3F">
-                            <rect key="frame" x="3" y="166" width="344" height="17"/>
+                            <rect key="frame" x="76" y="156" width="198" height="17"/>
                             <constraints>
-                                <constraint firstAttribute="width" constant="340" id="dTT-oe-Tym"/>
+                                <constraint firstAttribute="width" constant="194" id="dTT-oe-Tym"/>
                             </constraints>
                             <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Enter your pin" id="3ik-rY-Gig">
                                 <font key="font" metaFont="system"/>
@@ -184,19 +185,8 @@
                                 <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                             </textFieldCell>
                         </textField>
-                        <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="AGs-mP-zJd">
-                            <rect key="frame" x="3" y="107" width="344" height="17"/>
-                            <constraints>
-                                <constraint firstAttribute="width" constant="340" id="3tj-c0-BEv"/>
-                            </constraints>
-                            <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Enter your password" id="U2K-fu-INc">
-                                <font key="font" metaFont="system"/>
-                                <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
-                                <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
-                            </textFieldCell>
-                        </textField>
                         <button translatesAutoresizingMaskIntoConstraints="NO" id="XWj-I6-wlG">
-                            <rect key="frame" x="182" y="17" width="72" height="29"/>
+                            <rect key="frame" x="187" y="17" width="72" height="29"/>
                             <constraints>
                                 <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="gkI-h7-faT"/>
                             </constraints>
@@ -211,17 +201,40 @@
                                 <action selector="dismissViewWithError:" target="-2" id="TQx-1Z-tFa"/>
                             </connections>
                         </button>
+                        <button horizontalHuggingPriority="750" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="V74-wv-Su2">
+                            <rect key="frame" x="255" y="151" width="25" height="25"/>
+                            <buttonCell key="cell" type="help" bezelStyle="helpButton" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="5do-zL-T0O">
+                                <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                <font key="font" metaFont="system"/>
+                                <connections>
+                                    <action selector="showHelp:" target="-2" id="uXe-rC-7LO"/>
+                                </connections>
+                            </buttonCell>
+                        </button>
+                        <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" misplaced="YES" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="AGs-mP-zJd">
+                            <rect key="frame" x="62" y="95" width="227" height="19"/>
+                            <constraints>
+                                <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="3tj-c0-BEv"/>
+                            </constraints>
+                            <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Enter your Ring account password" id="U2K-fu-INc">
+                                <font key="font" metaFont="system"/>
+                                <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                                <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                            </textFieldCell>
+                        </textField>
                     </subviews>
                     <constraints>
                         <constraint firstItem="BFR-6z-UlF" firstAttribute="top" secondItem="Nms-13-N3F" secondAttribute="bottom" constant="10" id="9rR-Bz-IV5"/>
                         <constraint firstItem="BFR-6z-UlF" firstAttribute="centerX" secondItem="jR6-WY-o19" secondAttribute="centerX" id="B1d-wB-vV0"/>
+                        <constraint firstItem="V74-wv-Su2" firstAttribute="centerY" secondItem="Nms-13-N3F" secondAttribute="centerY" id="Je7-2h-AOY"/>
                         <constraint firstItem="XWj-I6-wlG" firstAttribute="baseline" secondItem="xmI-fH-GpH" secondAttribute="baseline" id="Mew-0a-C7j"/>
                         <constraint firstItem="AGs-mP-zJd" firstAttribute="top" secondItem="BFR-6z-UlF" secondAttribute="bottom" constant="10" id="Mlp-x7-UId"/>
+                        <constraint firstItem="V74-wv-Su2" firstAttribute="leading" secondItem="Nms-13-N3F" secondAttribute="trailing" constant="-15" id="NZC-gz-G7l"/>
                         <constraint firstAttribute="bottom" secondItem="xmI-fH-GpH" secondAttribute="bottom" constant="20" id="ONV-r0-v26"/>
                         <constraint firstItem="Nms-13-N3F" firstAttribute="top" secondItem="jR6-WY-o19" secondAttribute="top" constant="20" id="PM0-u5-7XA"/>
                         <constraint firstItem="xmI-fH-GpH" firstAttribute="leading" secondItem="XWj-I6-wlG" secondAttribute="trailing" constant="10" id="Pmj-x8-RJe"/>
                         <constraint firstItem="VeW-tY-k3K" firstAttribute="top" secondItem="AGs-mP-zJd" secondAttribute="bottom" constant="10" id="Qo1-zb-2YI"/>
-                        <constraint firstItem="Nms-13-N3F" firstAttribute="centerX" secondItem="BFR-6z-UlF" secondAttribute="centerX" id="Wn8-Vg-MAJ"/>
+                        <constraint firstItem="Nms-13-N3F" firstAttribute="centerX" secondItem="BFR-6z-UlF" secondAttribute="centerX" constant="-3" id="Wn8-Vg-MAJ"/>
                         <constraint firstItem="AGs-mP-zJd" firstAttribute="centerX" secondItem="jR6-WY-o19" secondAttribute="centerX" id="cPy-QT-Sue"/>
                         <constraint firstAttribute="trailing" secondItem="xmI-fH-GpH" secondAttribute="trailing" constant="20" id="kub-6B-85y"/>
                         <constraint firstItem="VeW-tY-k3K" firstAttribute="leading" secondItem="BFR-6z-UlF" secondAttribute="leading" id="qVJ-Qu-dRy"/>
@@ -243,8 +256,45 @@
                 <constraint firstItem="jR6-WY-o19" firstAttribute="top" secondItem="kG1-xB-0op" secondAttribute="top" id="rUX-4w-KaX"/>
                 <constraint firstItem="B0P-LC-JmW" firstAttribute="bottom" secondItem="jR6-WY-o19" secondAttribute="bottom" id="vlI-JJ-jbZ"/>
             </constraints>
-            <point key="canvasLocation" x="75" y="436.5"/>
+            <point key="canvasLocation" x="77.5" y="378.5"/>
         </customView>
         <userDefaultsController representsSharedInstance="YES" id="gsL-dH-zL7"/>
+        <viewController id="vkb-GT-Yko" userLabel="Popover View Controller">
+            <connections>
+                <outlet property="view" destination="uuC-qZ-khm" id="FPI-6k-Ebl"/>
+            </connections>
+        </viewController>
+        <popover behavior="t" id="VJx-c6-hvT">
+            <connections>
+                <outlet property="contentViewController" destination="vkb-GT-Yko" id="Ui0-tO-DXc"/>
+            </connections>
+        </popover>
+        <customView id="uuC-qZ-khm">
+            <rect key="frame" x="0.0" y="0.0" width="360" height="176"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+            <subviews>
+                <textField horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="qJX-2a-zrV">
+                    <rect key="frame" x="18" y="20" width="324" height="136"/>
+                    <constraints>
+                        <constraint firstAttribute="width" constant="320" id="ZSe-1s-7bf"/>
+                    </constraints>
+                    <textFieldCell key="cell" sendsActionOnEndEditing="YES" id="dJ0-Rk-Rqr">
+                        <font key="font" metaFont="system"/>
+                        <mutableString key="title">To link this device to another account, you first need to obtain a pin code. 
To generate the pin code, go to the account management setting of a previous device, choose the Ring Account to use and select "Link another device to this account". 
You will get the necessary pin to complete this form.
The Pin is only valid for 10 minutes.</mutableString>
+                        <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                        <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                    </textFieldCell>
+                </textField>
+            </subviews>
+            <constraints>
+                <constraint firstItem="qJX-2a-zrV" firstAttribute="leading" secondItem="uuC-qZ-khm" secondAttribute="leading" constant="20" id="JN9-ga-U2w"/>
+                <constraint firstItem="qJX-2a-zrV" firstAttribute="centerX" secondItem="uuC-qZ-khm" secondAttribute="centerX" id="bKT-Y2-imb"/>
+                <constraint firstItem="qJX-2a-zrV" firstAttribute="top" secondItem="uuC-qZ-khm" secondAttribute="top" constant="20" id="gcM-Rh-gFF"/>
+                <constraint firstAttribute="trailing" secondItem="qJX-2a-zrV" secondAttribute="trailing" constant="20" id="kd7-rz-uXG"/>
+                <constraint firstItem="qJX-2a-zrV" firstAttribute="centerY" secondItem="uuC-qZ-khm" secondAttribute="centerY" id="taw-HH-WyB"/>
+                <constraint firstAttribute="bottom" secondItem="qJX-2a-zrV" secondAttribute="bottom" constant="20" id="uoG-vi-5PS"/>
+            </constraints>
+            <point key="canvasLocation" x="303" y="677"/>
+        </customView>
     </objects>
 </document>
diff --git a/ui/Base.lproj/RingWizardNewAccount.strings b/ui/Base.lproj/RingWizardNewAccount.strings
new file mode 100644
index 0000000..f73afb1
--- /dev/null
+++ b/ui/Base.lproj/RingWizardNewAccount.strings
@@ -0,0 +1,27 @@
+
+/* Class = "NSTextFieldCell"; placeholderString = "Mandatory*"; ObjectID = "1TO-Ov-S8j"; */
+"1TO-Ov-S8j.placeholderString" = "Mandatory*";
+
+/* Class = "NSTextFieldCell"; title = "Choose your password"; ObjectID = "B6x-jj-48R"; */
+"B6x-jj-48R.title" = "Choose your password";
+
+/* Class = "NSTextFieldCell"; placeholderString = "Mandatory*"; ObjectID = "BCg-5V-Ek4"; */
+"BCg-5V-Ek4.placeholderString" = "Mandatory*";
+
+/* Class = "NSTextFieldCell"; title = "Just a moment..."; ObjectID = "YIN-YL-JBs"; */
+"YIN-YL-JBs.title" = "Just a moment...";
+
+/* Class = "NSTextFieldCell"; placeholderString = "'Unknown' if empty..."; ObjectID = "bdC-Uc-Qhs"; */
+"bdC-Uc-Qhs.placeholderString" = "'Unknown' if empty...";
+
+/* Class = "NSTextFieldCell"; title = "Repeat your password"; ObjectID = "fEY-eO-HwI"; */
+"fEY-eO-HwI.title" = "Repeat your password";
+
+/* Class = "NSTextFieldCell"; title = "Choose your username"; ObjectID = "tzf-88-Yn5"; */
+"tzf-88-Yn5.title" = "Choose your username";
+
+/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "v7f-52-GJA"; */
+"v7f-52-GJA.title" = "Cancel";
+
+/* Class = "NSButtonCell"; title = "Next"; ObjectID = "zfA-n9-V4X"; */
+"zfA-n9-V4X.title" = "Next";
diff --git a/ui/Base.lproj/RingWizardNewAccount.xib b/ui/Base.lproj/RingWizardNewAccount.xib
index 103f137..1e96d63 100644
--- a/ui/Base.lproj/RingWizardNewAccount.xib
+++ b/ui/Base.lproj/RingWizardNewAccount.xib
@@ -1,30 +1,36 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="11201" systemVersion="15G1004" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="10117" systemVersion="15G31" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
     <dependencies>
-        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="11201"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="10117"/>
     </dependencies>
     <objects>
         <customObject id="-2" userLabel="File's Owner" customClass="RingWizardNewAccountVC">
             <connections>
                 <outlet property="cancelButton" destination="NHb-Jx-MH0" id="Oiw-Wj-sDz"/>
                 <outlet property="createButton" destination="FAG-OH-C4R" id="K53-rB-djD"/>
+                <outlet property="creationView" destination="gKX-gX-nko" id="NrN-dl-Z6R"/>
                 <outlet property="indicationLabel" destination="jeO-GS-TdY" id="bJt-3L-pVw"/>
+                <outlet property="loadingView" destination="WWd-Hs-Pwi" id="SX4-nP-C2J"/>
                 <outlet property="nicknameField" destination="LVv-bg-Ols" id="bZw-Jf-AVI"/>
+                <outlet property="passwordCheck" destination="gfQ-Fk-iUR" id="etH-CJ-y8a"/>
                 <outlet property="passwordField" destination="ie2-fK-FsB" id="0Q7-CU-mcB"/>
                 <outlet property="passwordLabel" destination="hwE-M9-zUH" id="L1G-ic-4aE"/>
+                <outlet property="passwordRepeatCheck" destination="mU4-ba-cip" id="TQH-SX-RRk"/>
+                <outlet property="passwordRepeatField" destination="tXp-94-ns5" id="iXz-tJ-m7r"/>
+                <outlet property="passwordRepeatLabel" destination="yaf-61-UuK" id="CqQ-HR-0wT"/>
                 <outlet property="photoView" destination="vby-AD-tor" id="uoF-rR-eSf"/>
-                <outlet property="progressBar" destination="Rex-BP-OLJ" id="veJ-Zi-oje"/>
-                <outlet property="view" destination="gKX-gX-nko" id="j3t-FQ-JdK"/>
+                <outlet property="progressBar" destination="1rt-CR-Wpz" id="UGj-xL-Fp8"/>
+                <outlet property="view" destination="SAg-MG-Jl7" id="UND-8y-zHo"/>
             </connections>
         </customObject>
         <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
         <customObject id="-3" userLabel="Application" customClass="NSObject"/>
         <view id="gKX-gX-nko">
-            <rect key="frame" x="0.0" y="0.0" width="413" height="271"/>
+            <rect key="frame" x="0.0" y="0.0" width="413" height="331"/>
             <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
             <subviews>
-                <button translatesAutoresizingMaskIntoConstraints="NO" id="FAG-OH-C4R">
-                    <rect key="frame" x="323" y="17" width="72" height="29"/>
+                <button misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="FAG-OH-C4R">
+                    <rect key="frame" x="323" y="38" width="72" height="29"/>
                     <constraints>
                         <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="iqj-jS-ZaS"/>
                     </constraints>
@@ -37,11 +43,19 @@
                     </buttonCell>
                     <connections>
                         <action selector="createRingAccount:" target="-2" id="Kvv-ER-ueA"/>
-                        <binding destination="-2" name="enabled" keyPath="self.password.length" id="at6-TM-rdD"/>
+                        <binding destination="-2" name="enabled2" keyPath="self.isRepeatPasswordValid" previousBinding="dev-Jk-Mfr" id="k1J-Dw-cMi">
+                            <dictionary key="options">
+                                <integer key="NSMultipleValuesPlaceholder" value="-1"/>
+                                <integer key="NSNoSelectionPlaceholder" value="-1"/>
+                                <integer key="NSNotApplicablePlaceholder" value="-1"/>
+                                <integer key="NSNullPlaceholder" value="-1"/>
+                            </dictionary>
+                        </binding>
+                        <binding destination="-2" name="enabled" keyPath="self.isPasswordValid" id="dev-Jk-Mfr"/>
                     </connections>
                 </button>
                 <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="LVv-bg-Ols">
-                    <rect key="frame" x="105" y="109" width="200" height="22"/>
+                    <rect key="frame" x="105" y="200" width="200" height="22"/>
                     <constraints>
                         <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="Fb8-ez-8VT"/>
                     </constraints>
@@ -57,10 +71,11 @@
                                 <bool key="NSValidatesImmediately" value="YES"/>
                             </dictionary>
                         </binding>
+                        <outlet property="nextKeyView" destination="ie2-fK-FsB" id="R1t-Gl-whB"/>
                     </connections>
                 </textField>
                 <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="jeO-GS-TdY">
-                    <rect key="frame" x="33" y="139" width="344" height="17"/>
+                    <rect key="frame" x="33" y="230" width="344" height="17"/>
                     <constraints>
                         <constraint firstAttribute="width" constant="340" id="G1m-Eo-HaC"/>
                     </constraints>
@@ -71,7 +86,7 @@
                     </textFieldCell>
                 </textField>
                 <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hwE-M9-zUH">
-                    <rect key="frame" x="33" y="84" width="344" height="17"/>
+                    <rect key="frame" x="33" y="175" width="344" height="17"/>
                     <constraints>
                         <constraint firstAttribute="width" constant="340" id="nga-zR-QQ3"/>
                     </constraints>
@@ -81,22 +96,23 @@
                         <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
                     </textFieldCell>
                 </textField>
-                <button focusRingType="none" translatesAutoresizingMaskIntoConstraints="NO" id="vby-AD-tor">
-                    <rect key="frame" x="170" y="170" width="70" height="70"/>
+                <imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="gfQ-Fk-iUR">
+                    <rect key="frame" x="313" y="146" width="20" height="20"/>
                     <constraints>
-                        <constraint firstAttribute="width" constant="70" id="ELE-xo-8Tx"/>
-                        <constraint firstAttribute="height" constant="70" id="SD5-rB-QBD"/>
+                        <constraint firstAttribute="width" constant="20" id="FQ5-RF-zC5"/>
+                        <constraint firstAttribute="height" constant="20" id="u8a-uz-ji9"/>
                     </constraints>
-                    <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" imagePosition="only" alignment="center" focusRingType="none" imageScaling="proportionallyUpOrDown" inset="2" id="BTW-ug-E0p">
-                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
-                        <font key="font" metaFont="system"/>
-                    </buttonCell>
+                    <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="ic_action_accept" id="ohn-LN-sAz"/>
                     <connections>
-                        <action selector="editPhoto:" target="-2" id="0AC-cZ-xCz"/>
+                        <binding destination="-2" name="hidden" keyPath="self.isPasswordValid" id="JlV-FR-ysD">
+                            <dictionary key="options">
+                                <string key="NSValueTransformerName">NSNegateBoolean</string>
+                            </dictionary>
+                        </binding>
                     </connections>
-                </button>
+                </imageView>
                 <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="ie2-fK-FsB" customClass="NSSecureTextField">
-                    <rect key="frame" x="105" y="54" width="200" height="22"/>
+                    <rect key="frame" x="105" y="145" width="200" height="22"/>
                     <constraints>
                         <constraint firstAttribute="width" constant="200" id="RoG-9m-EB3"/>
                         <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="nTg-zI-DZQ"/>
@@ -112,16 +128,41 @@
                                 <bool key="NSContinuouslyUpdatesValue" value="YES"/>
                             </dictionary>
                         </binding>
+                        <outlet property="nextKeyView" destination="tXp-94-ns5" id="o2j-Ze-hno"/>
                     </connections>
                 </textField>
-                <progressIndicator hidden="YES" wantsLayer="YES" maxValue="100" indeterminate="YES" style="spinning" translatesAutoresizingMaskIntoConstraints="NO" id="Rex-BP-OLJ">
-                    <rect key="frame" x="157" y="189" width="96" height="32"/>
+                <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="yaf-61-UuK">
+                    <rect key="frame" x="33" y="116" width="344" height="17"/>
                     <constraints>
-                        <constraint firstAttribute="width" constant="96" id="XxY-TP-vvJ"/>
+                        <constraint firstAttribute="width" constant="340" id="x3M-VB-dWw"/>
                     </constraints>
-                </progressIndicator>
-                <button translatesAutoresizingMaskIntoConstraints="NO" id="NHb-Jx-MH0">
-                    <rect key="frame" x="245" y="17" width="72" height="29"/>
+                    <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Repeat your password" id="fEY-eO-HwI">
+                        <font key="font" metaFont="system"/>
+                        <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                        <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                    </textFieldCell>
+                </textField>
+                <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="tXp-94-ns5" customClass="NSSecureTextField">
+                    <rect key="frame" x="105" y="86" width="200" height="22"/>
+                    <constraints>
+                        <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="200" id="K6O-5F-lrk"/>
+                        <constraint firstAttribute="width" constant="200" id="ZEO-wC-sob"/>
+                    </constraints>
+                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" placeholderString="Mandatory*" bezelStyle="round" id="BCg-5V-Ek4" customClass="NSSecureTextFieldCell">
+                        <font key="font" metaFont="system"/>
+                        <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/>
+                        <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+                    </textFieldCell>
+                    <connections>
+                        <binding destination="-2" name="value" keyPath="self.repeatPassword" id="Ch6-2C-MNy">
+                            <dictionary key="options">
+                                <bool key="NSContinuouslyUpdatesValue" value="YES"/>
+                            </dictionary>
+                        </binding>
+                    </connections>
+                </textField>
+                <button misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="NHb-Jx-MH0">
+                    <rect key="frame" x="245" y="38" width="72" height="29"/>
                     <constraints>
                         <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="68" id="8UL-X3-Ulx"/>
                     </constraints>
@@ -136,30 +177,116 @@
                         <action selector="cancel:" target="-2" id="oao-V9-D0B"/>
                     </connections>
                 </button>
+                <imageView horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="mU4-ba-cip">
+                    <rect key="frame" x="313" y="87" width="20" height="20"/>
+                    <constraints>
+                        <constraint firstAttribute="width" constant="20" id="D4O-G0-LqM"/>
+                        <constraint firstAttribute="height" constant="20" id="Oua-Tw-qkD"/>
+                    </constraints>
+                    <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="ic_action_accept" id="QRW-2G-oy5"/>
+                    <connections>
+                        <binding destination="-2" name="hidden2" keyPath="self.isRepeatPasswordValid" previousBinding="dSu-GL-Nqj" id="dve-JG-dRa">
+                            <dictionary key="options">
+                                <integer key="NSMultipleValuesPlaceholder" value="-1"/>
+                                <integer key="NSNoSelectionPlaceholder" value="-1"/>
+                                <integer key="NSNotApplicablePlaceholder" value="-1"/>
+                                <integer key="NSNullPlaceholder" value="-1"/>
+                                <string key="NSValueTransformerName">NSNegateBoolean</string>
+                            </dictionary>
+                        </binding>
+                        <binding destination="-2" name="hidden" keyPath="self.isPasswordValid" id="dSu-GL-Nqj">
+                            <dictionary key="options">
+                                <string key="NSValueTransformerName">NSNegateBoolean</string>
+                            </dictionary>
+                        </binding>
+                    </connections>
+                </imageView>
+                <button focusRingType="none" translatesAutoresizingMaskIntoConstraints="NO" id="vby-AD-tor">
+                    <rect key="frame" x="170" y="261" width="70" height="70"/>
+                    <constraints>
+                        <constraint firstAttribute="width" constant="70" id="ELE-xo-8Tx"/>
+                        <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="70" id="HGW-Ij-peX"/>
+                        <constraint firstAttribute="height" constant="70" id="SD5-rB-QBD"/>
+                        <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="70" id="mL5-3Z-Akx"/>
+                    </constraints>
+                    <buttonCell key="cell" type="square" bezelStyle="shadowlessSquare" imagePosition="only" alignment="center" focusRingType="none" imageScaling="proportionallyUpOrDown" inset="2" id="BTW-ug-E0p">
+                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                        <font key="font" metaFont="system"/>
+                    </buttonCell>
+                    <connections>
+                        <action selector="editPhoto:" target="-2" id="0AC-cZ-xCz"/>
+                    </connections>
+                </button>
             </subviews>
             <constraints>
                 <constraint firstItem="ie2-fK-FsB" firstAttribute="top" secondItem="hwE-M9-zUH" secondAttribute="bottom" constant="8" id="0bb-do-p68"/>
+                <constraint firstItem="vby-AD-tor" firstAttribute="top" secondItem="gKX-gX-nko" secondAttribute="top" id="85X-xJ-FQR"/>
                 <constraint firstAttribute="bottom" secondItem="FAG-OH-C4R" secondAttribute="bottom" constant="20" id="9AP-f8-vdO"/>
                 <constraint firstItem="hwE-M9-zUH" firstAttribute="width" secondItem="jeO-GS-TdY" secondAttribute="width" id="ATx-Vh-8TD"/>
                 <constraint firstItem="NHb-Jx-MH0" firstAttribute="baseline" secondItem="FAG-OH-C4R" secondAttribute="baseline" id="Eer-Or-NY2"/>
+                <constraint firstItem="vby-AD-tor" firstAttribute="centerX" secondItem="jeO-GS-TdY" secondAttribute="centerX" id="F07-gl-heq"/>
+                <constraint firstItem="gfQ-Fk-iUR" firstAttribute="centerY" secondItem="ie2-fK-FsB" secondAttribute="centerY" id="K0P-25-MxY"/>
                 <constraint firstItem="jeO-GS-TdY" firstAttribute="leading" secondItem="hwE-M9-zUH" secondAttribute="leading" id="MJZ-Ca-C8L"/>
-                <constraint firstItem="Rex-BP-OLJ" firstAttribute="centerX" secondItem="gKX-gX-nko" secondAttribute="centerX" constant="-1.5" id="Mei-kS-10O"/>
                 <constraint firstItem="LVv-bg-Ols" firstAttribute="top" secondItem="jeO-GS-TdY" secondAttribute="bottom" constant="8" id="OPZ-qE-hzB"/>
-                <constraint firstItem="Rex-BP-OLJ" firstAttribute="top" secondItem="vby-AD-tor" secondAttribute="bottom" constant="-51" id="Omm-Ws-9MB"/>
                 <constraint firstItem="jeO-GS-TdY" firstAttribute="top" secondItem="vby-AD-tor" secondAttribute="bottom" constant="14" id="OtF-HF-h4Z"/>
+                <constraint firstItem="mU4-ba-cip" firstAttribute="leading" secondItem="tXp-94-ns5" secondAttribute="trailing" constant="8" id="TQK-Z4-MX9"/>
+                <constraint firstItem="tXp-94-ns5" firstAttribute="top" secondItem="yaf-61-UuK" secondAttribute="bottom" constant="8" id="UdS-Ba-M4h"/>
+                <constraint firstItem="mU4-ba-cip" firstAttribute="centerY" secondItem="tXp-94-ns5" secondAttribute="centerY" id="VEp-Rp-lIu"/>
                 <constraint firstAttribute="bottom" secondItem="FAG-OH-C4R" secondAttribute="bottom" constant="20" id="d9B-0y-SuL"/>
-                <constraint firstItem="vby-AD-tor" firstAttribute="centerX" secondItem="gKX-gX-nko" secondAttribute="centerX" constant="-1.5" id="dsP-lR-LDH"/>
+                <constraint firstItem="gfQ-Fk-iUR" firstAttribute="leading" secondItem="ie2-fK-FsB" secondAttribute="trailing" constant="8" id="ffL-46-99C"/>
                 <constraint firstItem="FAG-OH-C4R" firstAttribute="leading" secondItem="NHb-Jx-MH0" secondAttribute="trailing" constant="10" id="gGA-Nk-tbe"/>
                 <constraint firstItem="hwE-M9-zUH" firstAttribute="top" secondItem="LVv-bg-Ols" secondAttribute="bottom" constant="8" id="ioi-p9-2Rl"/>
+                <constraint firstItem="vby-AD-tor" firstAttribute="top" secondItem="gKX-gX-nko" secondAttribute="top" id="jB0-W7-dwQ"/>
                 <constraint firstAttribute="trailing" secondItem="FAG-OH-C4R" secondAttribute="trailing" constant="20" id="k6C-fx-ggJ"/>
+                <constraint firstItem="tXp-94-ns5" firstAttribute="top" secondItem="yaf-61-UuK" secondAttribute="bottom" constant="8" id="ke4-8H-TZM"/>
                 <constraint firstItem="ie2-fK-FsB" firstAttribute="leading" secondItem="LVv-bg-Ols" secondAttribute="leading" id="nwb-Sw-S0z"/>
                 <constraint firstItem="LVv-bg-Ols" firstAttribute="centerX" secondItem="gKX-gX-nko" secondAttribute="centerX" constant="-1.5" id="o0M-KE-kXR"/>
                 <constraint firstItem="ie2-fK-FsB" firstAttribute="trailing" secondItem="LVv-bg-Ols" secondAttribute="trailing" id="rbn-k3-y8J"/>
-                <constraint firstItem="Rex-BP-OLJ" firstAttribute="centerY" secondItem="gKX-gX-nko" secondAttribute="centerY" constant="-69.5" id="uRl-fe-Zvj"/>
-                <constraint firstItem="jeO-GS-TdY" firstAttribute="centerX" secondItem="gKX-gX-nko" secondAttribute="centerX" constant="-1.5" id="yFD-WZ-i8T"/>
+                <constraint firstItem="yaf-61-UuK" firstAttribute="leading" secondItem="hwE-M9-zUH" secondAttribute="leading" id="tNS-eU-NY5"/>
+                <constraint firstItem="yaf-61-UuK" firstAttribute="top" secondItem="ie2-fK-FsB" secondAttribute="bottom" constant="12" id="wqc-ny-rsH"/>
+                <constraint firstItem="vby-AD-tor" firstAttribute="centerX" secondItem="LVv-bg-Ols" secondAttribute="centerX" id="zEl-Ph-BHC"/>
+                <constraint firstItem="tXp-94-ns5" firstAttribute="leading" secondItem="ie2-fK-FsB" secondAttribute="leading" id="zJT-jG-vKu"/>
             </constraints>
-            <point key="canvasLocation" x="473.5" y="228.5"/>
+            <point key="canvasLocation" x="72.5" y="386.5"/>
         </view>
         <userDefaultsController representsSharedInstance="YES" id="JOT-gS-qe2"/>
+        <customView id="WWd-Hs-Pwi">
+            <rect key="frame" x="0.0" y="0.0" width="413" height="70"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+            <subviews>
+                <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" setsMaxLayoutWidthAtFirstLayout="YES" translatesAutoresizingMaskIntoConstraints="NO" id="1hK-Hw-cJh">
+                    <rect key="frame" x="34" y="7" width="344" height="17"/>
+                    <constraints>
+                        <constraint firstAttribute="width" constant="340" id="tHE-Zh-IYn"/>
+                    </constraints>
+                    <textFieldCell key="cell" controlSize="mini" sendsActionOnEndEditing="YES" alignment="center" title="Just a moment..." id="YIN-YL-JBs">
+                        <font key="font" metaFont="system"/>
+                        <color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
+                        <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                    </textFieldCell>
+                </textField>
+                <progressIndicator wantsLayer="YES" maxValue="100" indeterminate="YES" style="spinning" translatesAutoresizingMaskIntoConstraints="NO" id="1rt-CR-Wpz">
+                    <rect key="frame" x="158" y="32" width="96" height="32"/>
+                    <constraints>
+                        <constraint firstAttribute="width" constant="96" id="g01-Ci-luV"/>
+                    </constraints>
+                </progressIndicator>
+            </subviews>
+            <constraints>
+                <constraint firstItem="1hK-Hw-cJh" firstAttribute="top" secondItem="1rt-CR-Wpz" secondAttribute="bottom" constant="8" id="kRx-lu-H03"/>
+                <constraint firstItem="1rt-CR-Wpz" firstAttribute="centerY" secondItem="WWd-Hs-Pwi" secondAttribute="centerY" constant="-13" id="tFP-f6-B38"/>
+                <constraint firstItem="1hK-Hw-cJh" firstAttribute="centerX" secondItem="1rt-CR-Wpz" secondAttribute="centerX" id="upr-bY-gXb"/>
+                <constraint firstItem="1rt-CR-Wpz" firstAttribute="centerX" secondItem="WWd-Hs-Pwi" secondAttribute="centerX" id="vuy-f9-mI8"/>
+            </constraints>
+            <point key="canvasLocation" x="67.5" y="128"/>
+        </customView>
+        <customView id="SAg-MG-Jl7">
+            <rect key="frame" x="0.0" y="0.0" width="512" height="355"/>
+            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+            <point key="canvasLocation" x="117" y="380.5"/>
+        </customView>
     </objects>
+    <resources>
+        <image name="ic_action_accept" width="72" height="72"/>
+    </resources>
 </document>