Added GPL to the code