public void move(long time) {
        if (list.size() > 0) {
            for (Message message : list) {
                message.move(time);
            }
            for (Message message : list) {
                if (message.state == DeliverState.delivered)
                    continue;
                if (message.state == DeliverState.inbox) {
                    message.edge.to.receive(message);
                } else {
                    break;
                }
            }
        }
    }