basic polt functions complete