removed c89 restriction