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 java.util.function.*; 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 java.awt.geom.*; import javax.imageio.*; import java.math.*; import x30_pkg.x30_util; import static x30_pkg.x30_util.VF1; import static x30_pkg.x30_util.indexOf; import static x30_pkg.x30_util.getOpt; import static x30_pkg.x30_util.setOpt; import static x30_pkg.x30_util.callOpt; import static x30_pkg.x30_util.newWeakHashMap; import static x30_pkg.x30_util.newDangerousWeakHashMap; import static x30_pkg.x30_util.get; import static x30_pkg.x30_util.get_raw; import static x30_pkg.x30_util.assertTrue; import static x30_pkg.x30_util.isHeadless; import static x30_pkg.x30_util.isAndroid; import static x30_pkg.x30_util.isTrue; import x30_pkg.x30_util.DynamicObject; import loadableUtils.utils; import static loadableUtils.utils._threadInfo; import static loadableUtils.utils._threadInheritInfo; import static loadableUtils.utils.dm_current_mandatory; import static loadableUtils.utils.match; import static loadableUtils.utils.setOpt_raw; import static loadableUtils.utils.fieldType; import static loadableUtils.utils.format3; import static loadableUtils.utils.vm_generalIdentityHashSet; import static loadableUtils.utils.vm_generalHashMap; import static loadableUtils.utils.vm_generalWeakSubMap; import static loadableUtils.utils.bindToComponent; import static loadableUtils.utils.struct; import static loadableUtils.utils.structure; import static loadableUtils.utils.loadPage; import static loadableUtils.utils.loadPage_utf8; import static loadableUtils.utils.loadPageSilently; import static loadableUtils.utils.loadSnippet; import static loadableUtils.utils.componentPopupMenu; import static loadableUtils.utils.tablePopupMenu; import static loadableUtils.utils.tablePopupMenuFirst; import static loadableUtils.utils.sexyTableWithoutDrag; import static loadableUtils.utils.dm_current_generic; import static loadableUtils.utils.cset; import static loadableUtils.utils.DynamicObject_loading; import static loadableUtils.utils.concepts_unlisted; import static loadableUtils.utils.dynamicObjectIsLoading; import static loadableUtils.utils.rethrow; import loadableUtils.utils.F0; import loadableUtils.utils.F1; import loadableUtils.utils.IF0; import loadableUtils.utils.IF1; import loadableUtils.utils.IVF1; import loadableUtils.utils.Matches; import loadableUtils.utils.SingleComponentPanel; import loadableUtils.utils.Q; import loadableUtils.utils.ImageSurface; import loadableUtils.utils.RGBImage; import loadableUtils.utils.RGB; import loadableUtils.utils.BWImage; import loadableUtils.utils.MakesBufferedImage; import loadableUtils.utils.MultiSet; import loadableUtils.utils.Concept; import loadableUtils.utils.Concepts; import loadableUtils.utils.IConceptIndex; import loadableUtils.utils.IterableIterator; import loadableUtils.utils.IFieldIndex; import loadableUtils.utils.PersistableThrowable; import loadableUtils.utils.DynModule; import loadableUtils.utils.GlobalID; import loadableUtils.utils.Rect; import loadableUtils.utils.Pt; import loadableUtils.utils.SecretValue; import static loadableUtils.utils.fixNewLines; import static loadableUtils.utils.sfu; import static loadableUtils.utils.getExceptionCause; import static loadableUtils.utils.joinWithSpace; import static loadableUtils.utils.callF; import static loadableUtils.utils.javaTok; import static loadableUtils.utils.jlabel; import static loadableUtils.utils.nohupJavax; import static loadableUtils.utils.withDBLock; import static loadableUtils.utils.join; import static loadableUtils.utils.isAWTThread; import static loadableUtils.utils.set; import static loadableUtils.utils.call; import static loadableUtils.utils.fail; import static loadableUtils.utils.print; import static loadableUtils.utils.cget; import static loadableUtils.utils.newTypeWriterTextArea; import static loadableUtils.utils.db; import loadableUtils.utils.LongRange; import loadableUtils.utils.IntRange; import loadableUtils.utils.MultiMap; import loadableUtils.utils.Meta; import loadableUtils.utils.ITokCondition; import loadableUtils.utils.SimpleLiveValue; import loadableUtils.utils.Matrix; import loadableUtils.utils.IRef; import loadableUtils.utils.F2; import loadableUtils.utils.RandomAccessAbstractList; import loadableUtils.utils.IBWIntegralImage; import loadableUtils.utils.Producer; import loadableUtils.utils.IntBuffer; import loadableUtils.utils.AbstractMatrix; import loadableUtils.utils.IMeta; import loadableUtils.utils.LiveValue; import loadableUtils.utils.Timestamp; import loadableUtils.utils.DoubleRect; import loadableUtils.utils.Complex; import loadableUtils.utils.Either; import loadableUtils.utils.Steppable; import loadableUtils.utils.T3; import loadableUtils.utils.Swingable; import loadableUtils.utils.Average; import loadableUtils.utils.BWIntegralImage; import loadableUtils.utils.DoubleRange; import loadableUtils.utils.Seconds; import static loadableUtils.utils.score; import static loadableUtils.utils.stepAll; import static loadableUtils.utils.infoMessage; import static loadableUtils.utils.brightnessToRGBA; import static loadableUtils.utils.getPlural; import static loadableUtils.utils.rcallOpt; import static loadableUtils.utils.childrenOfType; import static loadableUtils.utils.nanoTime; import static loadableUtils.utils.b; import static loadableUtils.utils.ewicOneOf; import static loadableUtils.utils.n; import static loadableUtils.utils.abs; import static loadableUtils.utils.prepareProgramFile; import static loadableUtils.utils.callMain; import static loadableUtils.utils.caseInsensitiveComparator; import static loadableUtils.utils.getComponents; import static loadableUtils.utils.rep; import static loadableUtils.utils.area; import static loadableUtils.utils.add; import static loadableUtils.utils.singleComponentPanel; import static loadableUtils.utils.simpleDateFormat_local; import static loadableUtils.utils.withMargin; import static loadableUtils.utils.addActionListener; import static loadableUtils.utils.hasMethod; import static loadableUtils.utils.setFrameIconLater; import static loadableUtils.utils.intersectRects; import static loadableUtils.utils.setSCPComponent; import static loadableUtils.utils.jPopDownButton_noText; import static loadableUtils.utils.swingLater; import static loadableUtils.utils.currentImage; import static loadableUtils.utils.boolOptParam; import static loadableUtils.utils.getOptMC; import static loadableUtils.utils.setImage; import static loadableUtils.utils.setFrameTitle; import static loadableUtils.utils.getScreenWidth; import static loadableUtils.utils.tsNow; import static loadableUtils.utils.jfind_preprocess; import static loadableUtils.utils.formatFunctionCall; import static loadableUtils.utils.dm_reload; import static loadableUtils.utils.getDBProgramID; import static loadableUtils.utils.isIdentifier; import static loadableUtils.utils.getSnippetTitle; import static loadableUtils.utils.jFullCenter; import static loadableUtils.utils.dm_fieldCheckBox; import static loadableUtils.utils.indent; import static loadableUtils.utils.infoBox; import static loadableUtils.utils.toSeconds; import static loadableUtils.utils.rect; import static loadableUtils.utils.cleanUp; import static loadableUtils.utils.forEach; import static loadableUtils.utils.disposeWindow; import static loadableUtils.utils.textFieldFromComboBox; import static loadableUtils.utils.containsNewLines; import static loadableUtils.utils.moveToTopRightCorner; import static loadableUtils.utils.stdcompare; import static loadableUtils.utils.centerAndEast; import static loadableUtils.utils.metaMapPut; import static loadableUtils.utils.makeFrame; import static loadableUtils.utils.setDoubleBuffered; import static loadableUtils.utils.asVirtualList; import static loadableUtils.utils.bufferedImage; import static loadableUtils.utils.dm_q; import static loadableUtils.utils.javaTokForJFind_array; import static loadableUtils.utils.withLeftAndRightMargin; import static loadableUtils.utils.dm_doEvery; import static loadableUtils.utils.childOfType; import static loadableUtils.utils.hgrid; import static loadableUtils.utils.getFieldType; import static loadableUtils.utils.flattenArray2; import static loadableUtils.utils.getParent; import static loadableUtils.utils.strOrEmpty; import static loadableUtils.utils.run; import static loadableUtils.utils.has; import static loadableUtils.utils.last; import static loadableUtils.utils.caseInsensitiveSet; import static loadableUtils.utils.warn; import static loadableUtils.utils.distance; import static loadableUtils.utils.jrightAlignedLine; import static loadableUtils.utils.toRect; import static loadableUtils.utils.synchroSet; import static loadableUtils.utils.addIfNotNull; import static loadableUtils.utils.installTimer; import static loadableUtils.utils.clipBufferedImage; import static loadableUtils.utils.setText; import static loadableUtils.utils.findButton; import static loadableUtils.utils.splitAtSpace; import static loadableUtils.utils.getBounds; import static loadableUtils.utils.northAndCenterWithMargin; import static loadableUtils.utils.newConceptsWithClassFinder; import static loadableUtils.utils.replaceSublist; import static loadableUtils.utils.selectedItem; import static loadableUtils.utils.joinSubList; import static loadableUtils.utils.onSelectedItem; import static loadableUtils.utils.muricaCredentials; import static loadableUtils.utils.onUpdate; import static loadableUtils.utils.activateFrame; import static loadableUtils.utils.replace; import static loadableUtils.utils.findCodeTokens; import static loadableUtils.utils.format; import static loadableUtils.utils.heightForWidth; import static loadableUtils.utils.onEnter; import static loadableUtils.utils.hsplit; import static loadableUtils.utils.changeListener; import static loadableUtils.utils.containsNewLine; import static loadableUtils.utils.centerAndEastWithMargin; import static loadableUtils.utils.getFrame; import static loadableUtils.utils.countIterator_exclusive; import static loadableUtils.utils.centerAndSouth; import static loadableUtils.utils.dm_fieldLiveValue; import static loadableUtils.utils.isLetter; import static loadableUtils.utils.findAllFiles_noDirs; import static loadableUtils.utils.toObjectArray; import static loadableUtils.utils.rectFromPoints; import static loadableUtils.utils.runnableThread; import static loadableUtils.utils.toolTip; import static loadableUtils.utils.firstToUpper; import static loadableUtils.utils.findClass_fullName; import static loadableUtils.utils.withBottomMargin; import static loadableUtils.utils.jscroll_centered; import static loadableUtils.utils.parentFile; import static loadableUtils.utils.dm_rEnter; import static loadableUtils.utils.toString; import static loadableUtils.utils.mapI_if1; import static loadableUtils.utils.getProgramTitle; import static loadableUtils.utils.applyDefaultMargin; import static loadableUtils.utils.isDigit; import static loadableUtils.utils.regionMatches; import static loadableUtils.utils.warnIfOddCount; import static loadableUtils.utils.logQuoted; import static loadableUtils.utils.synchronizedMRUCache; import static loadableUtils.utils.bindLiveValueListenerToComponent; import static loadableUtils.utils.screenBounds; import static loadableUtils.utils.myFrames; import static loadableUtils.utils.toRectangle; import static loadableUtils.utils.widthForHeight; import static loadableUtils.utils.jLiveValueLabel; import static loadableUtils.utils.shortClassName_dropNumberPrefix; import static loadableUtils.utils.identityHashCode; import static loadableUtils.utils.appendToFileBaseName; import static loadableUtils.utils.jbutton; import static loadableUtils.utils.setEnabled; import static loadableUtils.utils.functionCall; import static loadableUtils.utils.javaTokForStructure; import static loadableUtils.utils.isCISet; import static loadableUtils.utils.northAndCenter; import static loadableUtils.utils.toMS; import static loadableUtils.utils.vmBus_query; import static loadableUtils.utils.change; import static loadableUtils.utils.toPath; import static loadableUtils.utils.getPreferredSize; import static loadableUtils.utils.md5; import static loadableUtils.utils.renderFileInfo; import static loadableUtils.utils.jCheckBoxMenuItem; import static loadableUtils.utils.appendToFile; import static loadableUtils.utils.jenableUndoRedo; import static loadableUtils.utils.setChecked; import static loadableUtils.utils.setFont; import static loadableUtils.utils.syncList; import static loadableUtils.utils.takeFirst; import static loadableUtils.utils.isEditableComboBox; import static loadableUtils.utils.plus; import static loadableUtils.utils.dm_watchField; import static loadableUtils.utils.codeTokensAsStringArray; import static loadableUtils.utils.ifloor; import static loadableUtils.utils.repeat; import static loadableUtils.utils.structureForUser; import static loadableUtils.utils.jCheckBox; import static loadableUtils.utils.asArray; import static loadableUtils.utils.pt; import static loadableUtils.utils.showText; import static loadableUtils.utils.setDefaultClassFinder; import static loadableUtils.utils.singular; import static loadableUtils.utils.minus; import static loadableUtils.utils.syncAddOrCreate; import static loadableUtils.utils.keysList; import static loadableUtils.utils.fileNameEncode; import static loadableUtils.utils.reversedList; import static loadableUtils.utils.intRange; import static loadableUtils.utils.getScreenHeight; import static loadableUtils.utils.fillRect; import static loadableUtils.utils.indentx; import static loadableUtils.utils.getSelectedItem; import static loadableUtils.utils.isChecked; import static loadableUtils.utils.similarEmptyMap; import static loadableUtils.utils.toFile; import static loadableUtils.utils.onMouseDown; import static loadableUtils.utils.dropFirst; import static loadableUtils.utils.mod; import static loadableUtils.utils.findClass; import static loadableUtils.utils.humanizeFormLabel; import static loadableUtils.utils.addSuffix; import static loadableUtils.utils.wrapForSmartAdd; import static loadableUtils.utils.intToHex_flexLength; import static loadableUtils.utils.asSet; import static loadableUtils.utils.autoFrameTitle; import static loadableUtils.utils.shootScreen2; import static loadableUtils.utils.hopeningTag; import static loadableUtils.utils.filter; import static loadableUtils.utils.mapPut; import static loadableUtils.utils.tag; import static loadableUtils.utils.onChange; import static loadableUtils.utils.mapToParams; import static loadableUtils.utils.uniqueFileNameUsingMD5_80_v2; import static loadableUtils.utils.applyMargin; import static loadableUtils.utils.withTopMargin; import static loadableUtils.utils.error; import static loadableUtils.utils.sysNow; import static loadableUtils.utils.elapsedSeconds; import static loadableUtils.utils.hotwire; import static loadableUtils.utils.heldInstance; import static loadableUtils.utils.getProgramName; import loadableUtils.utils.Pair; import loadableUtils.utils.BetterThreadLocal; import loadableUtils.utils.IBWImage; import loadableUtils.utils.WidthAndHeight; import loadableUtils.utils.Enterable; import static loadableUtils.utils._MethodCache; import static loadableUtils.utils.defaultMargin; import static loadableUtils.utils.showForm_makeFrame; import javax.swing.border.*; import java.text.NumberFormat; import javax.imageio.metadata.*; import javax.imageio.stream.*; import java.text.SimpleDateFormat; import java.nio.charset.Charset; import java.nio.file.*; import static java.nio.file.StandardWatchEventKinds.*; import java.awt.datatransfer.*; import java.awt.datatransfer.StringSelection; import java.awt.geom.AffineTransform; import java.text.*; import java.awt.geom.*; class main { static public String programID; static public void _onLoad_initUtils() { utils.__javax = javax(); } static public void _onLoad_defaultClassFinder() { setDefaultClassFinder(new F1() { public Class get(String name) { name = replacePrefix("loadableUtils.utils$", "main$", name); print("_onLoad_defaultClassFinder " + name); Class c = findClass_fullName(name); if (c != null) return c; if (name.startsWith("main$")) return loadableUtils.utils.findClass_fullName("loadableUtils.utils" + name.substring(4)); return null; } }); } static public ThreadLocal dynamicObjectIsLoading_threadLocal() { return DynamicObject_loading; } static public class GazelleScreenCam extends DynModule { volatile public boolean enabled = true; transient public JPanel buttons; public void setEnabled(boolean b) { setField("enabled", b); } public JComponent visualize_enabled() { return dm_checkBox("enabled"); } public int pixelRows = 128, colors = 8; public String script, testScreenScript; public boolean animate = true; public boolean horizontalLayout = false; public WatchTarget watchTarget; transient public ImageSurface isPosterized, isRegions, isTestScreen; transient public ScreenCamStream imageStream = new ScreenCamStream(); transient public BWIntegralImageStream integralImages = new BWIntegralImageStream(); transient public SourceTriggeredStream scaledAndPosterizedImages = new SourceTriggeredStream(); transient public DoubleFPSCounter fpsCounter = new DoubleFPSCounter(); transient public int fps; transient public WatchTargetSelector watchTargetSelector; transient public RollingAverage remainingMSPerFrame = new RollingAverage(); transient public int remainingMS; transient public FunctionTimings functionTimings = new FunctionTimings(); transient public ReliableSingleThread rstRunScript = dm_rst(me(), new Runnable() { public void run() { try { _runScript(); } catch (Exception __e) { throw rethrow(__e); } } public String toString() { return "_runScript();"; } }); transient public JGazelleVScriptRunner scriptRunner; transient public JGazelleVScriptRunner testScreenScriptRunner; transient public Animation animation; transient public FastRegions_BWImage mainScreenRegions; transient public UIURLSystem uiURLs; transient public Concepts concepts; public String uiURL; transient public FileWatchService fileWatcher; transient public SimpleCRUD_v2