diff --git a/crack.c b/crack.c
index ea6b4d0770e97e71bb10004f3bf75d06ba98f953..84b70339e38ef5b9de4ce403ec820061de7447c1 100644
--- a/crack.c
+++ b/crack.c
@@ -52,7 +52,7 @@ SHA256_CTX ctx;
 
   } 
 }
-void variations(char *word_list_file, int hashes[30][32])
+void variations(char *word_list_file, int hashes[30][32],int status)
 {
   SHA256_CTX ctx;
     BYTE buffer[SHA256_BLOCK_SIZE];
@@ -63,7 +63,7 @@ void variations(char *word_list_file, int hashes[30][32])
     word_list=fopen(word_list_file, "rb");
 
     while ( fgets(password, 7, word_list) != '\0'){
-      if (count==30)
+      if (count==30 && status!=3)
       {
         break;
       }
@@ -391,7 +391,7 @@ void crack6(char *word_list_file, int hashes[30][32])
        b++;
    }
    crack6("100k_passwords.txt",hashes);
-   variations("common_passwords1.txt",hashes);
+   variations("common_passwords1.txt",hashes,0);
    printRandomString(hashes);
 
    
@@ -435,6 +435,7 @@ if (argc==3)
        b++;
    }
    crack6(argv[2],hashes);
+   variations("common_passwords1.txt",hashes,3);