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 javax.imageio.*;
import java.math.*;
import static x30_pkg.x30_util.DynamicObject;
import javax.swing.undo.UndoManager;
import java.awt.datatransfer.StringSelection;
import javax.imageio.metadata.*;
import javax.imageio.stream.*;
import java.text.SimpleDateFormat;
import java.nio.charset.Charset;
import java.awt.geom.*;
import java.text.NumberFormat;
class main {
static LiveValue dm_transientCalculatedLiveValue(Class type, IF0 calc) { return dm_transientCalculatedLiveValue(dm_current_mandatory(), type, calc); }
static LiveValue dm_transientCalculatedLiveValue(DynModule mod, Class type, IF0 calc) {
Lock __0 = mod.lock; lock(__0); try {
SimpleLiveValue value = new SimpleLiveValue(type, calc.get());
mod.onFieldChange(new VF1() { public void get(String field) { try { value.set(calc.get()) ; } catch (Exception __e) { throw rethrow(__e); } }
public String toString() { return "value.set(calc!)"; }});
return value;
} finally { unlock(__0); } }
static LiveValue