# R Italian translation
# Copyright (C) The R Foundation
# This file is distributed under the same license as the R package.
# Daniele Medri <dmedri@gmail.com>, 2005-2020.
#
msgid ""
msgstr ""
"Project-Id-Version: R-stats 4\n"
"Report-Msgid-Bugs-To: bugs.r-project.org\n"
"POT-Creation-Date: 2020-03-07 10:18\n"
"PO-Revision-Date: \n"
"Last-Translator: Daniele Medri <dmedri@gmail.com>\n"
"Language-Team: Italian https://github.com/dmedri/R-italian-lang\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 2.2.1\n"

msgid ""
"some named arguments in 'fixed' are not arguments to the supplied log-"
"likelihood"
msgstr ""
"alcuni argomenti nominati in 'fixed' non sono argomenti passati alla log-"
"verosimiglianza"

msgid "'start' must be a named list"
msgstr "'start' dev'essere una lista nominata"

msgid ""
"some named arguments in 'start' are not arguments to the supplied log-"
"likelihood"
msgstr ""
"alcuni argomenti nominati in 'start' non sono argomenti passati alla log-"
"verosimiglianza"

msgid ""
"profiling has found a better solution, so original fit had not converged"
msgstr ""
"la profilazione ha trovato una soluzione migliore, quindi la stima originale "
"non converge"

msgid "levels truncated to positive values only"
msgstr "livelli troncati solo a valori positivi"

msgid "extra arguments discarded"
msgstr "argomenti extra ignorati"
