#include #include #include #include #include using namespace std; char A[34]; int F[102], G[102]; int N; string S; vector R; int main() { cin.sync_with_stdio(false); cin >> A; for (int i = 0; A[i] != 0; ++i) ++F[A[i] - 'a']; cin >> N; for (int i = 1; i <= N; ++i) { cin >> S; memset(G, 0, sizeof(G)); for (int j = 0; j < int(S.size()); ++j) ++G[S[j] - 'a']; bool ok = true; for (int j = 0; j < 26; ++j) if (G[j] > F[j]) ok = false; if (ok) R.push_back(S); } sort(R.begin(), R.end()); for (int i = 0; i < int(R.size()); ++i) cout << R[i] << '\n'; }