_This file is generated by `programs.md.mako` via `make solana_templates`, do not edit manually._

% for program in programs.programs:
${'##'} ${program.name}

`${program.id}`

% for instruction in program.instructions:
${'###'} (${instruction.id}) ${instruction.name}
<%
    all_params = { param.name: param for param in instruction.parameters }
    all_accounts = list(instruction.references)
%>
| Label | Value | Type |
|-------|-------|------|
% for prop in instruction.ui_properties:
% if "account" in prop:
| ${prop.display_name} | `${prop.account}` | `account` |
<% all_accounts.remove(prop.account) %>\
% else:
| ${prop.display_name} | `${prop.parameter}` | `${all_params[prop.parameter].type}` |
<% del all_params[prop.parameter] %>\
% endif
% endfor
% for param in all_params.values():
| _(not shown)_ | `${param.name}` | `${param.type}` |
% endfor
% for account in all_accounts:
| _(not shown)_ | `${account}` | `account` |
% endfor

% endfor
% endfor
