The engine compiles Montana's rules into a law image and runs it as bytecode. Rule ids in the listing link back to the rules above.
- Listing from
- the engine's disassembler, tdis, when the site was built
- Compiled by
- tendc 1.3.0, image format 1.3
- Contents
- 41 rules, 16 sources, 26 proofs, 2 ints, 261 strings
- Compiled from these rules
- Yes. The image names the same SHA-256 as the verified rules above.
- Compiled from the current law IR
- Yes. The image carries the SHA-256 of the IR shown on this page.
- Image SHA-256
b05c0c2bc82c7d1f09f34d56d11f8aca8ff30292ca84be3f3a7339de3250feb2
Jump to: rule table, per-cost program, totals program, or download the listing.
.rules
R0 MT-EXAM-1 exam_no_bill - MCA 46-15-406(2)
R1 MT-EXAM-2 exam_no_bill - Montana DOJ, FREPP page
R2 MT-EXAM-3 exam_payment - MCA 46-15-411(1)
R3 MT-EXAM-4 exam_payment - MCA 46-15-411(2)(a)
R4 MT-EXAM-5 exam_payment - Montana DOJ, FREPP page
R5 MT-EXAM-6 exam_payment - Montana DOJ, FREPP page
R6 MT-CAP-1 total_cap - Montana DOJ, Crime Victim Compensation page, Eligible Benefits
R7 MT-CAP-3 expense_cap funeral per claim MCA 53-9-128(4)
R8 MT-COV-1 covered medical MCA 53-9-128(2)
R9 MT-COV-2 covered counseling Montana DOJ, Crime Victim Compensation page, Mental Health Costs
R10 MT-COV-3 covered prescription Montana DOJ, Crime Victim Compensation page, Medical Costs
R11 MT-COV-4 covered dental Montana DOJ, Crime Victim Compensation page, Medical Costs
R12 MT-COV-5 covered lost_wages MCA 53-9-128(1)
R13 MT-COV-6 covered transportation MCA 53-9-128(9)(c)
R14 MT-EXC-1 info - excluded_expense Montana DOJ, CVC FAQ
R15 MT-EXC-2 excluded clothing_bedding Montana DOJ, Crime Victim Compensation page, Ineligible Benefits
R16 MT-EXC-3 excluded temporary_housing Montana DOJ, Crime Victim Compensation page, Ineligible Benefits
R17 MT-EXC-4 excluded transportation Montana DOJ, Crime Victim Compensation page, Ineligible Benefits
R18 MT-EXC-5 excluded legal Montana DOJ, Crime Victim Compensation page, Ineligible Benefits
R19 MT-EXC-6 excluded - MCA 53-9-128(6)
R20 MT-EXC-7 info - excluded_expense Montana DOJ, Crime Victim Compensation page, Wage Loss
R21 MT-EXC-8 info - excluded_expense Montana DOJ, Crime Victim Compensation page, Ineligible Benefits
R22 MT-DEAD-1 deadline - from crime MCA 53-9-125(1)
R23 MT-DEAD-2 info - filing_deadline MCA 53-9-125(1)
R24 MT-REP-1 reporting - MCA 53-9-125(3)
R25 MT-COL-1 collateral - MCA 53-9-125(5)
R26 MT-COL-2 collateral - Montana DOJ, Crime Victim Compensation page, Insurance and Collateral Sources
R27 MT-CON-1 info - conduct_reduction MCA 53-9-125(7)
R28 MT-CON-2 info - conduct_reduction MCA 53-9-125(4)
R29 MT-EMER-1 info - emergency_award MCA 53-9-126
R30 MT-ELIG-1 info - eligible_crime Claim Form, Section C, Type of Crime
R31 MT-RES-1 info - residency Montana DOJ, Request a Claim Form page
R32 MT-SUB-1 info - submission Request a Claim Form, How to Request a Claim Form
R33 MT-DOC-1 info - required_document CVC FAQ, Should I send in copies of medical bills along with the application?
R34 MT-DOC-2 info - required_document CVC FAQ, Should I send in copies of medical bills along with the application?
R35 MT-DOC-3 info - required_document Eligible Benefits, Wage Loss
R36 MT-DOC-4 info - required_document Claim Form, Section G signature block
R37 MT-PROC-1 info - processing_time CVC FAQ, How long will it take to receive a decision on compensation benefits?
R38 MT-ACP-1 info - address_confidentiality Address Confidentiality Program page, eligibility list
R39 MT-CONF-1 info - record_confidentiality MCA 53-9-107(3)(a)
R40 MT-CAP-2 skipped - expense_cap MCA 53-9-128(9)(e)
.tags pain_suffering=bit0
.sources
S0 MT-S1 sha256 704245ebc1780184 https://dojmt.gov/victim-services/crime-victim-compensation/
S1 MT-S2 sha256 0099b6db7d3cbc25 https://dojmt.gov/victim-services/sexual-assault-response-network/forensic-rape-examination-payment-program/
S2 MT-S3 sha256 5d27c8dc6b99ae12 https://dojmt.gov/victim-services/crime-victim-compensation/faq/
S3 MT-S4 sha256 47b7f681aba97f9f https://dojmt.gov/victim-services/crime-victim-compensation/claim-process/
S4 MT-S5 sha256 42c61cbf1812d3d1 https://dojmt.gov/victim-services/crime-victim-compensation/request-claim-form/
S5 MT-S6 sha256 4b36cede8f280cb9 https://dojmt.gov/wp-content/uploads/2025/12/Crime-Victim-Compensation-Claim-Form-12-25.pdf
S6 MT-S7 sha256 b1f4e6159f410a82 https://mca.legmt.gov/bills/mca/title_0530/chapter_0090/part_0010/section_0030/0530-0090-0010-0030.html
S7 MT-S8 sha256 e6699f069a99de07 https://mca.legmt.gov/bills/mca/title_0530/chapter_0090/part_0010/section_0250/0530-0090-0010-0250.html
S8 MT-S9 sha256 45901c949ca8a297 https://mca.legmt.gov/bills/mca/title_0530/chapter_0090/part_0010/section_0280/0530-0090-0010-0280.html
S9 MT-S10 sha256 70b9313c4bc0018c https://mca.legmt.gov/bills/mca/title_0530/chapter_0090/part_0010/section_0260/0530-0090-0010-0260.html
S10 MT-S11 sha256 70579c0e13d05c65 https://mca.legmt.gov/bills/mca/title_0460/chapter_0150/part_0040/section_0110/0460-0150-0040-0110.html
S11 MT-S12 sha256 032b6c48c6ef2514 https://mca.legmt.gov/bills/mca/title_0460/chapter_0150/part_0040/section_0060/0460-0150-0040-0060.html
S12 MT-S13 sha256 fd9940f40bae8236 https://www.law.cornell.edu/regulations/montana/Mont-Admin-r-23.15.103
S13 MT-S14 sha256 cc609f0835e77398 https://www.law.cornell.edu/regulations/montana/Mont-Admin-r-23.15.402
S14 MT-S15 sha256 4dc021c1259ab4da https://dojmt.gov/victim-services/address-confidentiality-program/
S15 MT-S16 sha256 e953d530940728e1 https://mca.legmt.gov/bills/mca/title_0530/chapter_0090/part_0010/section_0070/0530-0090-0010-0070.html
.proofs
P0 ()
P1 (MT-EXAM-1, MT-EXAM-2, MT-EXAM-3, MT-EXAM-4, MT-EXAM-5, MT-EXAM-6)
P2 (MT-EXC-6)
P3 (MT-COV-1)
P4 (MT-COV-1, MT-COL-1, MT-COL-2)
P5 (MT-COV-2)
P6 (MT-COV-2, MT-COL-1, MT-COL-2)
P7 (MT-COV-5)
P8 (MT-COV-5, MT-COL-1, MT-COL-2)
P9 (MT-EXC-4, MT-EXC-6)
P10 (MT-EXC-4)
P11 (MT-EXC-3, MT-EXC-6)
P12 (MT-EXC-3)
P13 (MT-EXC-2, MT-EXC-6)
P14 (MT-EXC-2)
P15 (MT-COV-3)
P16 (MT-COV-3, MT-COL-1, MT-COL-2)
P17 (MT-COV-4)
P18 (MT-COV-4, MT-COL-1, MT-COL-2)
P19 (MT-CAP-3)
P20 (MT-CAP-3, MT-COL-1, MT-COL-2)
P21 (MT-EXC-5, MT-EXC-6)
P22 (MT-EXC-5)
P23 (MT-DEAD-1)
P24 (MT-REP-1)
P25 (MT-EXC-1, MT-EXC-7, MT-EXC-8, MT-DEAD-2, MT-COL-1, MT-COL-2, MT-CON-1, MT-CON-2, MT-EMER-1, MT-ELIG-1, MT-RES-1, MT-SUB-1, MT-DOC-1, MT-DOC-2, MT-DOC-3, MT-DOC-4, MT-PROC-1, MT-ACP-1, MT-CONF-1)
.ints
K0 1000000
K1 2500000
.item
0000 ldi date
0002 ldx incident_date
0004 lt
0005 jnz L0
000a ldi date
000c ldx as_of_date
000e gt
000f jnz L0
0014 ldi expense
0016 switch 19, default L21
case medical -> L2
case forensic_exam -> L1
case counseling -> L7
case lost_wages -> L12
case transportation -> L17
case relocation -> L21
case temporary_housing -> L25
case security -> L21
case crime_scene_cleanup -> L21
case childcare -> L21
case property_replacement -> L21
case clothing_bedding -> L29
case prescription -> L33
case dental -> L38
case funeral -> L43
case legal -> L48
case tuition -> L21
case other -> L21
case unknown -> L21
0068 L0: push 0
006d decide out_of_window, P0
0071 ret
0072 L1: push 0
0077 decide held, P1
007b ret
007c L2: push 0
0081 str r0
0083 ldi tags
0085 push 1
008a and
008b jz L3
0090 ldr r0
0092 push 1
0097 or
0098 str r0
009a L3: ldr r0
009c switch 2, default L5
case 0 -> L5
case 1 -> L4
00aa L4: push 0
00af decide excluded, P2
00b3 ret
00b4 L5: ldi confirmed
00b6 jnz L6
00bb push 0
00c0 decide needs_confirmation, P3
00c4 ret
00c5 L6: ldi amount_cents
00c7 decide eligible, P4
00cb lda
00cc ldi insurance_paid_cents
00ce subs
00cf push 0
00d4 max
00d5 seta collateral, R25
00d9 ret
00da L7: push 0
00df str r0
00e1 ldi tags
00e3 push 1
00e8 and
00e9 jz L8
00ee ldr r0
00f0 push 1
00f5 or
00f6 str r0
00f8 L8: ldr r0
00fa switch 2, default L10
case 0 -> L10
case 1 -> L9
0108 L9: push 0
010d decide excluded, P2
0111 ret
0112 L10: ldi confirmed
0114 jnz L11
0119 push 0
011e decide needs_confirmation, P5
0122 ret
0123 L11: ldi amount_cents
0125 decide eligible, P6
0129 lda
012a ldi insurance_paid_cents
012c subs
012d push 0
0132 max
0133 seta collateral, R25
0137 ret
0138 L12: push 0
013d str r0
013f ldi tags
0141 push 1
0146 and
0147 jz L13
014c ldr r0
014e push 1
0153 or
0154 str r0
0156 L13: ldr r0
0158 switch 2, default L15
case 0 -> L15
case 1 -> L14
0166 L14: push 0
016b decide excluded, P2
016f ret
0170 L15: ldi confirmed
0172 jnz L16
0177 push 0
017c decide needs_confirmation, P7
0180 ret
0181 L16: ldi amount_cents
0183 decide eligible, P8
0187 lda
0188 ldi insurance_paid_cents
018a subs
018b push 0
0190 max
0191 seta collateral, R25
0195 ret
0196 L17: push 0
019b str r0
019d ldi tags
019f push 1
01a4 and
01a5 jz L18
01aa ldr r0
01ac push 1
01b1 or
01b2 str r0
01b4 L18: ldr r0
01b6 switch 2, default L20
case 0 -> L20
case 1 -> L19
01c4 L19: push 0
01c9 decide excluded, P9
01cd ret
01ce L20: push 0
01d3 decide excluded, P10
01d7 ret
01d8 L21: push 0
01dd str r0
01df ldi tags
01e1 push 1
01e6 and
01e7 jz L22
01ec ldr r0
01ee push 1
01f3 or
01f4 str r0
01f6 L22: ldr r0
01f8 switch 2, default L24
case 0 -> L24
case 1 -> L23
0206 L23: push 0
020b decide excluded, P2
020f ret
0210 L24: push 0
0215 decide unknown_rule, P0
0219 ret
021a L25: push 0
021f str r0
0221 ldi tags
0223 push 1
0228 and
0229 jz L26
022e ldr r0
0230 push 1
0235 or
0236 str r0
0238 L26: ldr r0
023a switch 2, default L28
case 0 -> L28
case 1 -> L27
0248 L27: push 0
024d decide excluded, P11
0251 ret
0252 L28: push 0
0257 decide excluded, P12
025b ret
025c L29: push 0
0261 str r0
0263 ldi tags
0265 push 1
026a and
026b jz L30
0270 ldr r0
0272 push 1
0277 or
0278 str r0
027a L30: ldr r0
027c switch 2, default L32
case 0 -> L32
case 1 -> L31
028a L31: push 0
028f decide excluded, P13
0293 ret
0294 L32: push 0
0299 decide excluded, P14
029d ret
029e L33: push 0
02a3 str r0
02a5 ldi tags
02a7 push 1
02ac and
02ad jz L34
02b2 ldr r0
02b4 push 1
02b9 or
02ba str r0
02bc L34: ldr r0
02be switch 2, default L36
case 0 -> L36
case 1 -> L35
02cc L35: push 0
02d1 decide excluded, P2
02d5 ret
02d6 L36: ldi confirmed
02d8 jnz L37
02dd push 0
02e2 decide needs_confirmation, P15
02e6 ret
02e7 L37: ldi amount_cents
02e9 decide eligible, P16
02ed lda
02ee ldi insurance_paid_cents
02f0 subs
02f1 push 0
02f6 max
02f7 seta collateral, R25
02fb ret
02fc L38: push 0
0301 str r0
0303 ldi tags
0305 push 1
030a and
030b jz L39
0310 ldr r0
0312 push 1
0317 or
0318 str r0
031a L39: ldr r0
031c switch 2, default L41
case 0 -> L41
case 1 -> L40
032a L40: push 0
032f decide excluded, P2
0333 ret
0334 L41: ldi confirmed
0336 jnz L42
033b push 0
0340 decide needs_confirmation, P17
0344 ret
0345 L42: ldi amount_cents
0347 decide eligible, P18
034b lda
034c ldi insurance_paid_cents
034e subs
034f push 0
0354 max
0355 seta collateral, R25
0359 ret
035a L43: push 0
035f str r0
0361 ldi tags
0363 push 1
0368 and
0369 jz L44
036e ldr r0
0370 push 1
0375 or
0376 str r0
0378 L44: ldr r0
037a switch 2, default L46
case 0 -> L46
case 1 -> L45
0388 L45: push 0
038d decide excluded, P2
0391 ret
0392 L46: ldi confirmed
0394 jnz L47
0399 push 0
039e decide needs_confirmation, P19
03a2 ret
03a3 L47: ldi amount_cents
03a5 decide eligible, P20
03a9 lda
03aa ldi insurance_paid_cents
03ac subs
03ad push 0
03b2 max
03b3 seta collateral, R25
03b7 ret
03b8 L48: push 0
03bd str r0
03bf ldi tags
03c1 push 1
03c6 and
03c7 jz L49
03cc ldr r0
03ce push 1
03d3 or
03d4 str r0
03d6 L49: ldr r0
03d8 switch 2, default L51
case 0 -> L51
case 1 -> L50
03e6 L50: push 0
03eb decide excluded, P21
03ef ret
03f0 L51: push 0
03f5 decide excluded, P22
03f9 ret
.aggregate
0000 push 0
0005 str r0
0007 push 0
000c str r1
000e each funeral, L4
0014 L0: ldr r1
0016 jnz L2
001b ldr r0
001d lda
001e adds
001f ldk K0
0022 gt
0023 jz L1
0028 ldk K0
002b ldr r0
002d subs
002e cap expense_cap, R7
0032 push 1
0037 str r1
0039 L1: ldr r0
003b lda
003c adds
003d str r0
003f jmp L3
0044 L2: push 0
0049 cap expense_cap, R7
004d L3: next L0
0052 L4: push 0
0057 str r0
0059 push 0
005e str r1
0060 each all, L9
0066 L5: ldr r1
0068 jnz L7
006d ldr r0
006f lda
0070 adds
0071 ldk K1
0074 gt
0075 jz L6
007a ldk K1
007d ldr r0
007f subs
0080 cap total_cap, R6
0084 push 1
0089 str r1
008b L6: ldr r0
008d lda
008e adds
008f str r0
0091 jmp L8
0096 L7: push 0
009b cap total_cap, R6
009f L8: next L5
00a4 L9: push 0
00a9 check minimum_loss, P0
00ad ldx incident_date
00af push 365
00b4 adds
00b5 dup
00b6 setdate
00b7 ldx as_of_date
00b9 ge
00ba jz L10
00bf push 0
00c4 jmp L11
00c9 L10: push 1
00ce L11: check deadline, P23
00d2 ldx police_report
00d4 push 1
00d9 eq
00da jnz L13
00df ldx police_report
00e1 push 0
00e6 eq
00e7 jnz L12
00ec push 3
00f1 jmp L14
00f6 L12: push 1
00fb jmp L14
0100 L13: push 0
0105 L14: check reporting, P24
0109 info P25
010c ret