api: updated functionality levels
fixed a issue with large if...else if blocks