diff --git a/build.py b/build.py
index f6ebacb33c6c8f6e42bd9a33f02bbf2ef61a0fec..fbc68fd7ce56dd5203c92f63df20811b76000d6e 100644
--- a/build.py
+++ b/build.py
@@ -25,14 +25,14 @@ if __name__ == '__main__':
     except OSError:
         pass
 
-    with open(src_md, 'rb') as labin, open('src/lab1.json', 'rb') as datin:
+    with open(src_md, 'rb') as labin, open('src/'+sys.argv[1]+'.json', 'rb') as datin:
         data = json.load(datin)
         lab = labin.read().decode('utf8')
 
     for ex_no, d in enumerate(data, start=1):
         plab = lab
         d['lp'] = unicode(ex_no)
-        print('Processing lab1-%s' % (ex_no, ))
+        print('Processing %s-%s' % (sys.argv[1], ex_no, ))
 
         for k, v in d.iteritems():
             plab = plab.replace(u'$%s$' % (k, ), v)
@@ -42,7 +42,5 @@ if __name__ == '__main__':
             labout.write(plab.encode('utf8'))
             labout.write(footer_bin)
 
-        os.system(('pandoc '+dist_lp+'%s.md -s -o dist/lab1/%s.pdf') % (ex_no, ex_no))
+        os.system(('pandoc '+dist_lp+'%s.md -s -o %s%s.pdf') % (dist_lp, ex_no, dist_lp, ex_no))
         os.unlink(dist_lp+'%s.md' % (ex_no, ))
-
-