input($input, name: 'density')
->
select({
  *,
  bookmark('western-samoa-eq100mrp') as shaking
})
->
select({
  density,
  sample_centroid(geometry: density, coverage: shaking) as pga
})
->
select({
  density,
  if_then_else(pga > 0.4, 1, 0) as exposed
})
->
select({
  *,
  sample_one(geometry: density, coverage: to_coverage(bookmark('samoa-constituencies'))) as region
}) as "sample_area_layer"
->
select({
  region,
  density.value * 1 as total_population,
  density.value * exposed as exposed_population
})
->
group(
  {
    region.geometry,
    region.NAME_2 as name,
    floor(sum(exposed_population)) as exposed_population,
    floor(sum(total_population)) as total_population
  },
  by: region
) -> save(name: 'regions')

group -> select({name, exposed_population, total_population}) -> save(name: 'regions')

group -> group({
  floor(sum(exposed_population)) as exposed_population,
  floor(sum(total_population)) as total_population
}) as totals

