function getApplyAssociative(S) {
	return makeAssociative(y => x =>
		O.isSome(x) && O.isSome(y) ? O.some(S.combine(y.value)(x.value)) : O.none
	);
}
`Apply` Associative

| x       | y       | combine(y)(x)      |
| ------- | ------- | ------------------ |
| none    | none    | none               |
| some(a) | none    | none               |
| none    | some(a) | none               |
| some(a) | some(b) | some(concat(a, b)) |