API Reference
SmartWizard
SmartWizard component for creating step-by-step wizards with validation support.
Inheritance
- Element
- SmartWizard
Constructors
public SmartWizard() #Initializes a new instance of the SmartWizard class.
Methods
public SmartWizard AddStep(String title, Action<SmartWizardStep> configure = null) #SmartWizardAdds a new step to the wizard.
Parameters
- title System.String
- The step title.
- configure System.Action{HtmlForgeX.SmartWizardStep} = null
- Optional configuration action for the step.
Returns
The current instance for method chaining.
public SmartWizard AddStep(String title, TablerIconType icon, String subtitle = null, Action<SmartWizardStep> configure = null) #SmartWizardAdds a new step with icon and subtitle.
Parameters
- title System.String
- The step title.
- icon HtmlForgeX.TablerIconType
- The step icon.
- subtitle System.String = null
- The step subtitle.
- configure System.Action{HtmlForgeX.SmartWizardStep} = null
- Optional configuration action for the step.
Returns
The current instance for method chaining.
public SmartWizard AddStep(String title, TablerIconType icon, Action<SmartWizardStep> configure) #SmartWizardAdds a new step with icon and configuration.
Parameters
- title System.String
- The step title.
- icon HtmlForgeX.TablerIconType
- The step icon.
- configure System.Action{HtmlForgeX.SmartWizardStep}
- Configuration action for the step.
Returns
The current instance for method chaining.
public SmartWizard AddStepValidation(Int32 stepIndex, String validationFunction) #SmartWizardAdds a validation function for a specific step.
Parameters
- stepIndex System.Int32
- The step index.
- validationFunction System.String
- The JavaScript validation function.
Returns
The current instance for method chaining.
public SmartWizard AsVertical() #SmartWizardEditorBrowsable(2)Sets the wizard orientation to vertical.
Returns
The current instance for method chaining.
public SmartWizard AutoAdjustHeight(Boolean enabled = true) #SmartWizardEditorBrowsable(2)Controls how the wizard decides the height of the step content area.
Parameters
- enabled System.Boolean = true
- When true (vendor mode), SmartWizard sets a fixed height on the content wrapper based on the measured height of the selected step. This enables smooth animated transitions between steps, but can lead to clipping or extra whitespace if the inner content changes size after the measurement (for example, nested tabs toggling, DataTables auto-sizing, accordions expanding, or images/fonts loading). When false (HFX natural mode), the content wrapper is allowed to size naturally (height:auto) and HtmlForgeX scripts (hfx-smartwizard.js, hfx-visibility.js) keep layout correct by recalculating after tab/collapse events and on resize. This is recommended for Guidance-like flows with nested tabs, grids, charts, and other dynamic content.
Returns
The current instance for method chaining.
public SmartWizard BackButtonSupport(Boolean enabled = true) #SmartWizardEditorBrowsable(2)Enables or disables browser back button support.
Parameters
- enabled System.Boolean = true
- Whether to enable back button support.
Returns
The current instance for method chaining.
BuildInitializationScript() #Builds the SmartWizard initialization script.
public SmartWizard ConfigureKeyboard(Action<SmartWizardKeyboard> configure) #SmartWizardConfigures custom keyboard shortcuts.
Parameters
- configure System.Action{HtmlForgeX.SmartWizardKeyboard}
- Configuration action for keyboard settings.
Returns
The current instance for method chaining.
public SmartWizard EnableUrlHash(Boolean enabled = true) #SmartWizardEditorBrowsable(2)Enables or disables URL hash navigation.
Parameters
- enabled System.Boolean = true
- Whether to enable URL hash navigation.
Returns
The current instance for method chaining.
public String GoToNext() #StringGenerates JavaScript code to navigate to the next step.
Returns
JavaScript method call string.
public String GoToPrevious() #StringGenerates JavaScript code to navigate to the previous step.
Returns
JavaScript method call string.
public String GoToStep(Int32 index, Boolean force = false) #StringGenerates JavaScript code to navigate to a specific step.
Parameters
- index System.Int32
- The step index.
- force System.Boolean = false
- Whether to force navigation.
Returns
JavaScript method call string.
public SmartWizard Justified(Boolean justified = true) #SmartWizardEditorBrowsable(2)Sets whether navigation menu should be justified.
Parameters
- justified System.Boolean = true
- Whether to justify navigation menu.
Returns
The current instance for method chaining.
public SmartWizard OnInitialized(String handler) #SmartWizardAdds an event handler for the initialized event.
Parameters
- handler System.String
- The JavaScript event handler code.
Returns
The current instance for method chaining.
public SmartWizard OnLeaveStep(String handler) #SmartWizardAdds an event handler for the leaveStep event.
Parameters
- handler System.String
- The JavaScript event handler code.
Returns
The current instance for method chaining.
public SmartWizard OnLoaded(String handler) #SmartWizardAdds an event handler for the loaded event.
Parameters
- handler System.String
- The JavaScript event handler code.
Returns
The current instance for method chaining.
public SmartWizard OnShowStep(String handler) #SmartWizardAdds an event handler for the showStep event.
Parameters
- handler System.String
- The JavaScript event handler code.
Returns
The current instance for method chaining.
RegisterLibraries() #Registers the required libraries for SmartWizard.
public String Reset() #StringGenerates JavaScript code to reset the wizard.
Returns
JavaScript method call string.
public String SetState(Int32[] stepIndexes, SmartWizardStepState state) #StringGenerates JavaScript code to set step state.
Parameters
- stepIndexes System.Int32[]
- The step indexes.
- state HtmlForgeX.SmartWizardStepState
- The state to set.
Returns
JavaScript method call string.
public SmartWizard Settings(Action<SmartWizardSettings> configure) #SmartWizardGroups less-common options under a single fluent entry point to keep IntelliSense lean.
Parameters
- configure System.Action{HtmlForgeX.SmartWizardSettings}
UpdateStepStates() #Sets step states based on the current step configuration.
public SmartWizard WithButtonText(String nextText = "Next", String previousText = "Previous") #SmartWizardSets the button text for the wizard.
Parameters
- nextText System.String = "Next"
- Text for the Next button.
- previousText System.String = "Previous"
- Text for the Previous button.
Returns
The current instance for method chaining.
public SmartWizard WithContainerClass(String cssClass) #SmartWizardEditorBrowsable(2)Sets custom CSS classes for the container.
Parameters
- cssClass System.String
- The CSS class names.
Returns
The current instance for method chaining.
public SmartWizard WithContentClass(String cssClass) #SmartWizardEditorBrowsable(2)Sets custom CSS classes for the content container.
Parameters
- cssClass System.String
- The CSS class names.
Returns
The current instance for method chaining.
public SmartWizard WithSelectedStep(Int32 index) #SmartWizardEditorBrowsable(2)Sets the initially selected step.
Parameters
- index System.Int32
- The zero-based index of the step to select.
Returns
The current instance for method chaining.
public SmartWizard WithSurface(SmartWizardSurfaceStyle style) #SmartWizardEditorBrowsable(2)Applies a reusable HtmlForgeX surface style around the SmartWizard frame.
Parameters
- style HtmlForgeX.SmartWizardSurfaceStyle
- The surface style to apply.
Returns
The current instance for method chaining.
public SmartWizard WithTheme(SmartWizardTheme theme) #SmartWizardEditorBrowsable(2)Sets the theme for the SmartWizard.
Parameters
- theme HtmlForgeX.SmartWizardTheme
- The theme to apply.
Returns
The current instance for method chaining.
public SmartWizard WithToolbar(SmartWizardToolbarPosition position) #SmartWizardEditorBrowsable(2)Configures the toolbar position.
Parameters
- position HtmlForgeX.SmartWizardToolbarPosition
- The toolbar position.
Returns
The current instance for method chaining.
public SmartWizard WithToolbarButtons(Boolean showNext = true, Boolean showPrevious = true) #SmartWizardEditorBrowsable(2)Configures toolbar buttons.
Parameters
- showNext System.Boolean = true
- Whether to show Next button.
- showPrevious System.Boolean = true
- Whether to show Previous button.
Returns
The current instance for method chaining.
public SmartWizard WithToolbarContent(Element element) #SmartWizardAdds extra HTML content to the toolbar.
Parameters
- html System.String
- The HTML content to add.
Returns
The current instance for method chaining.
WithToolbarContent(HtmlForgeX.Element element) #Adds extra toolbar content using a typed element (no raw HTML string required). The element is attached to the logical tree so libraries can be registered correctly.
Parameters
- element HtmlForgeX.Element
public SmartWizard WithTransition(SmartTabAnimation animation, Int32 speed = 400, String easing = null) #SmartWizardEditorBrowsable(2)Configures the transition animation.
Parameters
- animation HtmlForgeX.SmartTabAnimation
- The animation type.
- speed System.Int32 = 400
- The animation speed in milliseconds.
- easing System.String = null
- The easing function.
Returns
The current instance for method chaining.
Inherited Methods
public TablerAccordion Accordion(Action<TablerAccordion> config) #TablerAccordionParameters
- config Action<TablerAccordion>
public TablerActionsAndNotesCard ActionsAndNotesCard(Action<TablerActionsAndNotesCard> config) #TablerActionsAndNotesCardParameters
- config Action<TablerActionsAndNotesCard>
public TablerActionSummaryCard ActionSummaryCard(Action<TablerActionSummaryCard> config) #TablerActionSummaryCardParameters
- config Action<TablerActionSummaryCard>
public TablerActivityFeedCard ActivityFeedCard(Action<TablerActivityFeedCard> config) #TablerActivityFeedCardParameters
- config Action<TablerActivityFeedCard>
public override Element Add(Element element) #ElementParameters
- element Element
public TablerAlert Alert(String title, String message, TablerColor alertColor = Default, TablerAlertType alertType = Regular) #TablerAlertParameters
- title String
- message String
- alertColor TablerColor = Default
- alertType TablerAlertType = Regular
public TablerAnalyticsSummaryCard AnalyticsSummaryCard(Action<TablerAnalyticsSummaryCard> config) #TablerAnalyticsSummaryCardParameters
- config Action<TablerAnalyticsSummaryCard>
public ApexCharts ApexChart(Action<ApexCharts> config) #ApexChartsParameters
- config Action<ApexCharts>
public TablerApexChartCard ApexChartCard(Action<TablerApexChartCard> config) #TablerApexChartCardParameters
- config Action<TablerApexChartCard>
public TablerAuditLogCard AuditLogCard(Action<TablerAuditLogCard> config) #TablerAuditLogCardParameters
- config Action<TablerAuditLogCard>
public TablerAvatar Avatar() #TablerAvatarParameters
- config Action<TablerAvatar>
public TablerAvatarGroup AvatarGroup(Action<TablerAvatarGroup> config) #TablerAvatarGroupParameters
- config Action<TablerAvatarGroup>
public TablerBadge Badge(String text, TablerBadgeColor color, TablerBadgeVisualStyle style, TablerBadgeSize size, Boolean pill = true, String href = null) #TablerBadgeParameters
- text String
- color TablerBadgeColor = null
public TablerBadgeSpan BadgeSpan(String text, TablerColor color = Blue) #TablerBadgeSpanParameters
- text String
- color TablerColor = Blue
public TablerBadgeStatus BadgeStatus(String text, TablerColor color) #TablerBadgeStatusParameters
- text String
- color TablerColor
public TablerBreakdownCard BreakdownCard(Action<TablerBreakdownCard> config) #TablerBreakdownCardParameters
- config Action<TablerBreakdownCard>
public TablerButton Button(String text, TablerButtonVariant variant = Primary) #TablerButtonParameters
- text String
- config Action<TablerButton> = Primary
public TablerCalendarWorkspaceCard CalendarWorkspaceCard(Action<TablerCalendarWorkspaceCard> config) #TablerCalendarWorkspaceCardParameters
- config Action<TablerCalendarWorkspaceCard>
public TablerCard Card(Int32 count, Action<TablerCard> config) #TablerCardParameters
- config Action<TablerCard>
public TablerCardBasic CardBasic(String title, String text) #TablerCardBasicParameters
- title String
- text String
public TablerCarousel Carousel(Action<TablerCarousel> config) #TablerCarouselParameters
- config Action<TablerCarousel>
public TablerCategoryBarChartCard CategoryBarChartCard(Action<TablerCategoryBarChartCard> config) #TablerCategoryBarChartCardParameters
- config Action<TablerCategoryBarChartCard>
public ChartJs ChartJs(Action<ChartJs> config) #ChartJsParameters
- config Action<ChartJs>
public TablerColumn Column(TablerColumnNumber number, Action<TablerColumn> config) #TablerColumnParameters
- config Action<TablerColumn>
public TablerControlBar ControlBar(Action<TablerControlBar> config) #TablerControlBarParameters
- config Action<TablerControlBar>
public TablerCookieBanner CookieBanner(Action<TablerCookieBanner> config) #TablerCookieBannerParameters
- config Action<TablerCookieBanner>
public TablerCountdown Countdown(Action<TablerCountdown> config = null) #TablerCountdownParameters
- config Action<TablerCountdown> = null
public TablerCountUp CountUp(Action<TablerCountUp> config) #TablerCountUpParameters
- config Action<TablerCountUp>
public TablerDataGrid DataGrid(Action<TablerDataGrid> config) #TablerDataGridParameters
- config Action<TablerDataGrid>
public TablerDataGridCard DataGridCard(Action<TablerDataGridCard> config) #TablerDataGridCardParameters
- config Action<TablerDataGridCard>
public TablerDataTableCard DataTableCard(Action<TablerDataTableCard> config) #TablerDataTableCardParameters
- config Action<TablerDataTableCard>
public VisNetwork DiagramNetwork(Action<VisNetwork> config) #VisNetworkParameters
- config Action<VisNetwork>
public TablerDistributionCard DistributionCard(Action<TablerDistributionCard> config) #TablerDistributionCardParameters
- config Action<TablerDistributionCard>
public HtmlTag Div(Action<HtmlTag> config) #HtmlTagParameters
- config Action<HtmlTag>
public TablerEmptyState EmptyState(Action<TablerEmptyState> config) #TablerEmptyStateParameters
- config Action<TablerEmptyState>
public TablerEmptyStateCard EmptyStateCard(Action<TablerEmptyStateCard> config) #TablerEmptyStateCardParameters
- config Action<TablerEmptyStateCard>
public override Boolean Equals(Object obj) #BooleanParameters
- obj Object
public FancyTree FancyTree(Action<FancyTree> config) #FancyTreeParameters
- config Action<FancyTree>
public TablerFlagIcon Flag(Country country) #TablerFlagIconParameters
- iso2 String
public TablerFlagList Flags(Action<TablerFlagList> config) #TablerFlagListParameters
- config Action<TablerFlagList>
public TablerForm Form(Action<TablerForm> config) #TablerFormParameters
- config Action<TablerForm>
public FullCalendar FullCalendar(Action<FullCalendar> config) #FullCalendarParameters
- config Action<FullCalendar>
public TablerGaugeCard GaugeCard(Action<TablerGaugeCard> config) #TablerGaugeCardParameters
- config Action<TablerGaugeCard>
public TablerGeoSummaryCard GeoSummaryCard(Action<TablerGeoSummaryCard> config) #TablerGeoSummaryCardParameters
- config Action<TablerGeoSummaryCard>
public HeaderLevel HeaderLevel(HeaderLevelTag level, String text) #HeaderLevelParameters
- level HeaderLevelTag
- text String
public TablerHeroCard HeroCard(Action<TablerHeroCard> config) #TablerHeroCardParameters
- config Action<TablerHeroCard>
public TablerHighlightCard HighlightCard(Action<TablerHighlightCard> config) #TablerHighlightCardParameters
- config Action<TablerHighlightCard>
public TablerIconElement Icon(TablerIconType icon, Action<TablerIconElement> config) #TablerIconElementParameters
- icon FontAwesomeSolid
- config Action<FontAwesomeIcon> = null
public TablerIconFont IconFont(TablerIconType icon) #TablerIconFontParameters
- icon String
public TablerIncidentTimelineCard IncidentTimelineCard(Action<TablerIncidentTimelineCard> config) #TablerIncidentTimelineCardParameters
- config Action<TablerIncidentTimelineCard>
public TablerInsightSummaryCard InsightSummaryCard(Action<TablerInsightSummaryCard> config) #TablerInsightSummaryCardParameters
- config Action<TablerInsightSummaryCard>
public TablerLightboxGallery LightboxGallery(Action<TablerLightboxGallery> config) #TablerLightboxGalleryParameters
- config Action<TablerLightboxGallery>
public TablerLineComparisonCard LineComparisonCard(Action<TablerLineComparisonCard> config) #TablerLineComparisonCardParameters
- config Action<TablerLineComparisonCard>
public TablerButton LinkButton(String text, String href, TablerButtonVariant variant = Primary) #TablerButtonParameters
- text String
- href String
- variant TablerButtonVariant = Primary
public TablerListCard ListCard(Action<TablerListCard> config) #TablerListCardParameters
- config Action<TablerListCard>
public TablerListGroup ListGroup(Action<TablerListGroup> config) #TablerListGroupParameters
- config Action<TablerListGroup>
public TablerLogs Logs(List<String> code, RGBColor backgroundColor, RGBColor textColor) #TablerLogsParameters
- code String
- theme TablerLogsTheme = Dark
- backgroundClass String = null
- textClass String = null
public TablerMapSummaryCard MapSummaryCard(Action<TablerMapSummaryCard> config) #TablerMapSummaryCardParameters
- config Action<TablerMapSummaryCard>
public TablerMetricCard MetricCard(Action<TablerMetricCard> config) #TablerMetricCardParameters
- config Action<TablerMetricCard>
public TablerModal Modal(Action<TablerModal> config) #TablerModalParameters
- config Action<TablerModal>
public TablerNarrativeCard NarrativeCard(Action<TablerNarrativeCard> config) #TablerNarrativeCardParameters
- config Action<TablerNarrativeCard>
public TablerNarrativeSummaryCard NarrativeSummaryCard(Action<TablerNarrativeSummaryCard> config) #TablerNarrativeSummaryCardParameters
- config Action<TablerNarrativeSummaryCard>
public TablerPageHeader PageHeader(Action<TablerPageHeader> config) #TablerPageHeaderParameters
- config Action<TablerPageHeader>
public TablerPeopleReviewCard PeopleReviewCard(Action<TablerPeopleReviewCard> config) #TablerPeopleReviewCardParameters
- config Action<TablerPeopleReviewCard>
public TablerPlaceholder Placeholder(Action<TablerPlaceholder> config) #TablerPlaceholderParameters
- config Action<TablerPlaceholder>
public TablerPlaceholderCard PlaceholderCard(Action<TablerPlaceholderCard> config) #TablerPlaceholderCardParameters
- config Action<TablerPlaceholderCard>
public TablerPlaceholderContainer Placeholders(Action<TablerPlaceholderContainer> config) #TablerPlaceholderContainerParameters
- config Action<TablerPlaceholderContainer>
public TablerPresenceListCard PresenceListCard(Action<TablerPresenceListCard> config) #TablerPresenceListCardParameters
- config Action<TablerPresenceListCard>
public TablerProgressBar ProgressBar(TablerProgressBarType type, Int32 percentage, Nullable<TablerColor> tablerBackground = null) #TablerProgressBarParameters
- config Action<TablerProgressBar>
public TablerProgressListCard ProgressListCard(Action<TablerProgressListCard> config) #TablerProgressListCardParameters
- config Action<TablerProgressListCard>
public EasyQRCodeElement QRCode(String text) #EasyQRCodeElementParameters
- text String
public QuillEditor QuillEditor(Action<QuillEditor> config = null) #QuillEditorParameters
- config Action<QuillEditor> = null
public TablerReviewListCard ReviewListCard(Action<TablerReviewListCard> config) #TablerReviewListCardParameters
- config Action<TablerReviewListCard>
public TablerRow Row(Action<TablerRow> config) #TablerRowParameters
- config Action<TablerRow>
public TablerScheduleSummaryCard ScheduleSummaryCard(Action<TablerScheduleSummaryCard> config) #TablerScheduleSummaryCardParameters
- config Action<TablerScheduleSummaryCard>
public ScrollingText ScrollingText(Action<ScrollingText> config) #ScrollingTextParameters
- config Action<ScrollingText>
public TablerScrollSpy ScrollSpy(Action<TablerScrollSpy> config) #TablerScrollSpyParameters
- config Action<TablerScrollSpy>
public SmartTab SmartTab(Action<SmartTab> config) #SmartTabParameters
- config Action<SmartTab>
public SmartWizard SmartWizard(Action<SmartWizard> config) #SmartWizardParameters
- config Action<SmartWizard>
public TablerSocialTileCard SocialTileCard(Action<TablerSocialTileCard> config) #TablerSocialTileCardParameters
- config Action<TablerSocialTileCard>
public Span Span(String content = "") #SpanParameters
- content String = ""
public TablerSparkline Sparkline(Action<TablerSparkline> config) #TablerSparklineParameters
- config Action<TablerSparkline>
public TablerSpinner Spinner(Action<TablerSpinner> config) #TablerSpinnerParameters
- config Action<TablerSpinner>
public TablerStatTileCard StatTileCard(Action<TablerStatTileCard> config) #TablerStatTileCardParameters
- config Action<TablerStatTileCard>
public TablerStatusIndicator StatusIndicator(Action<TablerStatusIndicator> config) #TablerStatusIndicatorParameters
- config Action<TablerStatusIndicator>
public TablerStatusStrip StatusStrip(Action<TablerStatusStrip> config) #TablerStatusStripParameters
- config Action<TablerStatusStrip>
public TablerSummaryStrip SummaryStrip(Action<TablerSummaryStrip> config) #TablerSummaryStripParameters
- config Action<TablerSummaryStrip>
public Table Table(Object objects, TableType tableType) #TableParameters
- objects IEnumerable<Object>
- tableType TableType
public TablerInput TablerInput(String name, Action<TablerInput> config = null) #TablerInputParameters
- name String
- config Action<TablerInput> = null
public TablerProgressBar TablerProgress(Action<TablerProgressBar> config) #TablerProgressBarParameters
- config Action<TablerProgressBar>
public TablerSelect TablerSelect(String name, Action<TablerSelect> config = null) #TablerSelectParameters
- name String
- config Action<TablerSelect> = null
public TablerSteps TablerSteps(Action<TablerSteps> config) #TablerStepsParameters
- config Action<TablerSteps>
public TablerTextarea TablerTextarea(String name, Action<TablerTextarea> config = null) #TablerTextareaParameters
- name String
- config Action<TablerTextarea> = null
public TablerTableSummaryCard TableSummaryCard(Action<TablerTableSummaryCard> config) #TablerTableSummaryCardParameters
- config Action<TablerTableSummaryCard>
public TablerTabs Tabs(Action<TablerTabs> config) #TablerTabsParameters
- config Action<TablerTabs>
public TablerTags Tags(Action<TablerTags> config) #TablerTagsParameters
- config Action<TablerTags>
public TablerTaskList Tasks(Action<TablerTaskList> config) #TablerTaskListParameters
- config Action<TablerTaskList>
public TablerText Text() #TablerTextParameters
- content String
- color RGBColor = null
- fontSize String = null
public TablerTimeline Timeline(Action<TablerTimeline> config) #TablerTimelineParameters
- config Action<TablerTimeline>
public TablerTimelineSummaryCard TimelineSummaryCard(Action<TablerTimelineSummaryCard> config) #TablerTimelineSummaryCardParameters
- config Action<TablerTimelineSummaryCard>
public TablerToast Toast(Action<TablerToast> config) #TablerToastParameters
- title String
- message String
- type TablerToastType = Default
public TablerTrackingSummaryCard TrackingSummaryCard(Action<TablerTrackingSummaryCard> config) #TablerTrackingSummaryCardParameters
- config Action<TablerTrackingSummaryCard>
public TablerVectorMapCard VectorMapCard(Action<TablerVectorMapCard> config) #TablerVectorMapCardParameters
- config Action<TablerVectorMapCard>
public TablerWorkflowStepsCard WorkflowStepsCard(Action<TablerWorkflowStepsCard> config) #TablerWorkflowStepsCardParameters
- config Action<TablerWorkflowStepsCard>
public TablerWorkflowSummaryCard WorkflowSummaryCard(Action<TablerWorkflowSummaryCard> config) #TablerWorkflowSummaryCardParameters
- config Action<TablerWorkflowSummaryCard>
Properties
public String Id { get; } #Gets the unique identifier for this SmartWizard instance.
public List<SmartWizardStep> Steps { get; } #Gets the list of wizard steps.
public SmartWizardOptions Options { get; } #Gets the configuration options.
public Boolean IsVertical { get; set; } #Gets or sets the orientation (horizontal or vertical).
public String ContainerClass { get; set; } #Gets or sets custom CSS classes for the container.
public String ContentClass { get; set; } #Gets or sets custom CSS classes for the content container.
ContentPaddingY #Optional vertical padding for the content area (maps to Bootstrap py-*).