package Ġcom . ort . last w olf . domain . service . ability Ċ Ċ import Ġcom . ort . last w olf . domain . model . ability . Ability Type Ċ import Ġcom . ort . last w olf . domain . model . day change . Day Change Ċ import Ġcom . ort . last w olf . domain . model . message . Message Ċ import Ġcom . ort . last w olf . domain . model . v illage . V illage Ċ import Ġcom . ort . last w olf . domain . model . v illage . ability . V illage Abilities Ċ import Ġcom . ort . last w olf . domain . model . v illage . ability . V illage Ability Ċ import Ġcom . ort . last w olf . domain . model . v illage . participant . V illage Participant Ċ Ċ interface ĠI Ability Domain Service Ġ{ ĊĊĠĠĠ Ġfun Ġget Ability Type (): ĠAbility Type ĊĊĠĠĠ Ġfun Ġget Selectable Target List ( ĊĠĠĠĠĠĠĠ Ġv illage : ĠV illage , ĊĠĠĠĠĠĠĠ Ġparticipant : ĠV illage Participant ?, ĊĠĠĠĠĠĠĠ Ġabilities : ĠV illage Abilities ĊĠĠĠ Ġ): ĠList < V illage Participant > ĊĊĠĠĠ Ġfun Ġprocess Dummy Ability ( ĊĠĠĠĠĠĠĠ Ġday Change : ĠDay Change ĊĠĠĠ Ġ): ĠDay Change ĊĊĠĠĠ Ġfun Ġcreate Ability Message ( ĊĠĠĠĠĠĠĠ Ġv illage : ĠV illage , ĊĠĠĠĠĠĠĠ Ġparticipant : ĠV illage Participant , ĊĠĠĠĠĠĠĠ Ġability : ĠV illage Ability ĊĠĠĠ Ġ): ĠMessage ĊĊĠĠĠ Ġfun Ġis Available No Target ( v illage : ĠV illage ): ĠBoolean ĊĊĠĠĠ Ġfun Ġis Us able ( ĊĠĠĠĠĠĠĠ Ġv illage : ĠV illage , ĊĠĠĠĠĠĠĠ Ġparticipant : ĠV illage Participant , ĊĠĠĠĠĠĠĠ Ġabilities : ĠV illage Abilities ĊĠĠĠ Ġ): ĠBoolean Ċ }