func Write(ic *IntCode, input int) {
	// sig = <-ic.signalChan
	// if sig == SigError {
	// 	errOutput := <-ic.errorChan
	// 	err = fmt.Errorf("Program error: %v", errOutput)
	// } else if sig == SigInput {
	ic.inputChan <- input
	// 	sig = SigNone
	// 	err = nil
	// }

	// select {
	// case ic.inputChan <- input:
	// 	sig = SigNone
	// 	err = nil

	// case sig = <-ic.signalChan:
	// 	if sig == SigError {
	// 		errOutput := <-ic.errorChan
	// 		err = fmt.Errorf("Program error: %v", errOutput)
	// 	} else if sig == SigInput {
	// 		ic.inputChan <- input
	// 		sig = SigNone
	// 		err = nil
	// 	}
	// }

	return
}
// Write writes input to the intcode. Will return signal recieved and error if present
//func Write(ic *IntCode, input int) (sig Signal, err error) {
Write writes input to the intcode. Will return signal recieved and error if present
func Write(ic *IntCode, input int) (sig Signal, err error) {
// Write writes input to the intcode . Will return signal recieved and error if present // func Write ( ic * IntCode input int ) ( sig Signal err error ) {
func Write(ic *IntCode, input int) {
	ic.inputChan <- input
	return
}
func Write ( ic * IntCode , input int ) { ic . inputChan <- input return }
Write writes input to the intcode.
Write writes input to the intcode .
// sig = <-ic.signalChan // if sig == SigError { // 	errOutput := <-ic.errorChan // 	err = fmt.Errorf("Program error: %v", errOutput) // } else if sig == SigInput { // 	sig = SigNone // 	err = nil // } // select { // case ic.inputChan <- input: // 	sig = SigNone // 	err = nil // case sig = <-ic.signalChan: // 	if sig == SigError { // 		errOutput := <-ic.errorChan // 		err = fmt.Errorf("Program error: %v", errOutput) // 	} else if sig == SigInput { // 		ic.inputChan <- input // 		sig = SigNone // 		err = nil // 	} // }