added s3g_om abstraction