// your code goes here// your code goes here
let t=parseInt(readline()); //testcase
while(t--){
let n=parseInt(readline());//number of ships
let arr=readline().split(' ').map(Number); //array of ships
let arr2=readline().split(' ').map(Number);
let x=arr2[0];
let y=arr2[1];
let arr3=readline().split(' ').map(Number);
let h=arr3[0];
let d=arr3[1];
let shot=0; // variable to store count of number od shots.
arr.sort((a,b)=>(b-a));//sort array in descending order so that
//we can hit the ship with highest health first
for(let i=0;i<n;i++){
arr[0]=arr[0]-x; //reduce health of first ship by x
for(let j=1;j<n;j++){
arr[j]=arr[j]-y; //reduce health of remaining ships by y
}
h=h-d; // reduce health of cannon by d after each shot
shot++;
console.log(arr);
if(!checkArray(arr,n) && h>0){ //check if all ships are destroyed or not and
console.log(shot); // if yes then print shots and break out of loop
break;
}
if(h<=0 && checkArray(arr,n)){ //check health of cannon in each iteration and
// if found less than equal to 0,print -1 and exit loop
console.log(-1);
break;
}
arr.sort((a,b)=>(b-a));// again sort in descending so that
//we can hit ship with highest health first
}
}
function checkArray(arr,n){
for(let i=0;i<n;i++){
if(arr[i]>0)
return true;
}
return false;
}
Ly8geW91ciBjb2RlIGdvZXMgaGVyZS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKbGV0IHQ9cGFyc2VJbnQocmVhZGxpbmUoKSk7IC8vdGVzdGNhc2UKd2hpbGUodC0tKXsKCWxldCBuPXBhcnNlSW50KHJlYWRsaW5lKCkpOy8vbnVtYmVyIG9mIHNoaXBzCglsZXQgYXJyPXJlYWRsaW5lKCkuc3BsaXQoJyAnKS5tYXAoTnVtYmVyKTsgLy9hcnJheSBvZiBzaGlwcwoJbGV0IGFycjI9cmVhZGxpbmUoKS5zcGxpdCgnICcpLm1hcChOdW1iZXIpOwoJbGV0IHg9YXJyMlswXTsKCWxldCB5PWFycjJbMV07CgoJbGV0IGFycjM9cmVhZGxpbmUoKS5zcGxpdCgnICcpLm1hcChOdW1iZXIpOwoJbGV0IGg9YXJyM1swXTsKCWxldCBkPWFycjNbMV07CgkKCWxldCBzaG90PTA7IC8vIHZhcmlhYmxlIHRvIHN0b3JlIGNvdW50IG9mIG51bWJlciBvZCBzaG90cy4KICAgIGFyci5zb3J0KChhLGIpPT4oYi1hKSk7Ly9zb3J0IGFycmF5IGluIGRlc2NlbmRpbmcgb3JkZXIgc28gdGhhdAoJCQkJCQkvL3dlIGNhbiBoaXQgdGhlIHNoaXAgd2l0aCBoaWdoZXN0IGhlYWx0aCBmaXJzdAoKCWZvcihsZXQgaT0wO2k8bjtpKyspewoJCWFyclswXT1hcnJbMF0teDsgIC8vcmVkdWNlIGhlYWx0aCBvZiBmaXJzdCBzaGlwIGJ5IHgKCQlmb3IobGV0IGo9MTtqPG47aisrKXsKCQkJYXJyW2pdPWFycltqXS15OyAvL3JlZHVjZSBoZWFsdGggb2YgcmVtYWluaW5nIHNoaXBzIGJ5IHkKCQl9CgkJaD1oLWQ7ICAvLyByZWR1Y2UgaGVhbHRoIG9mIGNhbm5vbiBieSBkIGFmdGVyIGVhY2ggc2hvdAoJCXNob3QrKzsKICAgICAgICAgY29uc29sZS5sb2coYXJyKTsKCQkgaWYoIWNoZWNrQXJyYXkoYXJyLG4pICYmIGg+MCl7IC8vY2hlY2sgaWYgYWxsIHNoaXBzIGFyZSBkZXN0cm95ZWQgb3Igbm90IGFuZCAKCQkJY29uc29sZS5sb2coc2hvdCk7ICAgICAgICAvLyBpZiB5ZXMgdGhlbiBwcmludCBzaG90cyBhbmQgYnJlYWsgb3V0IG9mIGxvb3AKCQkJYnJlYWs7CgkJfQoJCWlmKGg8PTAgJiYgY2hlY2tBcnJheShhcnIsbikpeyAgICAJCQkvL2NoZWNrIGhlYWx0aCBvZiBjYW5ub24gaW4gZWFjaCBpdGVyYXRpb24gYW5kIAoJCQkJCQkJCS8vCWlmIGZvdW5kIGxlc3MgdGhhbiBlcXVhbCB0byAwLHByaW50IC0xIGFuZCBleGl0IGxvb3AKCQkJY29uc29sZS5sb2coLTEpOwoJCQlicmVhazsKCQl9CgkJCgkgICAKCSAgIGFyci5zb3J0KChhLGIpPT4oYi1hKSk7Ly8gYWdhaW4gc29ydCBpbiBkZXNjZW5kaW5nIHNvIHRoYXQgCgkgICAJCQkJCQkvL3dlIGNhbiBoaXQgc2hpcCB3aXRoIGhpZ2hlc3QgaGVhbHRoIGZpcnN0CgkgIAoJfQoJCgkKfQpmdW5jdGlvbiBjaGVja0FycmF5KGFycixuKXsKCWZvcihsZXQgaT0wO2k8bjtpKyspewoJCWlmKGFycltpXT4wKQoJCQlyZXR1cm4gdHJ1ZTsKCX0KCXJldHVybiBmYWxzZTsKfQo=