#include "bp.h"\r
+#include <algorithm>\r
+using std::min;\r
+using std::max;\r
\r
//#define CHECK\r
#define RANDOM\r
int childtbl[(ETW)*(1<<ETW)];\r
int childtbl2[2*ETW+1][ETW][(1<<ETW)];\r
int depthtbl[(2*ETW+1)*(1<<ETW)];\r
-\r
+int inited = 0;\r
void make_matchtbl(void)\r
{\r
int i,j,x,r;\r
int m,M;\r
pb buf[1];\r
int deg;\r
-\r
+ if (inited)\r
+ return;\r
+ inited = 1;\r
for (x = 0; x < (1<<ETW); x++) {\r
setbits(buf,0,ETW,x);\r
for (r=-ETW; r<=ETW; r++) fwdtbl[((r+ETW)<<ETW)+x] = ETW;\r