include some instructions
improoved API