@Override
        public void run() {
            while(true) {
                try {
                    sleep(1000);
                } catch (InterruptedException ex) {
                    Logger.getLogger(Colony.class.getName()).log(Level.SEVERE, null, ex);
                }
                try {
                    synchronized(depot.getMaterials()) {
                        if(depot.getMaterials().isEmpty() == false) {
                            for(Material m : depot.getMaterials()) {
                                if(m instanceof ImpermanentMaterial) {
                                    if(((ImpermanentMaterial)m).isIsBad() == true) {
                                        setAmountOfGold(getAmountOfGold() + m.getPrice());
                                        depot.setCurrentCapacity(depot.getCurrentCapacity() - m.getWeight());
                                        //((ImpermanentMaterial)m).getLowerer().stop();
                                        depot.getMaterials().remove(m);
                                    }
                                }
                            }
                        }
                    }
                } catch (ConcurrentModificationException ex) {
                    try {
                        sleep(100);
                    } catch (InterruptedException ex1) {
                        Logger.getLogger(Colony.class.getName()).log(Level.SEVERE, null, ex1);
                    }
                }

            }
        }