This year my age is a prime number, and so is this year. This conjunction will repeat in 10 years and again in 12. If I live to 100, I will lived exactly 11 years in which my age and the year are both prime. My condolences to those of you born in odd-numbered years, who will experience this phenomenon at most once if at all.
As it turns out, if I tell you that the consecutive gaps between years in which my age and the year were, are, or will be both primes are 4, 2, 4, 14, 10, 2, 10, 14, 16, and 14, then that is enough information for you to tell me exactly which year I was born.
The Challenge
This challenge is to write a program or function that, given a list of even numbers, each representing gaps between consecutive prime-age prime-year conjunctions, print or return all years between 1AD and 2100AD inclusive such that a person born in that year (and living no longer than 100 years) would have exactly that sequence of gaps between prime-year prime-age conjuctions (i.e. no other such conjunctions)
Or, in more mathematical terms, given a list \$a\$, print or return all \$x\$ between 1 and 2100 such that there exists a \$0<b\le100\$ such that \$x+b\$ is prime, \$b\$ is prime, and \$x+b+\sum^n_{i=1}a_i\$ and \$b+\sum^n_{i=1}a_i\$ are both prime for all \$n\$ up to the length of \$a\$ (where the latter sum is guaranteed to be less than 100).
If there are no such years in that range, you may print or return anything falsy or nothing at all.
I/O is flexible: just be able to take a list of numbers as input and produce a list of numbers as output.
Examples
[4,2,4,14,10,2,10,14,16,14] => [1986]
(6,4,2,4) => ()
6,4,2,4,8,6,10,12,14,10,6 => 1980
4;4 => (No output)
[]...................................=> (A list containing every odd number between 1 and 2099, plus the numbers 1136, 1732, and 1762)
Scoring
Shortest program, in bytes, wins.
Bonus: I will create a bounty to reward the shortest answer that produces the correct output using an algorithm which has an asymptotic worst case running time strictly better than \$O(YA+A^2)\$ where Y is the maximum birth year and A is the maximum age. (Y and A are not inputs to your program or function, but pretend they are for the purposes of determining if your algorithm qualifies.) If you wish to compete in the bonus challenge, it is up to you to convince me your program or function meets the requirements. You may assume that all built-ins use the asymptotically fastest known classical algorithm to achieve their results (e.g. generates primes with a Sieve of Atkin rather than a Sieve of Eratosthenes). Yes, it is possible to receive this bounty even if you win the regular challenge.