# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/default/linux/arm64/13.0/use.stable.mask,v 1.1 2014/01/14 20:47:47 vapier Exp $

# Markus Meier <maekke@gentoo.org> (26 Dec 2013)
# Unmask dev-lang/python-3.3* targets, bug #474128
-python_targets_python3_3
-python_single_target_python3_3
