added GPL 3