added all the necessary third party elisp code