public void openFrom(TaskManager tks, InputStream is)
            throws FileNotFoundException, IOException {
        Scanner sc = new Scanner(is);
        if (!sc.hasNext()) {
            // create empty
            //save(tks);
        } else {
            // read in full
            String token = sc.next();
            if (!(token.equals("tasker0.1") || token.equals("tasker0.2"))) {
                throw new IOException("unsupported version");
            }
            String nxt = sc.next();
            if (!nxt.equals("empty")) {
                if (!nxt.equals("current:")) {
                    throw new IOException("invalid file");
                }
                tks.addTask(makeTask(sc));
                if (!sc.next().equals("others:")) {
                    throw new IOException("invalid file");
                }
                while (sc.hasNext()) {
                    tks.addTask(makeTask(sc));
                }
            }
        }
    }