catala/examples/NSW_community_gaming/nsw_art_union.catala_en
Louis Gesbert 71bb67163c Remove explicitely typed operators in tests and examples
Command used: `sed -i 's/\([-+*/><=]=\?\)[.$@^€$]/\1/g' **/*/*.catala_*`

The overload test, of course, is kept unchanged and ensures that explicit
operators still work.
2022-12-13 12:00:04 +01:00

71 lines
2.4 KiB
Plaintext

```catala
# Copyright © Aïda Ibrahim and Hugo Gimbert -- LaBRI/CNRS/Université de Bordeaux/Université de Nantes
```
```catala-metadata
declaration enumeration BenefitingOrganisation :
-- Charitable
-- NonProfit
--ObjectOfPublicOrCharitableCharacter
--NonCharitable
--ProfitOrg
--PrivatePurspose
declaration structure ArtUnion:
data grossProceeds content money
data typeOrg content BenefitingOrganisation
data proceedsToBenefitingOrg content money
data totalValueOfThePrizes content money
data maxAmountMoneyAsSeparatePrize content money
data holdsAuthority content boolean
declaration scope GamingAuthorized:
input artUnion content ArtUnion
internal minimumProceeds content boolean
internal benefitingOrg content boolean
internal valueOfPrizes content boolean
internal separatePrizeMaxValue content boolean
internal authority content boolean
output authorized condition
```
Art union gaming activities
The awarding of prizes by lot by an art union (an art union gaming activity) is a
permitted gaming activity for the purposes of section 10 of the Act if the following
requirements are complied with—
(a) not less than 30% of the gross proceeds of the gaming activity are paid to the
benefiting organisation,
```catala
scope GamingAuthorized:
definition minimumProceeds equals (artUnion.proceedsToBenefitingOrg >= artUnion.grossProceeds * 30 %)
definition benefitingOrg equals artUnion.typeOrg with pattern BenefitingOrganisation.Charitable or
artUnion.typeOrg with pattern BenefitingOrganisation.NonProfit or artUnion.typeOrg with pattern BenefitingOrganisation.ObjectOfPublicOrCharitableCharacter
```
(b) the total value of all the prizes exceeds $30,000,
```catala
scope GamingAuthorized:
definition valueOfPrizes equals (artUnion.totalValueOfThePrizes >= $30,000)
```
(c) the maximum amount of money payable as a separate prize does not exceed
$30,000,
```catala
scope GamingAuthorized:
definition separatePrizeMaxValue equals (artUnion.maxAmountMoneyAsSeparatePrize <= $30,000)
```
(d) the person conducting the activity holds an authority to do so that is in force
and the activity is conducted in accordance with the authority
```catala
scope GamingAuthorized:
definition authority equals artUnion.holdsAuthority
scope GamingAuthorized:
rule authorized
under condition minimumProceeds and benefitingOrg and valueOfPrizes and separatePrizeMaxValue and authority
consequence fulfilled
```