diff --git a/pub/Makefile.am b/pub/Makefile.am
index f6f5300aef9ffbe40d70ff66b8a42754085a0b54..ef790f51b227ae1b63fa6c427a00679c03f8c630 100644
--- a/pub/Makefile.am
+++ b/pub/Makefile.am
@@ -1,2 +1,2 @@
-SUBDIRS = src yaml-cpp/src
+SUBDIRS = yaml-cpp/src src
 ACLOCAL_AMFLAGS = -I m4
diff --git a/pub/Makefile.in b/pub/Makefile.in
index 87f730d6bcbab52ffbee2ec8ea7f1ec4768547ef..b9b44f42f28dcbdc5f4c129ff10e1a8592a5ae33 100644
--- a/pub/Makefile.in
+++ b/pub/Makefile.in
@@ -228,7 +228,7 @@ target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-SUBDIRS = src yaml-cpp/src
+SUBDIRS = yaml-cpp/src src
 ACLOCAL_AMFLAGS = -I m4
 all: config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
diff --git a/pub/configure b/pub/configure
index 384b59965af265e9cfe2bb7460354f0fc1a61d68..d02730145e7f93418d74c987f2e6c6200027f595 100755
--- a/pub/configure
+++ b/pub/configure
@@ -16257,7 +16257,7 @@ fi
 ##  Execute                                                                  ##
 ###############################################################################
 
-ac_config_files="$ac_config_files Makefile src/Makefile yaml-cpp/src/Makefile"
+ac_config_files="$ac_config_files Makefile yaml-cpp/src/Makefile src/Makefile"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -17332,8 +17332,8 @@ do
     "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
     "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
     "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-    "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
     "yaml-cpp/src/Makefile") CONFIG_FILES="$CONFIG_FILES yaml-cpp/src/Makefile" ;;
+    "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
 
   *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
   esac
diff --git a/pub/configure.ac b/pub/configure.ac
index 5985d7469e15d4ef896151cd1771742cbab989d2..34f410451b754dd233b1f3536f54bd180728c9c9 100644
--- a/pub/configure.ac
+++ b/pub/configure.ac
@@ -103,5 +103,5 @@ fi
 ##  Execute                                                                  ##
 ###############################################################################
 
-AC_CONFIG_FILES([Makefile src/Makefile yaml-cpp/src/Makefile])
+AC_CONFIG_FILES([Makefile yaml-cpp/src/Makefile src/Makefile])
 AC_OUTPUT
diff --git a/pub/src/dualplot.cpp b/pub/src/dualplot.cpp
index b5165459fe14a793f3563168204b76a927185fbf..c0117e512df3f6ae882a7e0773d4169f3e61feb8 100644
--- a/pub/src/dualplot.cpp
+++ b/pub/src/dualplot.cpp
@@ -485,18 +485,17 @@ void CPlot::writePostscript( bool full_outfile )
 
     // construct output file name:
     FILE *pssav;
-    char outf[20];
-    string flong, cmd;
+    string flong, cmd, outf;
     while(1) {
         if (ps_fnum>=999)
             throw string( "graph file number overflow" );
-        sprintf(outf, "%sl%d.%s", ps_outdir.c_str(), ++ps_fnum, 
-                full_outfile ? "ps" : "psa" );
-        if (!(pssav = mystd::glob_fopen(outf, "", "", "r")))
+        outf = ps_outdir + str( format( "l%d." ) % ++ps_fnum ) +
+            ( full_outfile ? "ps" : "psa" );
+        if (!(pssav = mystd::glob_fopen(outf.c_str(), "", "", "r")))
             break; // legal exit
         fclose(pssav);
     }
-    printf("save plot in %s\n", outf);
+    cout << "save plot in " << outf << "\n";
 
     // copy headers to output file:
     cmd = string("cat ") + ( full_outfile ? ps_dict : "" ) + " " +
@@ -504,8 +503,8 @@ void CPlot::writePostscript( bool full_outfile )
     mystd::system( cmd );
     
     // a redundant check of existence of the outfile:
