Buggy code:
public class UserInterface { private static final int EXIT = 0 ; private static final int ADD_CLIENT = 1 ; private static final int REMOVE_CLIENT = 2 ; private static final int LIST_CLIENTS = 3 ; private static final int ADD_MEMBER = 4 ; private static final int REMOVE_MEMBER = 5 ; private static final int ADD_CREDIT_CARD = 6 ; private static final int REMOVE_CREDIT_CARD = 7 ; private static final int LIST_MEMBER = 8 ; private static final int ADD_SHOW = 9 ; private static final int LIST_SHOWS = 10 ; private static final int SAVE_DATA = 11 ; private static final int RETRIEVE_DATA = 12 ; private static final int SELL_REGULAR_TICKET = 13 ; private static final int SELL_ADVANCE_TICKET = 14 ; private static final int SELL_STUDENT_ADVANCE_TICKET = 15 ; private static final int PAY_CLIENT = 16 ; private static final int PRINT_ALL_TICKETS = 17 ; private static final int HELP = 18 ; private static UserInterface userInterface ; private static Theater theater ; private BufferedReader reader = new BufferedReader ( new InputStreamReader ( System . in ) ) ; SimpleDateFormat dateFormat = new SimpleDateFormat ( "MM//dd//yyyy" ) ; String name ; Integer capacity ; private UserInterface ( ) { } public static UserInterface instance ( ) { } public static void main ( String [ ] args ) { } public int getNumber ( String prompt ) { } public BigDecimal getPrice ( String prompt ) { } private boolean yesOrNo ( String prompt ) { } public void help ( ) { } public void process ( ) { } public int getCommand ( ) { } public String getToken ( String prompt ) { } public Calendar getDate ( String prompt ) { } private void addClient ( ) { } private void removeClient ( ) { } private void listClients ( ) { } private void addMemeber ( ) { } private void removeMember ( ) { } private void addCreditCard ( ) { } private void removeCreditCard ( ) { } private void listMember ( ) { } private void addShow ( ) { Show show ; do { String id = getToken ( "Please<seq2seq4repair_space>enter<seq2seq4repair_space>a<seq2seq4repair_space>client<seq2seq4repair_space>ID" ) ; Client client = UserInterface . theater . searchClient ( id ) ; if ( client != null ) { String showTitle = getToken ( "What<seq2seq4repair_space>is<seq2seq4repair_space>the<seq2seq4repair_space>title<seq2seq4repair_space>of<seq2seq4repair_space>the<seq2seq4repair_space>show?" ) ; Calendar startDate = getDate ( "Enter<seq2seq4repair_space>a<seq2seq4repair_space>start<seq2seq4repair_space>date:<seq2seq4repair_space>mm//dd//yy" ) ; Calendar endDate = getDate ( "Enter<seq2seq4repair_space>a<seq2seq4repair_space>end<seq2seq4repair_space>date:<seq2seq4repair_space>mm//dd//yy" ) ; BigDecimal price = getPrice ( "Please<seq2seq4repair_space>enter<seq2seq4repair_space>the<seq2seq4repair_space>cost<seq2seq4repair_space>of<seq2seq4repair_space>a<seq2seq4repair_space>ticket" ) ; while ( startDate . after ( endDate ) ) { System . out . println ( "Please<seq2seq4repair_space>enter<seq2seq4repair_space>a<seq2seq4repair_space>start<seq2seq4repair_space>date<seq2seq4repair_space>that<seq2seq4repair_space>is<seq2seq4repair_space>before<seq2seq4repair_space>the<seq2seq4repair_space>end<seq2seq4repair_space>date" ) ; startDate = getDate ( "Enter<seq2seq4repair_space>a<seq2seq4repair_space>start<seq2seq4repair_space>date:<seq2seq4repair_space>mm//dd//yy" ) ; endDate = getDate ( "Enter<seq2seq4repair_space>a<seq2seq4repair_space>end<seq2seq4repair_space>date:<seq2seq4repair_space>mm//dd//yy" ) ; } <START_BUG> show = UserInterface . theater . addShow ( id , showTitle , startDate , endDate , price ) ; <END_BUG> if ( show != null ) { System . out . println ( show ) ; } else { System . out . println ( "These<seq2seq4repair_space>date//s<seq2seq4repair_space>are<seq2seq4repair_space>already<seq2seq4repair_space>booked!" ) ; } } else { System . out . println ( "No<seq2seq4repair_space>such<seq2seq4repair_space>client<seq2seq4repair_space>exists!" ) ; } if ( ! ( yesOrNo ( "Add<seq2seq4repair_space>another<seq2seq4repair_space>show?" ) ) ) { break ; } } while ( true ) ; } private void listShows ( ) { } private void saveData ( ) { } private void retrieve ( ) { } private void sellRegularTicket ( ) { } private void sellAdvanceTicket ( ) { } private void sellStudentAdvanceTicket ( ) { } private void sellAnyTicket ( int ticketType ) { } private int getValidTicketAmount ( ) { } private void payClient ( ) { } private void printAllTickets ( ) { } private Calendar getCreditCardExpirationDate ( String prompt ) { } private String getCreditCardNumber ( String prompt ) { } }

Fix:
show = UserInterface . theater . addShow ( client , showTitle , startDate , endDate , price ) ;