added snaptonote core functionality