# Copyright 2009 The Go Authors. All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.

# Copy this file to key.py after substituting the real key.

# accessKey controls private access to the build server (i.e. to record new
# builds). It's tranmitted in the clear but, given the low value of the target,
# this should be sufficient.
accessKey = "this is not the real key"
