#include #define rep(i,n) for(int i=0;i<(int)(n);i++) #define rrep(i,n) for(int i=(int)(n-1);i>=0;i--) #define FOR(i,n,m) for(int i=n;i<=(int)(m);i++) #define RFOR(i,n,m) for(int i=(int)(n);i>=m;i--) #define all(x) (x).begin(),(x).end() #define sz(x) int(x.size()) typedef long long ll; const int INF = 1e9; const int MOD = 1e9+7; const ll LINF = 1e18; const double PI=3.14159265358979323846; using namespace std; vector dy={1,0,-1,0}; vector dx={0,1,0,-1}; template vector make_vec(size_t a){ return vector(a); } template auto make_vec(size_t a, Ts... ts){ return vector(ts...))>(a, make_vec(ts...)); } int main() { int q; cin>>q; while(q--) { ll a,b,c; cin>>a>>b>>c; ll ans=0; if(c==1) { cout<<(a==0 ? 0 : -1)<2*c-1) { if(a%c==0) { a/=c; } else { a-=(a%c); } ans+=b; } ans+=b*((a+c-2)/(c-1)); cout<