Revision for further extension.
Signature is used to keep backward-compatibility, set to {'P','F','V','P'}.