Greetings,

I'm running Stata 15.1 on OSX and working with aggregate state-level data. My dependent variable is the percent of democrats per US state that support a pathway to citizenship for undocumented immigrants between the years 2005-2007. The year 2006 witnessed a wave of immigrant protests across 43 states. Both the size and number of protests vary by state. I'd thus like to see whether a) democrats' support for citizenship increased in states exposed to protests, and whether b) the size and number of protests moderate the effect of protest exposure. However, I'm not sure which model best suits what I'm trying to do. For instance, is a difference-in-difference or regression discontinuity design appropriate here? If so, what do I need to do to arrange my data accordingly?

Here is the data I'm working with:

period3=time variable (2005, 2006, 2007)
dem_support= % of democrats supporting citizenship per state/year (2005, 2006, 2007)
protest_state= whether protests occurred in the state in 2006
number_protests=total number of protests in a given state during 2006
total_protetesters=total number of protesters in a state during 2006

Code:
* Example generated by -dataex-. To install: ssc install dataex
clear
input double state float(period3 dem_support protest_state number_protests total_protesters)
 1 1  17.63527 .  .       .
 1 2  9.663982 1  3   12000
 1 3         . .  .       .
 2 1         . .  .       .
 2 2         . 1  2    1024
 2 3         . .  .       .
 4 1 16.362799 .  .       .
 4 2  23.32632 1 10  221800
 4 3  24.91934 .  .       .
 5 1  7.329951 .  .       .
 5 2  9.992131 1  1    3000
 5 3         . .  .       .
 6 1  21.42707 .  .       .
 6 2  20.31827 1 68 1347100
 6 3 15.793694 .  .       .
 8 1 17.090237 .  .       .
 8 2 18.582304 1  7  126900
 8 3 33.951332 .  .       .
 9 1 12.244322 .  .       .
 9 2  19.74781 1  5    9750
 9 3         . .  .       .
10 1         . .  .       .
10 2         . 1  2    1512
10 3         . .  .       .
11 1         . .  .       .
11 2 35.654705 1  3  211000
11 3         . .  .       .
12 1 17.199724 .  .       .
12 2 14.352728 1 17  132200
12 3  51.79371 .  .       .
13 1  15.59329 .  .       .
13 2 17.511854 1  3  129500
13 3  56.65443 .  .       .
15 1         . .  .       .
15 2         . 0  0       0
15 3         . .  .       .
16 1         . .  .       .
16 2         . 1  1    4000
16 3         . .  .       .
17 1 12.915016 .  .       .
17 2 11.674236 1 10  789300
17 3  48.23936 .  .       .
18 1  6.537366 .  .       .
18 2  18.73149 1  4   15850
18 3  69.89759 .  .       .
19 1  7.581106 .  .       .
19 2         . 1  2    5950
19 3         . .  .       .
20 1         . .  .       .
20 2 18.027592 1  4   11000
20 3         . .  .       .
21 1  9.800719 .  .       .
21 2 16.520372 1  4    8060
21 3         . .  .       .
22 1   9.04233 .  .       .
22 2 15.409684 1  1    3000
22 3    73.023 .  .       .
23 1         . .  .       .
23 2  13.76378 1  1     150
23 3         . .  .       .
24 1 15.217574 .  .       .
24 2  14.87341 1  2     500
24 3         . .  .       .
25 1  21.60279 .  .       .
25 2  25.49279 1  4   19500
25 3         . .  .       .
26 1  6.352006 .  .       .
26 2  9.710866 1  5   78100
26 3  62.87351 .  .       .
27 1 13.329665 .  .       .
27 2 12.833672 1  1   35000
27 3         . .  .       .
28 1  6.729909 .  .       .
28 2         . 1  1     450
28 3   52.6959 .  .       .
29 1 12.850698 .  .       .
29 2 11.647774 1  1    5000
29 3         . .  .       .
30 1         . .  .       .
30 2         . 0  0       0
30 3         . .  .       .
31 1         . .  .       .
31 2         . 1  4   19000
31 3         . .  .       .
32 1         . .  .       .
32 2 13.775508 1  4    9150
32 3         . .  .       .
33 1         . .  .       .
33 2  14.19118 0  0       0
33 3         . .  .       .
34 1  5.309289 .  .       .
34 2 20.637514 1  2    2200
34 3  52.31853 .  .       .
35 1  12.02173 .  .       .
35 2         . 1  4    6500
35 3  30.33474 .  .       .
36 1 21.652407 .  .       .
36 2  22.45154 1  6  111450
36 3 33.247444 .  .       .
37 1 13.037005 .  .       .
end
label values state V081201b
label def V081201b 1 "01.  Alabama", modify
label def V081201b 2 "02.  Alaska", modify
label def V081201b 4 "04.  Arizona", modify
label def V081201b 5 "05.  Arkansas", modify
label def V081201b 6 "06.  California", modify
label def V081201b 8 "08.  Colorado", modify
label def V081201b 9 "09.  Connecticut", modify
label def V081201b 10 "10.  Delaware", modify
label def V081201b 11 "11.  District of Columbia", modify
label def V081201b 12 "12.  Florida", modify
label def V081201b 13 "13.  Georgia", modify
label def V081201b 15 "15.  Hawaii", modify
label def V081201b 16 "16.  Idaho", modify
label def V081201b 17 "17.  Illinois", modify
label def V081201b 18 "18.  Indiana", modify
label def V081201b 19 "19.  Iowa", modify
label def V081201b 20 "20.  Kansas", modify
label def V081201b 21 "21.  Kentucky", modify
label def V081201b 22 "22.  Louisiana", modify
label def V081201b 23 "23.  Maine", modify
label def V081201b 24 "24.  Maryland", modify
label def V081201b 25 "25.  Massachusetts", modify
label def V081201b 26 "26.  Michigan", modify
label def V081201b 27 "27.  Minnesota", modify
label def V081201b 28 "28.  Mississippi", modify
label def V081201b 29 "29.  Missouri", modify
label def V081201b 30 "30.  Montana", modify
label def V081201b 31 "31.  Nebraska", modify
label def V081201b 32 "32.  Nevada", modify
label def V081201b 33 "33.  New Hampshire", modify
label def V081201b 34 "34.  New Jersey", modify
label def V081201b 35 "35.  New Mexico", modify
label def V081201b 36 "36.  New York", modify
label def V081201b 37 "37.  North Carolina", modify
label values period3 period3
label def period3 1 "2005", modify
label def period3 2 "2006", modify
label def period3 3 "2007", modify
An additional question I have is what to do with the 'treatment' variables for the non-treatment years (i.e. 2005, 2007). Do I simply code them as 0 for those years? Or do the 'treated' states retain their treatment status across the three years (which doesn't strike me as correct, but wanted to clarify)?

Thanks in advance for your help!