program functionally complete