add program method