     end
   end
 
-  # TODO: Vote for self, Publish a RequestVote RPC
   def handle_info(:leader_election, state) do
     state = State.reset_election_timer(state, self())
 

          reuseaddr: true,
        ])

    state = State.new() |> State.reset_election_timer(self())
    State.schedule_append_entries(self())

    {:ok, state}

    end

    # RequestVote RPC implementation
    def handle_rpc(state, member, %RPC.RequestVote{} = rpc) do
      state = maybe_step_down(state, member, rpc.term)
      |> State.reset_election_timer(self())

      vote_granted =
