implemented correct epsilon-production while keeping the grammar