public boolean insert(String word){
        TrieNode location = root;
        boolean result = false;

        int char_code;

        for(int i = 0; i < word.length(); i++) {
            char_code = word.charAt(i) - 'a';

            if(location.getBranch(char_code) == null){
                location.createBranch(char_code);
            }

            location = location.getBranch(char_code);
        }

        if(!location.getFlag()){
            location.setFlag(true);
            result = true;
        }

        return result;
    }