###############################################################################
# Copyright (c) 2000, 2003 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials 
# are made available under the terms of the Common Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/cpl-v10.html
# 
# Contributors:
#     IBM Corporation - initial API and implementation
###############################################################################

AntInputHandler.Ant_Input_Request_1=Ant Input Request
AntInputHandler.Invalid_input_2=Invalid input
AntInputHandler.Unable_to_respond_to_<input>_request_4=Unable to respond to <input> request

AntProcessBuildLogger.BUILD_FAILED__{0}_1=BUILD FAILED: {0}
AntProcessBuildLogger.Total_time=Total time: 
AntProcessBuildLogger._minutes_2=\ minutes
AntProcessBuildLogger._minute_3=\ minute
AntProcessBuildLogger._seconds_4=\ seconds
AntProcessBuildLogger._second_5=\ second
AntProcessBuildLogger._milliseconds_6=\ milliseconds
