protected function collectProxyMethods(\ReflectionClass $ref)
	{
		$methods = [];
		
		foreach($ref->getMethods() as $method)
		{
			if($method->isStatic() || $method->isPrivate())
			{
				continue;
			}
			
			if(substr($method->getName(), 0, 2) == '__')
			{
				continue;
			}
			
			if($method->isFinal())
			{
				throw new ScopedProxyException(sprintf('Unable to build scoped proxy due to final method %s->%s()', $ref->getName(), $method->getName()));
			}
			
			$methods[strtolower($method->getName())] = $method;
		}
	
		return $methods;
	}