week 12: condensing into single line
week 12: cleaning up battle impl