// Path: HackPackage/src/main/java/Hack/Controller/Profiler.java
// public interface Profiler {
// 
//     void reset();
// 
//     String[] getTabNames();
// 
//     String[] getTableHeaders(int tab);
// 
//     Map<String, AtomicInteger> getData(int tab);
// 
//     boolean isEnabled();
// 
//     void setEnabled(boolean enabled);
// }


import Hack.Controller.Profiler;
import javax.swing.*;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import static java.util.Map.Entry;
package HackGUI;




public class ProfilerWindow extends JFrame {
    public static final Comparator<Entry<String, AtomicInteger>> ENTRY_COMPARATOR =
            new Comparator<Entry<String, AtomicInteger>>() {
                @Override
                public int compare(Entry<String, AtomicInteger> o1, Entry<String, AtomicInteger> o2) {
                    return o2.getValue().get() - o1.getValue().get();
                }
            };
// Path: HackPackage/src/main/java/Hack/Controller/Profiler.java
// public interface Profiler {
// 
//     void reset();
// 
//     String[] getTabNames();
// 
//     String[] getTableHeaders(int tab);
// 
//     Map<String, AtomicInteger> getData(int tab);
// 
//     boolean isEnabled();
// 
//     void setEnabled(boolean enabled);
// }


// Path: HackGUIPackage/src/main/java/HackGUI/ProfilerWindow.java
import Hack.Controller.Profiler;
import javax.swing.*;
import javax.swing.table.AbstractTableModel;
import javax.swing.table.TableModel;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
import static java.util.Map.Entry;

package HackGUI;




public class ProfilerWindow extends JFrame {
    public static final Comparator<Entry<String, AtomicInteger>> ENTRY_COMPARATOR =
            new Comparator<Entry<String, AtomicInteger>>() {
                @Override
                public int compare(Entry<String, AtomicInteger> o1, Entry<String, AtomicInteger> o2) {
                    return o2.getValue().get() - o1.getValue().get();
                }
            };
    private final Profiler profiler;