import java.util.*; import java.util.zip.*; import java.util.List; import java.util.regex.*; import java.util.concurrent.*; import java.util.concurrent.atomic.*; import java.util.concurrent.locks.*; import javax.swing.*; import javax.swing.event.*; import javax.swing.text.*; import javax.swing.table.*; import java.io.*; import java.net.*; import java.lang.reflect.*; import java.lang.ref.*; import java.lang.management.*; import java.security.*; import java.security.spec.*; import java.awt.*; import java.awt.event.*; import java.awt.image.*; import javax.imageio.*; import java.math.*; import java.text.NumberFormat; import javax.net.ssl.*; import java.security.SecureRandom; import java.security.cert.X509Certificate; import java.text.SimpleDateFormat; import java.awt.datatransfer.StringSelection; import javax.swing.undo.UndoManager; import java.text.*; import javax.imageio.metadata.*; import javax.imageio.stream.*; import java.util.TimeZone; import java.awt.geom.*; import java.awt.datatransfer.*; import javax.swing.event.AncestorListener; import javax.swing.event.AncestorEvent; import javax.swing.Timer; import java.awt.datatransfer.Transferable; import java.awt.datatransfer.DataFlavor; import java.awt.datatransfer.UnsupportedFlavorException; class main { static class Named extends Concept { String name; public String toString() { return shortDynClassName(this) + " " + quote(name); } } abstract static class DynVoiceMultiCRUD extends DynModule { static class Table implements IFieldsToList{ static final String _fieldOrder = "tabName name conceptClass scope"; String tabName; String name; Class extends Concept> conceptClass; Object[] scope; Table() {} Table(String tabName, String name, Class extends Concept> conceptClass, Object[] scope) { this.scope = scope; this.conceptClass = conceptClass; this.name = name; this.tabName = tabName;} public String toString() { return shortClassName(this) + "(" + tabName + ", " + name + ", " + conceptClass + ", " + scope + ")"; } public boolean equals(Object o) { if (!(o instanceof Table)) return false; Table x = (Table) o; return eq(tabName, x.tabName) && eq(name, x.name) && eq(conceptClass, x.conceptClass) && eq(scope, x.scope); } public int hashCode() { int h = 80563118; h = boostHashCombine(h, _hashCode(tabName)); h = boostHashCombine(h, _hashCode(name)); h = boostHashCombine(h, _hashCode(conceptClass)); h = boostHashCombine(h, _hashCode(scope)); return h; } public Object[] _fieldsToList() { return new Object[] {tabName, name, conceptClass, scope}; } Table(String tabName, String name, Class extends Concept> conceptClass) { this(tabName, name, conceptClass, null); } } transient Concepts cc; transient List