#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Plug-in
pluginName=Edycja biblioteki EPF
providerName=Eclipse.org

_UI_Content_group=Tre\u015b\u0107 metody

_UI_Disciplines_group=Regu\u0142y
_UI_Domains_group=Domeny
_UI_WorkProductTypes_group=Typy produkt\u00f3w pracy
_UI_Role_Sets_group=Zestawy r\u00f3l
_UI_Tools_group=Narz\u0119dzia
_UI_Standard_Categories_group=Kategorie standardowe
_UI_Custom_Categories_group=Kategorie niestandardowe
_UI_MethodContent_group=Pakiety tre\u015bci

_UI_Processes_group=Procesy
_UI_PlanningTemplates_group=Szablony planowania

_UI_CapabilityPatterns_text=Wzorce mo\u017cliwo\u015bci
_UI_DeliveryProcesses_text=Procesy dostarczania
_UI_ProcessContributions_text=Procesy r\u00f3\u017cnicowe
_UI_PlanningTemplates_text=Szablony planowania

_UI_CapabilityPattern_text=Wzorzec mo\u017cliwo\u015bci
_UI_DeliveryProcess_text=Proces dostarczania
_UI_ProcessContribution_text=Proces r\u00f3\u017cnicowy

_UI_Configurations_text=Konfiguracje

_UI_ProcessFamilies_text=Rodziny proces\u00f3w

_UI_Uncategorized_text=Nieskategoryzowane
_UI_Uncategorized_Tasks_text=Nieskategoryzowane zadania
_UI_Uncategorized_Roles_text=Nieskategoryzowane role

_UI_Guidances_group=Wskaz\u00f3wki
_UI_Guidances_Checklists=Listy kontrolne
_UI_Guidances_Concepts=Poj\u0119cia
_UI_Guidances_Examples=Przyk\u0142ady
_UI_Guidances_EstimationConsiderations=Zagadnienia dotycz\u0105ce szacowania
_UI_Guidances_Practices=Procedury
_UI_Guidances_Reports=Raporty
_UI_Guidances_ReusableAssets=Zasoby wielokrotnego u\u017cytku
_UI_Guidances_Roadmap=Przewodnik
_UI_Guidances_SupportingMaterials=Materia\u0142y pomocnicze
_UI_Guidances_Techniques=Techniki
_UI_Guidances_Templates=Szablony
_UI_Guidances_TermDefinitions=Definicje termin\u00f3w
_UI_Guidances_ToolMentors=Mentory narz\u0119dzi
_UI_Guidances_Whitepapers=Raporty
_UI_Guidances_WorkProductGuidelines=Wytyczne
_UI_Key_Concepts=Kluczowe poj\u0119cia


_UI_Roles_group=Role
_UI_Tasks_group=Zadania
_UI_WorkProducts_group=Produkty pracy
_UI_Activities_group=Dzia\u0142ania

# Breakdown structure column display names
BS_Column_name=Nazwa
BS_Column_prefix=Przedrostek
BS_Column_id=Indeks
BS_Column_predecessors=Poprzednicy
BS_Column_is_repeatable=Powtarzalne
BS_Column_is_ongoing=Aktualne
BS_Column_is_event_driven=Sterowane zdarzeniami
BS_Column_entry_state=Stan wej\u015bciowy
BS_Column_exit_state=Stan wyj\u015bciowy
BS_Column_teams=Zesp\u00f3\u0142
BS_Column_type=Typ
BS_Column_model_info=Informacja o modelu
BS_Column_presentation_name=Nazwa prezentacji
BS_Column_deliverable=Produkt cz\u0105stkowy
BS_Column_is_optional=Opcjonalnie
BS_Column_is_planned=Planowane
BS_Column_has_multiple_occurrences=Wielokrotne wyst\u0105pienia