-    if (!(pssav = mystd::glob_fopen(outf, "", "", "r", &flong))) {
-        printf("have not created file %s\n", outf);
+    if (!(pssav = mystd::glob_fopen(outf.c_str(), "", "", "r", &flong))) {
+        throw "have not created file " + outf;
         return;
     }
     fclose(pssav);
@@ -528,7 +527,7 @@ void CPlot::writePostscript( bool full_outfile )
 	
     fprintf(pssav, 
             "\n{(%s)}  /filename exch def 10 -2.8 18 showfilename\n\n"
-            "EndFrame\n", outf);
+            "EndFrame\n", outf.c_str() );
 
     // output completed:
     fclose(pssav);
diff --git a/pub/src/edif.cpp b/pub/src/edif.cpp
index 7d3f36127d5eec23193a5879b415cdbec237e745..f36e69d7d1c11af006d4e9c6c512ffba22145773 100644
--- a/pub/src/edif.cpp
+++ b/pub/src/edif.cpp
@@ -333,10 +333,8 @@ void NEdif::DirCoord(void)
     NOlm::IterateEle eiter;
     CEle *e;
     string out;
-    char   aux[4];
-    while((e=eiter())) {
-        sprintf( aux, "%3d", eiter.SelNo() );
-        out = string( aux );
+    while( (e=eiter()) ) {
+        out = str( format( "%3d" ) % eiter.SelNo() );
         out += " x: " + e->P()->xco.str();
         out += "  y: " + e->P()->yco.str();
         for ( uint i=0; i<e->P()->nZ(); i++ ) {
diff --git a/pub/src/manip.cpp b/pub/src/manip.cpp
index 141def577a08262ef8e9b45e85c53a28e2196be7..0396533220bc709d0ed7c506e0b506025373f8f2 100644
--- a/pub/src/manip.cpp
+++ b/pub/src/manip.cpp
@@ -10,6 +10,7 @@
 #include <math.h>
 #include <iostream>
 #include <algorithm>
+#include <boost/format.hpp>
 #include <gsl/gsl_sort.h>
 
 #include "mystd.h"
@@ -23,6 +24,7 @@
 #include "index.h"
 
 using namespace std;
+using boost::format;
 
 // local routines:
 namespace NManip {
@@ -1208,9 +1210,7 @@ void NManip::FilMerge( const string& opts )
 	
     if (fnam == "") {
         static uint callNo=0;
-        char fnamdef[12];
-        sprintf(fnamdef, "merge%03u", callNo++);
-        fnam = fnamdef;
+        fnam = str( format( "merge%03u" ) % callNo++ );
     }
 
     fnam = wask("Joined file name", fnam);
diff --git a/pub/yaml-cpp/src/.libs/libyaml4frida.a b/pub/yaml-cpp/src/.libs/libyaml4frida.a
new file mode 100644
index 0000000000000000000000000000000000000000..8b277f0dd5dcdcb9c4b6c0b7a32153664f111266
--- /dev/null
+++ b/pub/yaml-cpp/src/.libs/libyaml4frida.a
@@ -0,0 +1 @@
+!<arch>
diff --git a/pub/yaml-cpp/src/.libs/libyaml4frida.so b/pub/yaml-cpp/src/.libs/libyaml4frida.so
new file mode 120000
index 0000000000000000000000000000000000000000..e7b066e90c7a6365421e845e978f9498e10113b1
--- /dev/null
+++ b/pub/yaml-cpp/src/.libs/libyaml4frida.so
@@ -0,0 +1 @@
+libyaml4frida.so.0.0.0
\ No newline at end of file
diff --git a/pub/yaml-cpp/src/.libs/libyaml4frida.so.0 b/pub/yaml-cpp/src/.libs/libyaml4frida.so.0
new file mode 120000
index 0000000000000000000000000000000000000000..e7b066e90c7a6365421e845e978f9498e10113b1
--- /dev/null
+++ b/pub/yaml-cpp/src/.libs/libyaml4frida.so.0
@@ -0,0 +1 @@
+libyaml4frida.so.0.0.0
\ No newline at end of file
diff --git a/pub/yaml-cpp/src/.libs/libyaml4frida.so.0.0.0 b/pub/yaml-cpp/src/.libs/libyaml4frida.so.0.0.0
new file mode 100755
index 0000000000000000000000000000000000000000..2c461719b9a42a5978acebacb26092fddb0bc389
Binary files /dev/null and b/pub/yaml-cpp/src/.libs/libyaml4frida.so.0.0.0 differ