pre-programming