Reescrita .htaccess: subdomínio como GET var e caminho como GET var

Resultado desejado:

http://example.com/                 -> index.php
http://www.example.com/             -> index.php
http://hello.example.com/           -> index.php?subdomain=hello
http://whatever.example.com/        -> index.php?subdomain=whatever
http://example.com/world            -> index.php?path=world
http://example.com/world/test       -> index.php?path=world/test
http://hello.example.com/world/test -> index.php?subdomain=hello&path=world/test

Com o .htaccess que tenho agora, posso conseguir um ou outro mapeamento, mas não ambos ao mesmo tempo.

RewriteEngine On

# Parse the subdomain as a variable we can access in PHP, and
# run the main index.php script
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_HOST}        !^www
RewriteCond %{HTTP_HOST}         ^([^\.]+)\.([^\.]+)\.([^\.]+)$
RewriteRule ^.*$ index.php?subdomain=%1

# Map all requests to the 'path' get variable in index.php
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?path=$1 [L] 

Estou tendo dificuldade em combinar os dois ... quaisquer ponteiros, por favor?

EDITAR
O comportamento indesejado que estou experimentando agora é que, se eu tiver um subdomínio e um caminho após .com /, somente o subdomínio será passado, ou seja:

http://hello.example.com/world-> index.php?subdomain=hello

questionAnswers(1)

yourAnswerToTheQuestion