#include<bits/stdc++.h>
using namespace	std;
long long int n,m,ps=0,e;
long double r,z=0;
pair<long long int ,long double> pr[100001];
	set<long long int> st;
	map<long long int,bool> mb;
	map<long long int,double> mp;
	void foo( long double ri, long long  int u){
		if(e>u){
			foo(ri*ri,u*2);
		}
		if(e>=u){
			z*=ri;
			e-=u;
		}
	}
#define ll long long
int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(0); cout.tie(0);
	cout << fixed << setprecision(12);
	cin>>n>>m;
	cin>>r;
	for(int i=0;i<n;i++){
		cin>>pr[i].first>>pr[i].second;
		mp[pr[i].first]=pr[i].second;
		st.insert(pr[i].first);
	}
	for(int i=0;i<m;i++){
		long long int x;
		cin>>x;
		st.insert(x);
		mb[x]=1;
	}
	while(!st.empty()){
		e=*st.begin()-ps;
		foo( 1-r, 1);
		z+=mp[*st.begin()]*r;
		if(mb[*st.begin()]){
			cout<<z<<' ';
		}
		ps=*st.begin();
		st.erase(*st.begin());
	}
}