void internalflush()
 {
     if ( pc != pa )
     {
         COS.write(
             reinterpret_cast<char const *>(pa),
             (pc-pa)*sizeof(GraphEdge)
         );
         pc = pa;
     }
 }
			void internalflush()
			{
				if ( pc != pa )
				{
					std::sort(pa,pc);
					COS.write(
						reinterpret_cast<char const *>(pa),
						(pc-pa)*sizeof(GraphEdge)
					);
					blocksizes.push_back(pc-pa);
					pc = pa;
				}
			}
			void flush()
			{
				internalflush();
				COS.flush();
			}